DirectLineMeasurement3DViewModel

AMD: require(["geoscene/widgets/DirectLineMeasurement3D/DirectLineMeasurement3DViewModel"], (DirectLineMeasurement3DViewModel) => { /* code goes here */ });
ESM: import DirectLineMeasurement3DViewModel from "@geoscene/core/widgets/DirectLineMeasurement3D/DirectLineMeasurement3DViewModel";
类: geoscene/widgets/DirectLineMeasurement3D/DirectLineMeasurement3DViewModel
继承于:DirectLineMeasurement3DViewModel Accessor
起始版本:GeoScene Maps SDK for JavaScript 4.7

提供 DirectLineMeasurement3D 微件的逻

另请参阅

构造函数

new DirectLineMeasurement3DViewModel(properties)
参数
properties Object
optional

有关可能传递给构造函数的所有属性的列表,请参见属性

属性概述

可以设置、检索或侦听任何属性。请参阅使用属性主题。
显示继承属性 隐藏继承属性
名称 类型 描述
DirectLineMeasurementAnalysis

由视图模型创建或修改的直线测量分析对象。

更多详情
DirectLineMeasurement3DViewModel
String

类的名称。

更多详情
Accessor
Object

在两点之间计算的当前测量值。

更多详情
DirectLineMeasurement3DViewModel
String

视图模型的状态。

更多详情
DirectLineMeasurement3DViewModel
SystemOrLengthUnit

单位系统(英制、公制)或用于显示距离值的特定单位。

更多详情
DirectLineMeasurement3DViewModel
SystemOrLengthUnit[]

用于显示距离值的单位系统 (英制、公制)或特定单位列表。

更多详情
DirectLineMeasurement3DViewModel
SceneView

微件将从中操作的视图。

更多详情
DirectLineMeasurement3DViewModel

属性详细信息

起始版本:GeoScene Maps SDK for JavaScript 4.23

由视图模型创建或修改的直线测量分析对象。

可以在视图模型构建期间设置此属性,以向视图模型提供现有分析以进行修改。一旦分配给视图模型,分析上的属性也可进行更新。

如果在视图模型构建期间未提供分析,则视图模型会自动创建其自己的分析并将其添加到视图中。在这种情况下,当视图模型被销毁时,分析也将自动从视图中移除。

示例
// Construct a direct line measurement analysis object outside of the view model
const analysis = new DirectLineMeasurementAnalysis({
  startPoint: {
    type: "point", // autocasts as new Point()
    x: 7.67,
    y: 45.981,
    z: 3435.765
  },
  endPoint: {
    type: "point",
    x: 7.659,
    y: 45.976,
    z: 4437
  }
});

// Ensure that the analysis is added to the view
view.analyses.add(analysis);

// Frame the analysis in the view
view.goTo(analysis.extent);

// Pass the analysis object as a constructor parameter to modify it using the view model
const viewModel = new DirectLineMeasurement3DViewModel({
  analysis: analysis,
  view: view
});
declaredClass Stringreadonly inherited

类的名称。声明的类名称格式化为 geoscene.folder.className

measurement Objectreadonly

在两点之间计算的当前测量值。

属性
measurementMode String

描述进行测量的模式。在 euclidean 模式中,距离在 ECEF 坐标系中测量为直线。在 geodesic 模式中,距离测量为 WGS84 椭球体上的测地线。

可能值"euclidean"|"geodesic"

directDistance MeasurementValue

两点之间的直接距离,仅在 euclidean 模式下可用。

horizontalDistance MeasurementValue

两点之间的水平距离。

verticalDistance MeasurementValue

两点之间的垂直距离。

state Stringreadonly

视图模型的状态。

描述
disabled 尚未准备就绪
ready 准备测量
measuring 目前正在测量
measured 测量已完成

可能值"disabled"|"ready"|"measuring"|"measured"

默认值:disabled

单位系统(英制、公制)或用于显示距离值的特定单位。可能值在 unitOptions 中列出。

用于显示距离值的单位系统 (英制、公制)或特定单位列表。默认情况下,包括以下单位:metricimperialinchesfeetus-feetyardsmilesnautical-milesmeterskilometers。可能的 unit 值只能是此列表的子集。

微件将从中操作的视图。

方法概述

显示继承的方法 隐藏继承的方法
名称 返回值类值 描述

添加一个或多个与对象的生命周期相关联的句柄。

更多详情
Accessor

清除当前测量。

更多详情
DirectLineMeasurement3DViewModel
Boolean

如果存在指定的句柄组,则返回 true。

更多详情
Accessor

移除对象拥有的句柄组。

更多详情
Accessor

开始新的测量。

更多详情
DirectLineMeasurement3DViewModel

方法详细说明

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() 进行删除。如果未提供键,则句柄将被添加到默认组。

clear()
起始版本:GeoScene Maps SDK for JavaScript 4.16

清除当前测量。

hasHandles(groupKey){Boolean}inherited
起始版本: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");
start()
起始版本:GeoScene Maps SDK for JavaScript 4.16

开始新的测量。

示例
const directLineMeasurement3D = new DirectLineMeasurement3D({
  view: view,
  unit: "kilometers"
});

await directLineMeasurement3D.start();

类型定义

MeasurementValue Object

测量值。

属性
text String

测量值的文本表示。

state String

测量值的状态。

描述
available 测量值可用
unavailable 由于测量不完整或该值不适用于给定的测量配置,则测量值不可用 (例如,在 geodesic 模式下直线距离不可用)

您的浏览器不再受支持。请升级您的浏览器以获得最佳体验。请参阅浏览器弃用帖子以获取更多信息