1500字范文,内容丰富有趣,写作好帮手!
1500字范文 > supermap for android移动端离线地图显示及添加自定义坐标点和自定义点符号

supermap for android移动端离线地图显示及添加自定义坐标点和自定义点符号

时间:2018-12-27 11:13:41

相关推荐

supermap for android移动端离线地图显示及添加自定义坐标点和自定义点符号

首先显示离线地图就不多说了,supermap官方实例里面有,本文主要讲解怎么显示坐标点以及自定义点符号。

先上一张效果图,其中红色点是supermap自带的点符号,蓝色点是我添加的自己的图片。

一、显示坐标点

我们首先需要新建一个点GeoPoint的实例,然后再把GeoPoint添加到一个地图的跟踪图层TrackingLayer上.

跟踪图层类TrackingLayer。

在 SuperMap 中,每个地图窗口都有一个跟踪图层,确切地说,每个地图显示时都有一个跟踪图层。 跟踪图层是一个空白的透明图层,总是在地图各图层的最上层,主要用于在一个处理或分析过程中,临时存放一些图形对象,以及一些文本等。 只要地图显示,跟踪图层就会存在,不可以删除跟踪图层,也不可以改变其位置。

在 SuperMap iMobile中跟踪图层的作用主要有以下方面:

当不想往记录集中添加几何对象,而又需要这个几何对象的时候,就可以把这个几何对象临时添加到跟踪图层上,用完该几何对象之后清除跟踪图层即可。例如,当需要测量距离时,需要在地图上拉一条线,但是这一条线在地图上并不存在,此时就可以使用跟踪图层来实现。

//实例化一个跟踪图层 TrackingLayer trackingLayer= m_mapcontrol.getMap().getTrackingLayer();// 实例化一个风格对象,并进行相应设置GeoStyle geoStyle_P = new GeoStyle();geoStyle_P.setMarkerAngle(14.0);/*设置点状符号的大小,单位为毫米,精确到0.1毫米*/geoStyle_P.setMarkerSize(new Size2D(3, 3));//设置点的符号,每个点符号对应一个值geoStyle_P.setMarkerSymbolID(2);//设置点颜色,只有自带的几个点符号可以改颜色,自定义的图像应该不能改geoStyle_P.setPointColor(new com.supermap.data.Color(255,0,0));//x,y是你当前地图的坐标系对应的坐标x,y值x=114.1234;y=23.43;//实例化一个点几何对象GeoPoint geoPoint = new GeoPoint(x, y);geoPoint.setStyle(geoStyle_P);//把点添加到跟踪图层layer.add(geoPoint, "point");

这样就可以显示坐标点了,但是注意你的坐标点最好跟你地图的坐标系对应,否则可能会不显示点符号。

二、自定义点符号

自定义点符号首先你要准备一个图片,最好是png格式的。下图是我准备的图片

每个离线地图都是放在工作空间中的,而每个地图符号都放在工作空间中的工作空间管理器——资源下面,用supermap桌面端打开你的离线地图所在的工作空间,也就是.smuw文件。找到工作空间管理器——资源,找到点符号库并双击打开,你会看到很多符号,把你的鼠标悬停在符号的上面会显示符号编号,符号编号对应着MarkerSymbolId,修改符号的形状只要修改符号对应的编号就可以了。

如果想添加自己的符号,就在点符号库的右上角文件——导入——栅格符号,就可以看到你添加的符号了,然后将MarkerSymbolId修改为你自定义符号对应的编号就可以了。

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。