这两天在往地图上标点,好累,眼都花了有木有。我们领导说百度地图上的点不准,得以天地图为标准。呵呵,(此处省略1W字……)天地图官方的demo要么只有搜索控件,要么只有获取经纬度坐标的控件,就没有两者结合起来的控件,我做了一个很简单的两者结合的demo,省了不少事的说~点我下载。没费什么力气,就不用积分了。
题外话就这么多,今天开始回忆一下当初痛苦地搞散点聚合的过程。ArcGIS官方demo的地址在这里点我打开链接
做出来的效果是要这样式的:
我们今天的目标就是把这个页面样式给挪到天地图上,就可以了。
加载ArcGIS的散点
直接把ArcGIS的源码复制到我们的工程路径中,本次我建了一个项目,而不是单个的html了。本宝宝是java工程师,所以本次demo是一个java web 项目~
直接复制过来,我们运行一下,呵呵,好大一片白屏。打开Console,会报一个找不到文件的异常呃
这个找不到,extras是扩展类,请看这一段代码,
var dojoConfig = {
paths: {
extras: location.pathname.replace(/\/[^/]+$/, "") + "/extras"
}
};
这一段代码的大体含义就是把/extras前面的域名替换成本地,不在远程服务器上下载js。
把再运行一下demo把ClusterLayer从服务器上扒下来。在项目路径下,建一个extras文件夹,再建一个名为ClusterLayer.js的文件。
这个问题解决了,地图是显示出来了,但是没有散点。
又报一个异常,“
http://127.0.0.1:8080/ClusterGIS/data/1000-photos.json
404 (Not Found)
”,这个是因为它的json是从后台中取出来的,我们也从后台把数据传到前台来。这个josn我也是从它官网那里扒出来的,这个大量无意义的代码,我就不贴了,与我们的最终目标也没有什么关系。懒得扒的同学可以不理这一步,直接进行下一步。做为完美主义的宝宝,本宝宝当然要做完~
只有这么一个可怜的,孤零零的点,只写了一个啦,能显示出来就好。第一步就这样实现了,简直是太曲折了。
加载天地图
略,见上次的日志吧,详细就不说了……地址在此
坑死宝宝了。之前直接从ArcGIS复制过来的代码,所以用的是3.15版本,一直显示不出来,报的
WebTiledLayer的URL有关的异常。排查了好久,才发现有ArcGIS的版本问题,哎,果然不能随便换版本啊,问题多多。我改成了3.14版好了。