ArcGIS JSAPI实现坐标查询
本次试验应vent要求,查询地图坐标并以webMercator坐标表示。
实现地图坐标查询包括:加载地图,设置infoWindow样式及内容,显示坐标(包含在第二部分)。
1.加载地图服务
采用vent提供的动态地图服务
1 var dynamicMapServiceLayer = 2 new esri.layers.ArcGISDynamicMapServiceLayer("http://www.river.org.cn/ArcGIS/rest/services/river/MapServer"); 3 map.addLayer(dynamicMapServiceLayer);
2.infoWindow显示内容content包含webMercator坐标及屏幕坐标,屏幕坐标主要用于infoWindow定位,代码如下:
1 map.infoWindow.setTitle("Coordinates"); 2 var pt = evt.mapPoint; 3 map.infoWindow.setContent("<p> X: " + pt.x.toFixed(4) + "<br/> Y: " + pt.y.toFixed(4) + 4 "<br />screen x/y : " + evt.screenPoint.x + ", " + evt.screenPoint.y); 5 map.infoWindow.show(evt.mapPoint,map.getInfoWindowAnchor(evt.screenPoint));
3.通过"onClick"触发showCoordinates()并获得点位坐标
dojo.connect(map, "onClick", showCoordinates);
4.ArcGIS JSAPI提供方法实现各坐标系之间的转换
——toMapGeometry
——toMapPoint
——toScreenGeometry
——toScreenPoint
——geographicToWebMercator
——webMercatorToGeographic
坐标系统代码详见:
5.坐标显示
效果如图:
这是几个月前第一次按需求实现一个完整任务,请大家多多指教。
转载于:https://www.cnblogs.com/vivi5/archive/2012/08/15/2640761.html