我是arcgis javascript的新手。我在arcgis javascript中创建了街道地图,并在该地图中添加了图形。我想禁用该地图而不是该地图上的图形。我该怎么做?
示例 -
我添加了一个具有街道类型的底图,之后我添加了图形,即行。现在,我想禁用街道底图。我想只显示行。
是否可以在arcgis javascript中使用?
答案 0 :(得分:0)
您需要做的是使用(它将是一个空白/空服务)创建您自己的自定义底图 然后,您需要将新的底图添加到图库小部件
https://developers.arcgis.com/javascript/3/jsapi/basemaplayer-amd.html
https://developers.arcgis.com/javascript/3/jsapi/basemapgallery-amd.html
如果您不想使用底图库,您还可以将新创建的basemapLayer与setBasemap一起使用。即:map.setBasemap(emptybasemap);
答案 1 :(得分:0)
或者您可以添加您的图层,而不是底图,即:
require([
"esri/map", "esri/layers/FeatureLayer",
"esri/geometry/Extent", "esri/SpatialReference",
"dojo/domReady!"], function(
Map, FeatureLayer,
Extent, SpatialReference
) {
var map = new Map("mapDiv", {extent: new Extent(-178.217598382, 18.921786345999976, -66.96927110500002, 71.40623554799998,new SpatialReference({ wkid:4326 }))});
var statesLayer = new FeatureLayer('http://sampleserver6.arcgisonline.com/arcgis/rest/services/USA/MapServer/2',
{outFields: ["*"]}
);
map.addLayer(statesLayer);
});
答案 2 :(得分:0)
嗯,显然你想在将地图符号/特征添加到地图后隐藏地图中的现有底图。
这完全取决于您添加底图的方式。以下是实现此目的的两种不同方法 -
<强> 1。底图将添加为平铺地图服务。
如果您已将底图添加为 ArcGISTiledMapServiceLayer ,则在添加时会提供ID或在varibale中分配,并在完成线图形后使用hide()
方法
有关详细信息click here...
<强> 2。仅使用底图的键
添加底图ArcGIS JS API还允许用户仅使用其键添加一些默认底图。 点击此处了解default basemaps的键/名称。
但是,如果您正在使用第二种方法,那么首先访问地图中的底图图层对象,一旦找到底图,然后只需使用图层的hide()
方法隐藏它。
随意拍摄您的疑问。
希望这会对您有所帮助:)