本文主要简单讲解如何通过SimpleMarkerSymbol创建简单的点符号。
实现步骤:
1.创建Android项目
2.添加Runtime SDK依赖
3.添加权限及OpenGL ES支持
前三步本文省略,初学者可参照ArcGIS Runtime SDK for Android 学习笔记(1):第一个地图应用程序(二维)
4.设置界面布局
在layout中的布局XML中添加:
<!-- MapView控件 -->
<com.esri.arcgisruntime.mapping.view.MapView
android:id="@+id/mapView"
android:layout_width="match_parent"
android:layout_height="match_parent">
</com.esri.arcgisruntime.mapping.view.MapView>
5.编写代码
在Activity的onCreate方法中:
// 通过layout获取MapView控件
mMapView = (MapView) findViewById(R.id.mapView);
//以影像为底图创建地图对象
ArcGISMap map = new ArcGISMap(Basemap.createImagery());
//通过一个点和比例创建视点
Point point = new Point(-226773, 6550477, SpatialReferences.getWebMercator());
Viewpoint vp = new Viewpoint(point, 7500);
// 通过视点初始化地图
map.setInitialViewpoint(vp);
// 设置地图在地图控件中被显示
mMapView.setMap(map);
// 创建一个新的GraphicsOverlay并把它添加到Mapview中
GraphicsOverlay graphicsOverlay = new GraphicsOverlay();
mMapView.getGraphicsOverlays().add(graphicsOverlay);
//创建simple marker symbol用于符号创建
SimpleMarkerSymbol symbol = new SimpleMarkerSymbol(SimpleMarkerSymbol.Style.CIRCLE, Color.RED, 12); //size 12, style of circle
//通过一个新的几何点对象添加一个新的Graphic(图形)
Point graphicPoint = new Point(-226773, 6550477, SpatialReferences.getWebMercator());
Graphic graphic = new Graphic(graphicPoint, symbol);
graphicsOverlay.getGraphics().add(graphic);
6.运行APP:实现了点要素的简单符号化
感谢luq老师的指导