मैं OpenLayers 3 का उपयोग कुछ मानचित्रों के साथ बातचीत करने के लिए कर रहा हूं। मैं पहले अपना नक्शा घोषित करता हूं:
map = new ol.Map({
target: 'map',
layers: [
new ol.layer.Tile({
source: new ol.source.OSM()
})
],
view: new ol.View({
center: [0, 0],
zoom: 2
})
});
मेरे पास एक ऐसी घटना है जो मेरे मानचित्र के दृश्य केंद्र को बदलने के लिए एक क्रिया को ट्रिगर करती है। इस तरह, (मेरे निर्देशांक EPSG:4326
प्रारूप में हैं):
function CenterMap(lat, long) {
console.log("Lat: " + lat + " Long: " + long);
map.setView(new ol.View({
center: ol.proj.transform([lat, long], 'EPSG:3857', 'EPSG:4326'),
zoom: 5
}));
}
जब फ़ंक्शन चलता है तो मुझे यह एक्सप्लोरर कंसोल पर मिलता है:
Lat: 9.0412851667 Long: -79.5658145000
लेकिन नक्शे किसके पास जाते हैं [0,0]
, क्या किसी को पता है कि ऐसा क्यों होता है?
Uncaught TypeError: Failed to execute 'putImageData' on 'CanvasRenderingContext2D': float parameter 3 is non-finite. ol.js:457 2Uncaught RangeError: Invalid array length
। और मुझे लगता है कि मेरे निर्देशांक बहुत लंबे हैं। अगर मैं इसे बदलने के लिए[131.044922, -25.363882]
यह ठीक काम करता है। तो क्या मेरे निर्देशांक बहुत लंबे हैं ??