DimensionAnalysis 允许在 3D SceneView 中创建和显示长度和距离的测量注记。
尺寸对象可以通过交互方式或编程方式创建,并可直接添加到 SceneView.analyses 或 SceneView.map 的 DimensionLayer.source 中。
// create analysis with dimensions
const dimensionAnalysis = new DimensionAnalysis({
dimensions: [
new LengthDimension({
startPoint: new Point({ }),
endPoint: new Point({ })
})
],
style: new DimensionSimpleStyle({
color: "white"
}),
});
// add the analysis to the view
view.analyses.push(dimensionAnalysis);
使用 DimensionAnalysisView 检索分析结果。
// retrieve measured results from analysis view
view.whenAnalysisView(dimensionAnalysis).then(dimensionAnalysisView => {
const results = dimensionAnalysisView.results;
});
要开始以交互方式向分析中添加长度尺寸,请使 DimensionAnalysisView
交互并使用 DimensionAnalysisView.createLengthDimensions() 方法。
view.whenAnalysisView(dimensionAnalysis).then(dimensionAnalysisView => {
dimensionAnalysisView.createLengthDimensions();
});
只有 DimensionLayer 上的 DimensionAnalysis 可以保存到 WebScene 或添加到幻灯片中。
已知限制
- DimensionAnalysis 仅在 3D SceneView 中受支持。
构造函数
属性概述
名称 | 类型 | 描述 | 类 |
---|---|---|---|
String | 类的名称。 更多详情 | Accessor | |
Collection<LengthDimension> | 尺寸列表。 更多详情 | DimensionAnalysis | |
DimensionSimpleStyle | 样式可定义如何显示此分析的尺寸对象。 更多详情 | DimensionAnalysis |
属性详细信息
-
类的名称。声明的类名称格式化为
geoscene.folder.className
。
-
dimensions Collection<LengthDimension>autocast
-
尺寸列表。
-
样式可定义如何显示此分析的尺寸对象。
方法概述
名称 | 返回值类值 | 描述 | 类 |
---|---|---|---|
添加一个或多个与对象的生命周期相关联的句柄。 更多详情 | Accessor | ||
this | 创建此对象的深度克隆。 更多详情 | DimensionAnalysis | |
Boolean | 如果存在指定的句柄组,则返回 true。 更多详情 | Accessor | |
移除对象拥有的句柄组。 更多详情 | Accessor |
方法详细说明
-
addHandles(handleOrHandles, groupKey)inherited
-
添加一个或多个与对象的生命周期相关联的句柄。当对象被销毁时,将移除句柄。
// 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() 进行删除。如果未提供键,则句柄将被添加到默认组。
-
clone(){this}
-
创建此对象的深度克隆。任何通过引用存储值的属性都将被分配克隆实例上引用值的副本。
返回类型 描述 this 调用此方法的类实例的深度克隆。
-
如果存在指定的句柄组,则返回 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
-
移除对象拥有的句柄组。
参数groupKey *optional要移除的组键或组键的数组或集合。
示例obj.removeHandles(); // removes handles from default group obj.removeHandles("handle-group"); obj.removeHandles("other-handle-group");