需求:
如何实现在小比例下加载栅格切片地图服务,在大比例下加载动态地图服务或者矢量切片地图服务。
思路:
通过对地图服务设置比例尺,从而控制地图服务显示。
实现版本:
ArcGIS Runtime SDK for Android 100.10
最终效果:
具体实现:
①栅格切片地图服务,0-12级
②动态地图服务
代码如下:
private MapView mMapView;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
mMapView = findViewById(R.id.mapView);
ArcGISMap map = new ArcGISMap(Basemap.createLightGrayCanvas());
ArcGISTiledLayer tiledLayer = new ArcGISTiledLayer(getString(R.string.wmts));
tiledLayer.setMinScale(5.91657527591555E8);
tiledLayer.setMaxScale(144447.638572);
ArcGISMapImageLayer dynamicLayer =new ArcGISMapImageLayer(getString(R.string.wms));
dynamicLayer.setMinScale(144447.638572);
dynamicLayer.setMaxScale(70.5310735);
map.getOperationalLayers().add(tiledLayer);
map.getOperationalLayers().add(dynamicLayer);
mMapView.setMap(map);
}
其中栅格切片的最大比例与动态地图服务的最小比例参数值设置为一致从而实现顺畅过渡。