2017-04-21 44 views
1

是否可以指定哪些ArcGIS基礎地圖用於ESRI基礎地圖庫(esri/dijit/BasemapGallery)?是否可以指定哪些ArcGIS基礎地圖用於ESRI底圖庫(ArcGIS API)?

設置showArcGISBasemaps爲true將所有人都帶回來,但我只想要一些選擇,例如, 「road」,「national-geographic」and「satellite」。

var basemapGallery = new BasemapGallery({ 
    showArcGISBasemaps: true, 
    map: map, 
}, "myPlaceHolder"); 

通過文檔查看(https://developers.arcgis.com/javascript/3/jsapi/basemapgallery-amd.html)我似乎無法找到任何東西。

或者,是否可以在將showArcGISBasemaps設置爲false後單獨創建這些圖層?

回答

0

原來我必須找到他們的ArcGIS服務後手動定位層:http://server.arcgisonline.com/ArcGIS/rest/service

var greyLayer = new esri.dijit.BasemapLayer({ 
    url: "http://server.arcgisonline.com/ArcGIS/rest/services/Canvas/World_Light_Gray_Base/MapServer" 
}); 

var greyBasemap = new esri.dijit.Basemap({ 
    url: [greyLayer], 
    id: "mybaselayerId", 
    title: "Grey" 
}); 

basemaps.push(greyBasemap); 

var basemapGallery = new BasemapGallery({ 
    showArcGISBasemaps: false, 
    basemaps: basemaps, 
    map: map, 
}, "myPlaceHolder"); 

目前似乎並沒有被過濾底圖從showArcGISBasemaps

+1

返回一個選項正確,showArcGISBasemaps不能被過濾。但是,您可以將ArcGIS組織設置爲具有不同的底圖集,然後將其用於BasemapGallery小部件中(使用portalUrl) - https://developers.arcgis.com/javascript/3/jsapi/basemapgallery-amd的.html#portalurl。 –

0

當您創建BasemapGallery您可以指定在params.basemaps對象的底圖:new BasemapGallery()

有在鏈路中的代碼示例了。祝你好運!

相關問題