基本信息
以下是所在类或对象的基本信息。
AMD:
require(["esri/layers/MapNotesLayer"], (MapNotesLayer) => { /* code goes here */ });
ESM:
import MapNotesLayer from "@arcgis/core/layers/MapNotesLayer";
类:
esri/layers/MapNotesLayer
继承: MapNotesLayer > Layer > Accessor
自从:用于 JavaScript 4.4 的 ArcGIS API
用法说明
MapNotesLayer 允许您显示和修改来自 Map Viewer 的Map注释(在 web Map上绘制的特征)。也可以使用 2D MapView 中的 SketchViewModel 创建新的 MapNotesLayer。
MapNotesLayer 将Map注释组织为 sublayers
集合中的 5 种图层类型:multipointLayer、pointLayer、polygonLayer、polylineLayer 和 textLayer。这些层中的每一层都是 GraphicLayers。标题(针对 LayerList 小部件)、popupTemplate、几何图形和符号系统可以更新和保留。
Map注释是 web Map的一部分,通常使用 Map Viewer 创建。有关其他信息,请参阅 ArcGIS 在线文档,了解如何 Add Map notes 。在 web map specification 中,Map注释是 FeatureCollections 的一种特殊类型。
可以显示使用 Map Viewer Classic 创建的Map注释,但无法使用此类修改或访问Map注释。要了解MapNotesLayer中的Map注释是否可以编辑,您可以检查capabilities.operations.supportsMapNotesEditing属性值。
已知限制
- 目前,MapNotesLayer 在 3D SceneViews 中不受支持。
- MapNotesLayer 不支持 Legend 小部件。
- 对可见性、比例范围和不透明度属性的更改不会保留。
- 使用 Map Viewer Classic 创建的Map注释不支持编辑,并且不在 LayerList 小部件中显示子图层。
以下代码段演示了如何加载包含MapNotes 图层的现有网络Map。
const map = new WebMap({
portalItem: {
id: "6b3bfc4900214761a709b5d5a6a3d92b"
}
});
const view = new MapView({
container: "viewDiv",
map
});
view.when(() => {
// get the layer type ("map-notes")
console.log(map.layers.getItemAt(0).type);
// get the title
console.log(map.layers.items[0].sublayers.items[0].sublayers.items[0].attributes.title);
// update the popupTemplate
map.layers.items[0].sublayers.items[1].sublayers.items[0].popupTemplate.content = "{title} has an updated popup";
});
此代码段创建一个新的 MapView 并从现有门户项目加载 MapNotes 图层。
const map = new Map({
basemap: "topo-vector"
});
const view = new MapView({
container: "viewDiv",
map
});
const promise = Layer.fromPortalItem({
portalItem: {
id: "2e2f6840647d4cb9a384532652e5100f"
}
});
promise.then((layer) => {
console.log(layer.type); // "map-notes"
map.add(layer);
Promise.all([view.when(), layer.load()]).then(() => {
view.goTo(layer.fullExtent);
});
});
相关用法
- JavaScript ArcGIS MapNotesLayer.maxScale用法及代码示例
- JavaScript ArcGIS MapNotesLayer.fullExtent用法及代码示例
- JavaScript ArcGIS MapNotesLayer.visible用法及代码示例
- JavaScript ArcGIS MapNotesLayer.when用法及代码示例
- JavaScript ArcGIS MapNotesLayer.portalItem用法及代码示例
- JavaScript ArcGIS MapNotesLayer.minScale用法及代码示例
- JavaScript ArcGIS MapNotesLayer layerview-create-error事件用法及代码示例
- JavaScript ArcGIS MapNotesLayer.on用法及代码示例
- JavaScript ArcGIS MapNotesLayer.opacity用法及代码示例
- JavaScript ArcGIS MapNotesLayer.effect用法及代码示例
- JavaScript ArcGIS MapNotesLayer layerview-create事件用法及代码示例
- JavaScript ArcGIS MapImageLayer.minScale用法及代码示例
- JavaScript ArcGIS MapImageLayer.customParameters用法及代码示例
- JavaScript ArcGIS Map.allTables用法及代码示例
- JavaScript Map.delete()用法及代码示例
- JavaScript ArcGIS MapView double-click事件用法及代码示例
- JavaScript ArcGIS MapView.constraints用法及代码示例
- JavaScript ArcGIS MapView.takeScreenshot用法及代码示例
- JavaScript ArcGIS MapView.when用法及代码示例
- JavaScript ArcGIS MapImageLayer layerview-create-error事件用法及代码示例
- JavaScript ArcGIS MapView.highlightOptions用法及代码示例
- JavaScript ArcGIS MapView layerview-create事件用法及代码示例
- JavaScript ArcGIS MapImageLayer.portalItem用法及代码示例
- JavaScript ArcGIS MapImageLayer.fetchImage用法及代码示例
- JavaScript ArcGIS MapImageLayer layerview-create事件用法及代码示例
注:本文由纯净天空筛选整理自arcgis.com大神的英文原创作品 MapNotesLayer。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。