一、MapView

MapView是Arcgis中的最基本的类,与高德地图SDK的MapView的重要性一样。MapView的创建有两种方法,一种是在Layout文件中直接写控件。一种是实例化,MapView mapView = new MapView(Context context);

    1. <com.esri.android.map.MapView
    2. android:id="@+id/map"
    3. android:layout_width="fill_parent"
    4. android:layout_height="fill_parent"
    5. />

1.addLayer(Layer layer),添加图层。可以添加网络图层与本地图层,tpk文件,shp文件,json数据等。

图层的添加是有顺序的,一层一层叠加,后面的图层会覆盖前面的图层。removeLayer(int index),移除图层。getLayer获取图层,通过顺序id,url地址等获取。

2.setExtent,设置MapView的所显示的范围。

3.zoomin地图缩小,zoomout地图放大。

4.setOnSingleTapListener(OnSingleTapListener onSingleTapListener),MapView的单击事件,返回的是float screenx, float screeny,屏幕的x与y值,通过toMapPoint(float screenx, float screeny),将屏幕坐标转化为地图坐标。

5.toScreenPoint(Point src),将地图坐标转化屏幕坐标。

6.setOnLongPressListener(OnLongPressListener onLongPressListener),地图的长按事件,也是返回屏幕的x与y值。

7.getSpatialReference(),获取地图的坐标系,比如84坐标或者是墨卡托等。

8.getLocationDisplayManager(),返回LocationDisplayManager,用于地图定位的显示。

9.getCallout(),返回Callout对象,用于显示气泡弹出

二、图层

Arcgis中的图层有许多,下面是图层的关系表。主要的图层有DynamicLayerFeatureLayerGraphicsLayerGroupLayerKmlLayerRasterLayerTiledLayer

,下面的主要来介绍一下Arcgis的主要图层。

1.GraphicLayer,图形图层,只有一个子类ArcGISFeatureLayer。用户通过这个图层可以在MapView中自形绘制要素,通过样式与色彩绘制点、线、面。

2.TiledLayer,切片图层,子类有ArcGISLocalTiledLayerTiledServiceLayerArcGISLocalTiledLayer可以加载本地的tpk文件与切片图层,通过其子类ArcGISTiledMapServiceLayer加载网络的切片图层。

下面的主要来介绍一下Arcgis的主要图层。

1.GraphicLayer,图形图层,只有一个子类ArcGISFeatureLayer。用户通过这个图层可以在MapView中自形绘制要素,通过样式与色彩绘制点、线、面。

2.TiledLayer,切片图层,子类有ArcGISLocalTiledLayerTiledServiceLayerArcGISLocalTiledLayer可以加载本地的tpk文件与切片图层,通过其子类ArcGISTiledMapServiceLayer加载网络的切片图层。

  1. ArcGISLocalTiledLayer local = new ArcGISLocalTiledLayer("/sdcard/<CacheName>/Layers");
  2. ArcGISLocalTiledLayer local = new ArcGISLocalTiledLayer("/sdcard/<CacheName>.tpk");

3.FeatureLayer,要素图层,没有子类,可加载本地shp文件。通过要素的特性,快速查询具体的要素信息。加载快速。

4.DynamicLayer,动态图层。主要有子类ArcGISDynamicMapServiceLayerArcGISImageServiceLayer,

WMSLayer。前面两个用来加载网络动态图层与网络图像图层。

Android GIS开发系列-- 入门季(2) MapView与图层介绍的更多相关文章

  1. Android GIS开发系列-- 入门季(14)FeatureLayer之范围查询

    Android GIS开发系列-- 入门季(5),这篇文章中,我们知道如何去查找要素.现在有一个需求,查找某点5000米范围的要素,那如何来做呢?首先我们需要在地图上画个5000米半径的圆,然后根据Q ...

  2. Android GIS开发系列-- 入门季(10) MapView快速定位到Geometry

    我们知道某个Geometry的坐标,但不知道具体的位置,该如何使地图快速定位呢?这时需要用到MapView.setExtent方法,来看下这个方法的介绍:Zooms the map to the gi ...

  3. Android GIS开发系列-- 入门季(1) 起点

    前言 这个系列,待最终完成更新,大家体谅点,第一版本全部是参考的网络教程,最近会逐步的细化更新为可以直接使用的情况. 本系列的开发基于AS (  Android Studio ), 和ArcGIS 的 ...

  4. Android GIS开发系列-- 入门季(13)Gdal简单写个shp文件

    Gdal是用来读写栅格与矢量数据的,在Gdal官网,可以下载相关的资源进行平台的编译.其实Arcgis底层也是用Gdal来读取shp文件的,那在Android中可以直接读写shp文件吗,是可以的.这里 ...

  5. Android GIS开发系列-- 入门季(12) 显示载天地图

    在项目中可以经常需要动态加载一些图层,像投影地图服务.投影地图服务器.其实网上有大量这样的服务,比如天地图官网, . 随便点开一个服务,里面有相关的信息.那如何加载这样图层服务呢. 一.首先感谢这篇博 ...

  6. Android GIS开发系列-- 入门季(9) 定位当前的位置

    利用MapView定位当前的位置 这里要用到Arcgis中的LocationDisplayManager这个类,由于比较简单.直接上代码: LocationDisplayManager locatio ...

  7. Android GIS开发系列-- 入门季(3) GraphicsLayer添加点、线、面

    GraphicsLayer是图形图层,可以自定义图形添加到地图上.调用GraphicsLayer的addGraphic方法就能添加图形,此方法要一个Graphic对象,此对象的构造方法是Graphic ...

  8. Android GIS开发系列-- 入门季(5) FeatureLayer加载本地shp文件与要素查询

    FeatureLayer是要素图层,也是Arcgis的主要图层.用这个图层可以加载本地的shp文件.下面我们看怎样加载shp文件到MapView中.查看ArcGis API可知FeatureLayer ...

  9. Android GIS开发系列-- 入门季(15) 网络图层加载

    一.首先我们来看一个网络图层: http://services.arcgisonline.com/arcgis/rest/services/World_Street_Map/MapServer,这是全 ...

随机推荐

  1. CentOS环境下下调整home和根分区大小

    项目建设方给提供了3台CentOS的服务器,连接进去之后发现磁盘空间很大,但是都放在了home目录下,所以需要调整一下. 1.查看磁盘使用情况 [root@CentOS ~]# df -h Files ...

  2. USB接口大百科:看完你就分得清充电线了

    http://tech.ifeng.com/a/20151116/41507221_0.shtml

  3. 关于defineProperty

    var c=0; Object.defineProperty(this,'b',{ get :function(){ return ++c; } }) console.log(b===1&&a ...

  4. opencv3.31+vs2015终于配置成功了

    风萧萧兮易水寒, 熬了几个夜晚,终于把opencv配好了, 来图一 唉试了很多方法,终于成功. 教程和资料会发在个人网站里. 测试 代码 #include <iostream> #incl ...

  5. Python学习日记之正则表达式re模块

    用在线网页测试正则表达式时,JavaScript不支持 零宽度正回顾后发断言 (?<=exp)测试时一直匹配失败 但re模块是支持 (?<=exp) 的 终于脱坑

  6. ReLU激活函数:简单之美

    出自 http://blog.csdn.net/cherrylvlei/article/details/53149381 导语 在深度神经网络中,通常使用一种叫修正线性单元(Rectified lin ...

  7. 介绍Git的17条基本用法

    本文将介绍Git的17条基本用法.本文选自<Python全栈开发实践入门>. 1.初始化Git仓库 Git仓库分为两种类型:一种是存放在服务器上面的裸仓库,里面没有保存文件,只是存放.gi ...

  8. js中原型和原型链

    1.原型: 在JavaScript 中,对象被表现为prototype . 原型其实一直存在于我们接触过的任何一个对象. 2. Tip:在函数对象中也存在__proto__属性,但是查看函数对象的原型 ...

  9. java 基础学习笔记 - 安装

    1. 从www.sun.com中 下载jdk安装包 2. 执行安装包,安装jdk ,jre(Java运行环境) 3. 配置path路径 增加jdk下的bin目录. 配置完后需要重启cmd窗口,因为cm ...

  10. HDU_1180_诡异的楼梯_BFS

    链接:http://acm.hdu.edu.cn/showproblem.php?pid=1180 诡异的楼梯 Time Limit: 2000/1000 MS (Java/Others)    Me ...