ฉันใช้ 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
}));
}
เมื่อฟังก์ชั่นทำงานฉันจะได้รับสิ่งนี้ที่คอนโซล explorer:
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]
มันใช้ได้ พิกัดของฉันยาวเกินไปหรือไม่?