Name Last Update
.idea Loading commit data...
app Loading commit data...
gradle/wrapper Loading commit data...
.gitignore Loading commit data...
build.gradle Loading commit data...
gradle.properties Loading commit data...
gradlew Loading commit data...
gradlew.bat Loading commit data...
readme.md Loading commit data...
settings.gradle Loading commit data...

LandSurvey 项目

基于ArcGIS Android 10.2.9开发

  • 使用天地图数据(CGCS2000)
  • 使用天地图本地缓存数据(Mbtiles)
  • 实现了缩放功能
  • 实现了GPS定位

图层类型说明

天地图图层(CGCS2000)

  • TianDiTuLayerTypes
    • VEC_C,矢量图层
    • IMG_C,影像图层
    • TER_C,地形层
    • CVA_C,矢量注记层
    • CIA_C,影像注记层
    • CTA_C,地形注记层

腾讯图层

  • TencentMapLayerTypes
    • TENCENT_MAP_VECTOR,腾讯矢量层
    • TENCENT_MAP_VECTOR_NIGHT,腾讯矢量(夜晚)层
    • TENCENT_MAP_IMAGE,腾讯影像层(无路网)
    • TENCENT_MAP_ROAD,腾讯道路层
    • TENCENT_MAP_TERRAIN,腾讯地形层

Google地图层

  • GoogleMapLayerTypes
    • VECTOR_GOOGLE_MAP,谷歌矢量层
    • IMAGE_GOOGLE_MAP,谷歌影像层
    • TERRAIN_GOOGLE_MAP,谷歌地形层
    • IMAGE_ANNO_GOOGLE_MAP,谷歌影像层(含注记和路网)
    • OSM_Map,OSM数据层

GeoQ地图层

  • GeoQMapLayerTypes
    • ChinaOnlineCommunity
    • ChinaOnlineCommunity_Mobile
    • ChinaOnlineCommunityENG
    • ChinaOnlineStreetPurplishBlue
    • ChinaOnlineStreetWarm

高德数据层

  • GaodeMapLayerTypes
    • AMAP_VECTOR,高德矢量地图层
    • AMAP_IMAGE,高德影像图层(不含路网,不含注记)
    • AMAP_ROAD,高德路网图层(含路网,含注记)
    • AMAP_TRAFFIC,高德实时交通图层

基本用法

天地图2000

t_vec = new TianDiTuTiledMapServiceLayer(TianDiTuLayerTypes.VEC_C);
mapView.addLayer(t_vec);
Point initPoint = new Point(121.56, 29.862149);
mapView.zoomToResolution(initPoint, t_vec.getRes()[16]);

百度地图

BaiduMapsTiledServiceLayer baiduMapsTiledServiceLayer = new BaiduMapsTiledServiceLayer(BaiduMapLayerTypes.BAIDU_VECTOR);
mapView.addLayer(baiduMapsTiledServiceLayer);

final float offsetX = 2518238;
final float offsetY = 910065;

Point curPt = JZLocationConverter.wgs84ToBd09(new Point(121.540614, 29.872488));
Point pt = GISHelper.lonLat2Mercator(curPt);
mapView.zoomToResolution(new Point(pt.getX() + offsetX, pt.getY() + offsetY), GoogleMapsTiledServiceLayer.getRes()[10]);

其它(以Tencent图层为例)

TencentMapsTiledServiceLayer tencentMapsTiledServiceLayer = new TencentMapsTiledServiceLayer(TencentMapLayerTypes.TENCENT_MAP_VECTOR);
mapView.addLayer(tencentMapsTiledServiceLayer);
// 经纬度坐标要转换为GCJ02后,再换成web墨卡托
Point initPoint = JZLocationConverter.wgs84ToGcj02(new Point(121.56, 29.862149));
Point pt = GISHelper.lonLat2Mercator(initPoint);
mapView.zoomToResolution(pt, tencentMapsTiledServiceLayer.getRes()[16]);