オフラインのarcgis appi for javascriptロード天地図(バージョン:4.6と3.9)
7824 ワード
オフラインのarcgis appi for javascriptを使って地図をロードします.主に二つのバージョンを展示しています.一つは4.6バージョンで、一つは3.6バージョンです.ちゃんと片付けるべきだと思います.メモしてください.話は多くなくて、コードを見ます.
3.6バージョンの中には、小さなコントロール、イーグル・アイが追加されています.
3.6バージョンの中には、小さなコントロール、イーグル・アイが追加されています.
3.X ( )
require(['esri/map',
'esri/layers/WebTiledLayer',
'esri/layers/TileInfo',
'esri/geometry/Point',
"esri/dijit/OverviewMap",
'dojo/domReady!'], function (Map, WebTiledLayer, TileInfo, Point, OverviewMap) {
var map = new Map('mapDiv', {
center: [0, 0],
zoom: 0
})
var tileInfo = new TileInfo({
dpi: 90.71428571427429,
rows: 256,
cols: 256,
compressionQuality: 0,
origin: {
x: -180,
y: 90
},
spatialReference: {
wkid: 4326
},
lods: [
{ level: 2, levelValue: 2, resolution: 0.3515625, scale: 147748796.52937502 },
{ level: 3, levelValue: 3, resolution: 0.17578125, scale: 73874398.264687508 },
{ level: 4, levelValue: 4, resolution: 0.087890625, scale: 36937199.132343754 },
{ level: 5, levelValue: 5, resolution: 0.0439453125, scale: 18468599.566171877 },
{ level: 6, levelValue: 6, resolution: 0.02197265625, scale: 9234299.7830859385 },
{ level: 7, levelValue: 7, resolution: 0.010986328125, scale: 4617149.8915429693 },
{ level: 8, levelValue: 8, resolution: 0.0054931640625, scale: 2308574.9457714846 },
{ level: 9, levelValue: 9, resolution: 0.00274658203125, scale: 1154287.4728857423 },
{ level: 10, levelValue: 10, resolution: 0.001373291015625, scale: 577143.73644287116 },
{ level: 11, levelValue: 11, resolution: 0.0006866455078125, scale: 288571.86822143558 },
{ level: 12, levelValue: 12, resolution: 0.00034332275390625, scale: 144285.93411071779 },
{ level: 13, levelValue: 13, resolution: 0.000171661376953125, scale: 72142.967055358895 },
{ level: 14, levelValue: 14, resolution: 8.58306884765625e-005, scale: 36071.483527679447 },
{ level: 15, levelValue: 15, resolution: 4.291534423828125e-005, scale: 18035.741763839724 },
{ level: 16, levelValue: 16, resolution: 2.1457672119140625e-005, scale: 9017.8708819198619 },
{ level: 17, levelValue: 17, resolution: 1.0728836059570313e-005, scale: 4508.9354409599309 },
{ level: 18, levelValue: 18, resolution: 5.3644180297851563e-006, scale: 2254.4677204799655 },
{ level: 19, levelValue: 19, resolution: 2.68220901489257815e-006, scale: 1127.23386023998275 },
{ level: 20, levelValue: 2, resolution: 1.341104507446289075e-006, scale: 563.616930119991375 }
]
})
var vecLayer = WebTiledLayer('http://{subDomain}.tianditu.com/DataServer?T=vec_c&x={col}&y={row}&l={level}&tk=bf4c445c616ad1dbdc85401ab6bb7bce', {
subDomains: ['t0', 't1', 't2', 't3', 't4', 't5', 't6', 't7'],
tileInfo: tileInfo
})
//
var labelLayer = WebTiledLayer('http://{subDomain}.tianditu.com/DataServer?T=cva_c&x={col}&y={row}&l={level}&tk=bf4c445c616ad1dbdc85401ab6bb7bce', {
subDomains: ['t0', 't1', 't2', 't3', 't4', 't5', 't6', 't7'],
tileInfo: tileInfo
})
//
map.addLayers([vecLayer, labelLayer])
map.centerAndZoom(new Point({
x: 109,
y: 34.5,
spatialReference: {
wkid: 4326
}
}), 3)
var overviewMapDijit = new OverviewMap({
map: map,
visible: true
});
overviewMapDijit.startup();//
})
以下は4.6バージョンです.コードのtkに注意します.期限が切れるかもしれません.自分で申請してもいいです.
// webtilelayer ,domain , tileInfo
require([
"esri/config",
"esri/layers/WebTileLayer",
"esri/Basemap",
"esri/Map",
"esri/views/MapView",
"esri/layers/FeatureLayer",
"esri/widgets/Legend", /* : */
"esri/widgets/BasemapGallery",
"esri/widgets/Expand",
"esri/layers/GraphicsLayer",
"esri/symbols/SimpleLineSymbol",
"esri/geometry/Polyline",
"esri/Graphic",
"dojo/dom",
"dojo/domReady!"
], function (esriConfig, WebTileLayer, Basemap,
Map,MapView, FeatureLayer, Legend,
BasemapGallery, Expand,GraphicsLayer,Graphic,
Polyline,SimpleLineSymbol,dom
) {
/*************************************************/
esriConfig.request.corsEnabledServers
.push("t0.tianditu.com", "t1.tianditu.com", "t2.tianditu.com", "t3.tianditu.com", "t4.tianditu.com", "t5.tianditu.com", "t6.tianditu.com", "t7.tianditu.com");
//
var vecBaseLayerZj = new WebTileLayer({
urlTemplate: "http://{subDomain}.tianditu.com/DataServer?T=cva_w&x={col}&y={row}&l={level}&tk=bf4c445c616ad1dbdc85401ab6bb7bce", //
subDomains: ["t0", "t1", "t2", "t3", "t4", "t5", "t6", "t7"],
copyright: "vec Map tiles by Tian Di Tu ZJ"
});
//
var vecBaseLayer = new WebTileLayer({
urlTemplate: "http://{subDomain}.tianditu.com/DataServer?T=vec_w&x={col}&y={row}&l={level}&tk=bf4c445c616ad1dbdc85401ab6bb7bce", //
subDomains: ["t0", "t1", "t2", "t3", "t4", "t5", "t6", "t7"],
copyright: "vec Map tiles by Tian Di Tu"
});
var vecBasemap = new Basemap({
baseLayers: [vecBaseLayer, vecBaseLayerZj],
title: ' ',
thumbnailUrl: ''
});
// logo
var options = {logo : false};
var map = new Map({
basemap: vecBasemap,
ground: "world-elevation",
option:options
});
//
var view = new MapView({
container: "viewDiv",
map: map,
zoom:13,
center: [108.6911530953,34.2799666458] //34.2799666458,108.6911530953
});
});