Supermap GIS地图知识点

Supermap GIS地图知识点


开发工具与关键技术:Supermap GIS地图

 

作者:盘洪源

 



撰写时间:2020年4月27日星期一



 

这是一个我刚开始搞这个GIS地图所遇到的错误。

就是小白一开始容易犯的错误,因为学这个GIS地图也不是学了很久,所以对这个Supermap GIS地图这一块不是很了解。

 

刚开始时,我简单的弄了一个地图然后就发布出去了,然后就用代码想把这个地图展示在自己弄的页面上,当时我是看了官网给的列子然后就想去实现一下,好像当时虽然地图是可以出现在页面上,但是就是有一个bug,就是地图一开始并不会自己出现地图,但我需要的效果是页面加载后地图就出现在地图上。可是我那效果是需要点击那个放大地图的功能地图才能显示出来。

先用代码加载个地图出来,下面是官网加载地图的一个简单的示例的js部分。

 

var map, layer,

        url
="http://localhost:8090/iserver/services/map-china400/rest/maps/China";


 

        function
init(){

            //初始化地图

           //
ScaleLine: 比例尺控件,显示地图的比例关系,默认位于地图左下角

            map =
new SuperMap.Map("map",{controls:[

                new
SuperMap.Control.Navigation(),//Navigation:地图浏览控件,监听鼠标点击、平移、滚轮等事件来实现对地图的浏览操作。

                new
SuperMap.Control.Zoom()//添加控件 地图平移缩放控件,提供对地图的平移和缩放的控制操作,默认位于地图左上角   

            ]

            });

 

 

            //var
map = new SuperMap.Map('map');

           
map.addControl(new SuperMap.Control.MousePosition());//第二种添加控件的方式

           

 //初始化图层

            layer =

                new
SuperMap.Layer.TiledDynamicRESTLayer

               
("China", url, null, { maxResolution: "auto" });

 

        //监听图层信息加载完成事件

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

           }

 

        //异步加载图层

        function
addLayer(){

           
map.addLayer(layer);

 

        //显示地图范围

           
map.setCenter(new SuperMap.LonLat(0, 0), 1);

        }

 

前面这些当时想着都能看的明白也没啥问题但就是没有注意到后面的这个显示地图范围,后来看了官网的文档解释,这里应该放的是地图的一个中心点,而我直接像他这样(0,0),我的地图中心点不是(0,0)导致地图一开始并不显示在一个中心的地方,所以显示不出来。这个中心点在发布地图的那个地方,如果发布成功后,点开那个地图的链接就可以看的到地图的一个中心点。

    

 

 


你可能感兴趣的:(Supermap GIS地图知识点)