1500字范文,内容丰富有趣,写作好帮手!
1500字范文 > arcgis android 天地图 arcgis runtime sdk for android 系列 - 在100.X系列中实现加载福建天地图...

arcgis android 天地图 arcgis runtime sdk for android 系列 - 在100.X系列中实现加载福建天地图...

时间:2018-09-30 11:40:07

相关推荐

arcgis android 天地图 arcgis runtime sdk for android 系列 - 在100.X系列中实现加载福建天地图...

基本思路:

使用WebTiledLayer来加载福建天地图,要根据加载的地图获取正确的范围和比例尺。

关键技术点:

主体代码是参考张工加载国家天地图,需要将其中的范围改成福建正确范围。

具体实现步骤:

以这个福建天地图的地址作为下面讲解的示例:

/vec_fj/wmts/1.0.0/WMTSCapabilities.xml

根据上述连接中的范围,我将范围的代码改为以下:Envelope fullExtent = new Envelope(113.54638776785004,22.967969390150024, 121.4982643631501,29.811366914850048, SpatialReference.create(4490));

详细代码:

Map hm = new HashMap();

hm.put("referer","https://androidapp");

RequestConfiguration requestConfiguration = RequestConfiguration.getGlobalRequestConfiguration();

requestConfiguration.setHeaders(hm);

RequestConfiguration.setGlobalRequestConfiguration(requestConfiguration);ArrayList levels = new ArrayList();

levels.add(new LevelOfDetail(7, 0.010986328125, 4617149.8915429693));

levels.add(new LevelOfDetail(8, 0.0054931640625, 2308574.9457714846));

levels.add(new LevelOfDetail(8, 0.00274658203125, 1154287.4728857423));

levels.add(new LevelOfDetail(10, 0.001373291015625, 577143.73644287116));

levels.add(new LevelOfDetail(11, 0.0006866455078125, 288571.86822143558));

levels.add(new LevelOfDetail(12, 0.00034332275390625, 144285.93411071779));

levels.add(new LevelOfDetail(13, 0.000171661376953125, 72142.967055358895));

levels.add(new LevelOfDetail(14, 8.58306884765625e-005, 36071.483527679447));

levels.add(new LevelOfDetail(15, 4.291534423828125e-005, 18035.741763839724));

levels.add(new LevelOfDetail(16, 2.1457672119140625e-005, 9017.8708819198619));

levels.add(new LevelOfDetail(17, 1.0728836059570313e-005, 4508.9354409599309));

levels.add(new LevelOfDetail(18, 5.3644180297851563e-006, 2254.4677204799655));

levels.add(new LevelOfDetail(19, 2.6822090148925781e-006, 1127.2338602399827));

levels.add(new LevelOfDetail(20, 1.3411045074462891e-006, 563.61693011999137));

int iDPI = 96;

int iTileWidth = 256;

int iTileHeight = 256;

tileInfo = new TileInfo(iDPI, TileInfo.ImageFormat.PNG, levels, new Point(-180, 90, SpatialReference.create(4490)), SpatialReference.create(4490), iTileHeight, iTileWidth);

Envelope fullExtent = new Envelope(113.54638776785004,22.967969390150024, 121.4982643631501,29.811366914850048, SpatialReference.create(4490));String templateUri = "/vec_f ... ix%3D{level}&TileRow={row}&TileCol={col}&style=vec_fj&format=image/tile";

WebTiledLayer webTiledLayer = new WebTiledLayer(templateUri,tileInfo,fullExtent);

map.getBasemap().getBaseLayers().add(webTiledLayer);

mMapView.setMap(map);

参考连接:

主要参考张工这篇如何加载国家天地图

/zssai201 ... 45628

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