ArcGIS for JS加载天地图空间参考问题求教

加载天地图作为基础底图,同时加载自己发布的某行政区动态服务图层(发布前已将该行政区坐标系转换为WGS84,4326)。地图中都可以正常显示,但是在执行 将某个地级市居中放大定位 功能时,报错。执行代码如下:
var sGeometry = graphic.geometry;
var sExtent = sGeometry.getExtent();
sExtent = sExtent.expand(1.5);
map.setExtent(sExtent); // 此处报错
错误提示:
Map: Geometry (wkid: GEOGCS["Lat Long WGS84",DATUM["D_WGS84",SPHEROID["World_Geodetic_System_of_1984",6378137.0,298.257223563]],PRIMEM["Greenwich",0.0],UNIT["Degree",0.0174532925199433]]) cannot be converted to spatial reference of the map (wkid: 4326)
请问:这种问题该如何解决?非常感谢!
已邀请:

coolbas - 地图大数据云平台 www.favxu.com 三维地图云平台 http://www.hapxu.com

赞同来自:

设置比例尺级别与地图中心点

GavinLee - IT初学者

赞同来自:

感谢回复。通过设置比例尺级别和地图中心点,依然还是出现类似错误。代码如下:
map.setLevel(newLevel); 
var oriPoint = sExtent.getCenter(); 
map.centerAt(oriPoint);
最终解决方法是:
var newPoint = new Point(oriPoint.x,oriPoint.y,new SpatialReference({wkid:4326}));
map.centerAt(oriPoint);
或者按照原先的思路也可实现:
var sExtent = sGeometry.getExtent(); 
sExtent = sExtent.expand(1.5); 
// 添加如下代码
var newExtent = new Extent(sExtent.xmin,sExtent.ymin,sExtent.xmax,sExtent.ymax,new SpatialReference({wkid:4326})); 
map.setExtent(newExtent);
 

要回复问题请先登录注册