iserver使用百度在线地图,不能设置中心点

0 投票
508 浏览
使用iserver发布地图时,发布的是百度在线地图。当进行javascript开发时,地图能打开,也能对地图进行初始的地图级别设置,就是不能设置中心点,不管什么级别打开地图,中心点都是原点的位置。刚接触超图不久,希望有懂的朋友能指点一二。
最新提问 5月 10, 2017 分类:  508次浏览 | 用户: 黄祺 (2 分)

1个回答

0 投票
 
已采纳

 您好,关于百度地图图层您可以参考以下demo:

http://support.supermap.com.cn:8090/iserver/iClient/forJavaScript/examples/examples.html#baidu

如果还有什么地方不清楚的,请您在下方回复并附带您的代码。

最新回答 5月 10, 2017 用户: 程yan 名扬四海 (1,642 分)
采纳于 5月 11, 2017 用户:黄祺
var map,layer;

var url = "http://localhost:8090/iserver/services/map-baidu/rest/maps/normal";

map = new SuperMap.Map ("allmap");
                
layer = new SuperMap.Layer.TiledDynamicRESTLayer("World", url,  null, {maxResolution:"auto"});

layer.events.on({"layerInitialized": addLayer});

function addLayer() {
                    //将Layer图层加载到Map对象上
                    map.addLayer(layer);
                    //出图,map.setCenter函数显示地图
                    map.setCenter(new SuperMap.LonLat(105, 39), 4);
                
            }
map.addControl(new SuperMap.Control.ScaleLine());

map.addControl(new SuperMap.Control.OverviewMap());

以上代码中,根据发布百度在线地图返回的链接生成图层,但中心点的设置不起作用。会不会是因为超图和百度的坐标不一样,导致所设置的经纬度没有用啊?

因为百度地图的坐标系统是平面坐标系并非投影坐标系,所以才会导致经纬度不起作用。

那知道了,谢谢您。那再请问一下,如果是平面坐标应该怎样设置中心点呢,是需要转换?还没就是没有办法呢?
...