当图层在视图中变为可见或不可见时,可在 activeLayerInfos 的集合中添加或移除 ActiveLayerInfo。您可以使用此模块使图例更具交互性。
属性概述
名称 | 类型 | 描述 | 类 |
---|---|---|---|
Collection<ActiveLayerInfo> | 子 activeLayerInfos 的集合。 更多详情 | ActiveLayerInfo | |
String | 类的名称。 更多详情 | Accessor | |
Boolean | 当为 | ActiveLayerInfo | |
Boolean | 指示图层渲染器的图例显示是否由视图的比例驱动。 更多详情 | ActiveLayerInfo | |
Layer | 由 ActiveLayerInfo 对象表示的图层。 更多详情 | ActiveLayerInfo | |
LayerView | 由 ActiveLayerInfo 对象的图层表示的 layerView。 更多详情 | ActiveLayerInfo | |
LegendElement[] | legendElements 是使用图层渲染器构造的。 更多详情 | ActiveLayerInfo | |
Number | 图层或父元素的不透明度。 更多详情 | ActiveLayerInfo | |
ActiveLayerInfo | 父 geoscene/layers/support/ISublayer 或 GroupLayer 的 ActiveLayerInfo。 更多详情 | ActiveLayerInfo | |
Boolean | 指示 activeLayerInfo 是否已准备就绪。 更多详情 | ActiveLayerInfo | |
Boolean | 确定是否遵循地图中控制图例可见性的图层属性 ( | ActiveLayerInfo | |
Number | 在其中渲染图例的视图实例的比例。 更多详情 | ActiveLayerInfo | |
Number[] | 仅当 layer 为 MapImageLayer 时才适用。 更多详情 | ActiveLayerInfo | |
String | 表示图例标题的文本字符串。 更多详情 | ActiveLayerInfo | |
Number | ActiveLayerInfo 的版本。 更多详情 | ActiveLayerInfo | |
View | 在其中渲染图例的视图。 更多详情 | ActiveLayerInfo |
属性详细信息
-
children Collection<ActiveLayerInfo>
-
子 activeLayerInfos 的集合。这仅适用于子图层的渲染器或 GroupLayers 的子级。
-
类的名称。声明的类名称格式化为
geoscene.folder.className
。
-
hideLayersNotInCurrentView Boolean起始版本:GeoScene Maps SDK for JavaScript 4.21
-
当为
true
时,仅当图层在视图范围内可见,这些图层才会显示在图例中。当图层中的数据在视图中不可见时,图层的图例信息将被隐藏。要从图例中完全隐藏图层,应将图层的
legendEnabled
属性设置为false
。- 默认值:false
- 另请参阅
示例// layers not displayed in the view // will not be shown in the legend legend.hideLayersNotInCurrentView = true;
-
isScaleDriven Boolean
-
指示图层渲染器的图例显示是否由视图的比例驱动。这适用于 geoscene/layers/support/ISublayer 渲染器、任何使用
valueExpression
(Arcade 表达式) 的渲染器、DotDensityRenderer 以及启用了 clustering 的图层。
-
layer Layer
-
由 ActiveLayerInfo 对象表示的图层。
-
layerView LayerView
-
由 ActiveLayerInfo 对象的图层表示的 layerView。
-
legendElements LegendElement[]
-
legendElements 是使用图层渲染器构造的。它反映了图例的实际结构。
-
opacity Numberreadonly起始版本:GeoScene Maps SDK for JavaScript 4.17
-
图层或父元素的不透明度。
-
parent ActiveLayerInfo
-
父 geoscene/layers/support/ISublayer 或 GroupLayer 的 ActiveLayerInfo。
-
ready Boolean
-
指示 activeLayerInfo 是否已准备就绪。当计算所有的 legendElements 时,可将其设置为
true
。当图层渲染器改变时,可将其设置为false
,以便重新计算 legendElements。
-
respectLayerVisibility Boolean起始版本:GeoScene Maps SDK for JavaScript 4.13
-
确定是否遵循地图中控制图例可见性的图层属性 (
minScale
、maxScale
、legendEnabled
)。默认情况下,如果满足以下条件,则图层的图例元素将不会渲染在图例中:- 图层的 legendEnabled 属性设置为
false
。 - 如果视图的比例超出图层的 minScale 和 maxScale 属性定义的可见性范围。
当图例的
respectLayerVisibility
属性设置为false
时,地图中每个图层的图例元素将始终显示,因此忽略地图中每个图层的minScale
、maxScale
和legendEnabled
属性。- 默认值:true
- 另请参阅
示例// Always displays legend elements for the map's layers // regardless of their minScale, maxScale, and legendEnabled properties legend.respectLayerVisibility = false;
- 图层的 legendEnabled 属性设置为
-
scale Number
-
在其中渲染图例的视图实例的比例。
-
起始版本:GeoScene Maps SDK for JavaScript 4.23
-
仅当 layer 为 MapImageLayer 时才适用。要为其显示图例信息的 MapImageLayer Sublayer ID 数组。例如,如果 MapImageLayer 包含 100 个子图层,但您希望显示两个子图层的图例,则指定两个子图层的 ID 将允许图例仅显示这些子图层的图例信息。
示例// Only displays legend items for sublayers 1 and 2 activeLayerInfo.sublayerIds = [1, 2];
-
version Number
-
ActiveLayerInfo 的版本。每当 ActiveLayerInfo 的 ready 属性发生更改时,它就会增加
1
。该属性应在视图中监视 ActiveLayerInfo 的更改,并相应地更新 DOM。
-
view View
-
在其中渲染图例的视图。
方法概述
名称 | 返回值类值 | 描述 | 类 |
---|---|---|---|
添加一个或多个与对象的生命周期相关联的句柄。 更多详情 | Accessor | ||
Boolean | 如果存在指定的句柄组,则返回 true。 更多详情 | Accessor | |
移除对象拥有的句柄组。 更多详情 | Accessor |
方法详细说明
-
addHandles(handleOrHandles, groupKey)inherited起始版本:GeoScene Maps SDK for JavaScript 4.25
-
添加一个或多个与对象的生命周期相关联的句柄。当对象被销毁时,将移除句柄。
// Manually manage handles const handle = reactiveUtils.when( () => !view.updating, () => { wkidSelect.disabled = false; }, { once: true } ); // Handle gets removed when the object is destroyed. this.addHandles(handle);
参数handleOrHandles WatchHandle|WatchHandle[]对象销毁后,标记为要移除的句柄。
groupKey *optional标识句柄应添加到的组的键。组中的所有句柄稍后都可使用 Accessor.removeHandles() 进行删除。如果未提供键,则句柄将被添加到默认组。
-
起始版本:GeoScene Maps SDK for JavaScript 4.25
-
如果存在指定的句柄组,则返回 true。
参数groupKey *optional组键。
返回类型 描述 Boolean 如果存在指定的句柄组,则返回 true
。示例// Remove a named group of handles if they exist. if (obj.hasHandles("watch-view-updates")) { obj.removeHandles("watch-view-updates"); }
-
removeHandles(groupKey)inherited起始版本:GeoScene Maps SDK for JavaScript 4.25
-
移除对象拥有的句柄组。
参数groupKey *optional要移除的组键或组键的数组或集合。
示例obj.removeHandles(); // removes handles from default group obj.removeHandles("handle-group"); obj.removeHandles("other-handle-group");
类型定义
-
ColorRampElement
-
描述用作 legendElement 的 ColorRampElement 的方案。有关此对象中属性的更多详细信息,请参见下表。
- 属性
-
type String
此元素的类型始终为
color-ramp
。图例中显示的色带的标题。
infos ColorRampStop[]图例中渲染的单个色标,对应于渲染器中的颜色视觉变量。
-
ColorRampStop
-
描述 ColorRampStop 元素的方案。每个 ColorRampStop 表示渲染器中引用的 ColorVariable 的单个停止点。
-
HeatmapRampElement
-
描述用作 legendElement 的 HeatmapRampElement 的方案。有关此对象中属性的更多详细信息,请参见下表。
- 属性
-
type String
此元素的类型始终为
heatmap-ramp
。optional 图例中显示的热点图渐变的标题。
infos HeatmapRampStop[]图例中渲染的单个色标,对应于渲染器中的热点图 colorStops。
-
HeatmapRampStop
-
描述 HeatmapRampStop 元素的方案。每个 HeatmapRampStop 表示渲染器中引用的 Heatmap 颜色停止点的单个
colorStop
。
-
ImageSymbolTableElementInfo
-
用于定义每个 ImageSymbolTableElementInfo 方案的属性。这仅适用于 ImageryLayer 渲染器。
-
用于定义每个受支持的 legendElements 方案的属性。
-
OpacityRampElement
-
描述用作 legendElement 的 OpacityRampElement 的方案。有关此对象中属性的更多详细信息,请参见下表。
- 属性
-
type String
此元素的类型始终为
opacity-ramp
。optional 图例中显示的不透明度渐变的标题。
infos OpacityRampStop[]图例中渲染的单个不透明度停靠点,对应于渲染器中的不透明度视觉变量。
-
OpacityRampStop
-
描述 OpacityRampStop 元素的方案。每个 OpacityRampStop 表示渲染器中引用的 OpacityVariable 的单个停靠点。每个停靠点的不透明度值在
color
对象的 alpha 属性中指示。
-
RampTitle
-
描述 RampTitle 元素的方案。
-
RelationshipLabels
-
描述 RelationshipLabels 元素的方案。在正方形的角处渲染这些标注,正方形表示图例中的关系渲染器。
-
RelationshipRampElement
-
描述用作 legendElement 的 RelationshipRampElement 的方案。有关此对象中属性的更多详细信息,请参见下表。
- 属性
-
type String
此元素的类型始终为
relationship-ramp
。numClasses Number组成渲染器的每个字段的类数。可以是 2、3 或 4。
focus String确定 Legend 的方向。值可以是
HH
、HL
、LH
、LL
。图例格网中显示的二维颜色数组。
labels RelationshipLabels图例中每个角的标注。
rotation Number图例的旋转,以度为单位 (0-360)。
0
度将图例显示为正方形,其中LL
像元位于图例的左下角,HH
像元位于右上角。title String图例中显示的渲染器的标题。
optional 与关系渲染器关联的信息对象。
-
RendererTitle
-
描述 RendererTitle 元素的方案。
-
SizeRampElement
-
描述用作 legendElement 的 SizeRampElement 的方案。有关此对象中属性的更多详细信息,请参见下表。
- 属性
-
type String
此元素的类型始终为
size-ramp
。optional 图例中显示的大小渐变的标题。
infos SizeRampStop[]图例中渲染的单个大小停靠点,对应于渲染器中的大小视觉变量。
-
SizeRampStop
-
描述 SizeRampStop 元素的方案。每个 SizeRampStop 表示渲染器中引用的 SizeVariable 的单个停靠点。
-
SymbolTableElement
-
描述用作 legendElement 的 SymbolTableElement 的方案。此图例元素用于 UniqueValueRenderer 和 ClassBreaksRenderer。有关此对象中属性的更多详细信息,请参见下表。
- 属性
-
type String
此元素的类型始终为
symbol-table
。title String|RendererTitle图例中显示的渲染器的标题。
legendType String仅用于设置为 ImageryLayers 的渲染器。指示图层上设置的渲染器类型 (例如
stretched
或Unique Values
)。infos SymbolTableElementType[]为符号表渲染的每个符号/类别/间隔的数组。例如,这可能是 ClassBreaksRenderer 的单个间隔,也可能是 UniqueValueRenderer 的唯一值。
-
SymbolTableElementInfo
-
用于定义 SymbolTableElementInfo 方案的属性。
- 属性
-
图例中显示的渲染器的标题。
value *与图例中给定
symbol
相对应的值。symbol Symbol图例中对应
value
的符号。size Number符号的大小,以磅为单位。
preview HTMLElement图例中显示的符号元素的预览。
-
-
用于定义每个 SymbolTableElementType 方案的属性。