表示将 DimensionAnalysis 添加到 SceneView.analyses 后的分析视图。
可使用 SceneView.whenAnalysisView 检索分析视图,类似于使用 SceneView.whenLayerView 检索图层视图的方式。
尺寸注记分析视图可控制是否可以交互创建或编辑其关联分析中的尺寸注记。
// create new analysis and add it to the scene view
const dimensionAnalysis = new DimensionAnalysis();
view.analyses.add(dimensionAnalysis);
// retrieve analysis view for the analysis
view.whenAnalysisView(dimensionAnalysis).then(dimensionAnalysisView => {
// allow existing dimensions in the analysis to be edited by selecting them
dimensionAnalysisView.interactive = true;
// start adding new dimensions interactively
dimensionAnalysisView.createLengthDimensions();
});
分析视图还允许检索每个尺寸注记所测量的长度。
// retrieve measured results from the analysis view
view.whenAnalysisView(dimensionAnalysis).then(dimensionAnalysisView => {
const results = dimensionAnalysisView.results;
});
- 另请参阅
属性概述
名称 | 类型 | 描述 | 类 |
---|---|---|---|
DimensionAnalysis | 与分析视图相关联的尺寸分析对象。 更多详情 | DimensionAnalysisView | |
String | 类的名称。 更多详情 | Accessor | |
Boolean | 设置为 | DimensionAnalysisView | |
Collection<LengthDimensionResult> | 分析中每个尺寸的结果。 更多详情 | DimensionAnalysisView | |
LengthDimension | 所选尺寸注记。 更多详情 | DimensionAnalysisView | |
Boolean | 当为 | DimensionAnalysisView |
属性详细信息
-
analysis DimensionAnalysisreadonly
-
与分析视图相关联的尺寸分析对象。
-
类的名称。声明的类名称格式化为
geoscene.folder.className
。
-
interactive Boolean
-
- 默认值:false
-
results Collection<LengthDimensionResult>readonly
-
分析中每个尺寸的结果。
结果顺序与尺寸注记的顺序相匹配,因此如果尺寸的索引已知,则可直接对集合进行索引:
const dimensionAnalysisView = await view.whenAnalysisView(dimensionAnalysis); const result = dimensionAnalysisView.results.at(dimensionIdx);
给定 dimension 对象,还可搜索结果集合:
const result = dimensionAnalysisView.results.find((result) => result.dimension === dimensionObject);
-
selectedDimension LengthDimension
-
方法概述
名称 | 返回值类值 | 描述 | 类 |
---|---|---|---|
添加一个或多个与对象的生命周期相关联的句柄。 更多详情 | Accessor | ||
Promise | 开始交互性创建新尺寸注记,并将其添加到分析中。 更多详情 | DimensionAnalysisView | |
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() 进行删除。如果未提供键,则句柄将被添加到默认组。
-
createLengthDimensions(options){Promise}
-
开始交互性创建新尺寸注记,并将其添加到分析中。
当用户双击鼠标或按下 escape 键时,创建过程将完成。要以其他方式停止创建过程,请在调用方法时传递一个中止信号作为参数。
let abortController; view.whenAnalysisView(dimensionAnalysis).then(dimensionAnalysisView => { // create a new controller abortController = new AbortController(); // pass the controller as an argument to the interactive creation method dimensionAnalysisView.createLengthDimensions(abortController); // abort the controller to stop the creation process abortController.abort(); });
调用此方法可将交互性设置为
true
。参数options Objectoptional指定附加选项的对象。
规范signal AbortSignaloptional中止信号,可用于取消创建。
返回类型 描述 Promise 在创建完成时进行解析的承诺,或在取消创建时拒绝的承诺。
-
如果存在指定的句柄组,则返回 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");