OpenLayers调整坐标为0,0

OpenLayers Adjusting Coordinates To 0,0

本文关键字:坐标 调整 OpenLayers      更新时间:2023-09-26

坦率地说,我是OpenLayers的新手。我有一个WGS84坐标的数据库,我已经把它加载到数据库中了。我已经通过纬度和经度的对比证实了这一点。

map = new OpenLayers.Map("map");
var mapnik = new OpenLayers.Layer.OSM();
map.addLayer(mapnik);
map.setCenter(new OpenLayers.LonLat(<?php echo $lat;?>, <?php echo $lon;?>).transform(
   new OpenLayers.Projection("EPSG:4326"), // transform from WGS 1984
   new OpenLayers.Projection("EPSG:900913") // to Spherical Mercator Projection
), 4 /*Zoom level*/);

当输入到这里时,它将映射移动到0,0。有人能帮我或给我指个方向吗?

@Niels的评价是正确的。
OpenLayers LonLat对象期望(longitude, latitude) -而不是(latitude, longitude)。

只是交换你的长度和长度的顺序:

map.setCenter(new OpenLayers.LonLat(<?php echo $lon;?>, <?php echo $lat;?>).transform(
    new OpenLayers.Projection("EPSG:4326"), // transform from WGS 1984
    new OpenLayers.Projection("EPSG:900913") // to Spherical Mercator Projection
), 4);