當前位置: 首頁>>代碼示例 >>用法及示例精選 >>正文


JavaScript ArcGIS Map.layers用法及代碼示例


基本信息

以下是所在類或對象的基本信息。

AMD: require(["esri/Map"], (Map) => { /* code goes here */ });

ESM: import Map from "@arcgis/core/Map";

類: esri/Map

繼承: Map > Accessor

子類: WebMap , WebScene

自從:用於 JavaScript 4.0 的 ArcGIS API

用法說明

Map.layers函數(或屬性)的定義如下:

來自 Layer[]

操作 layers 的集合。該屬性包含可查詢、分配不同渲染器、分析等的業務層,例如FeatureLayersWebTileLayersGraphicsLayers。不包括basemaps

layer 是一個或多個特征或 graphics 的集合,它們表示 real-world 現象。每個要素都包含一個symbolgeographic data,允許將其作為具有空間上下文的圖形呈現在Map上。圖層中的要素還可能包含提供附加信息的數據屬性,這些信息可以在 popup windows 中查看並用於 rendering the layer

可以使用 add() 或 addMany() 方法將圖層添加到構造函數中,或者使用 add()addMany() 直接添加到圖層集合中。

在 3D 中,對於在地形上渲染的圖層,圖層的順序還取決於圖層的類型。平鋪層(VectorTileLayerWebTileLayerWMTSLayer)始終按照與層集合中指定的順序相同的順序首先繪製。動態圖層(MapImageLayerImageryLayerWMSLayer,以及帶有elevation modeon-the-ground的基於特征的圖層)使用圖層集合中的順序呈現在頂部。

layer 隻能添加到一個父級。無法將同一層添加到多個MapsGroupLayers。如果您嘗試這樣做,圖層將自動從其當前父級中刪除並放置在新父級中。

let layer = new GraphicsLayer();
// The layer belongs to map1
map1.layers.add(layer);
// The layer now belongs to map2
// and implicitly does: map1.layers.remove(layer)
map2.layers.add(layer);

要從 feature layers 訪問表,請在 MapWebMap 類中使用 tables 屬性。

例子:

// Add layers in the constructor of Map using an array
let fl = new FeatureLayer(url);
let gl = new GraphicsLayer();
let map = new Map({
  layers: [fl, gl]
});

// Add layers using add()
map.addMany([fl, gl]);

// Add layers using layers collection
map.layers.addMany([fl, gl]);

// Add layers using layers collection's push method
map.layers.push(fl, gl);

相關用法


注:本文由純淨天空篩選整理自arcgis.com大神的英文原創作品 Map.layers。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。