属性概述
名称 | 类型 | 描述 | 类 |
---|---|---|---|
String | 类的名称。 更多详情 | Accessor | |
Number | 当投影坐标系时 (除了 web 墨卡托),小于此阈值的距离将用平面法计算。 更多详情 | DistanceMeasurement2DViewModel | |
Object | 测量折线的长度和几何 (以米为单位)。 更多详情 | DistanceMeasurement2DViewModel | |
String | 此属性返回特定于语言环境的长度表示。 更多详情 | DistanceMeasurement2DViewModel | |
String | 视图模型的状态。 更多详情 | DistanceMeasurement2DViewModel | |
SystemOrLengthUnit | 单位系统(英制、公制)或用于显示距离值的特定单位。 更多详情 | DistanceMeasurement2DViewModel | |
SystemOrLengthUnit[] | 用于显示距离值的可用单位列表和单位系统 (英制、公制)。 更多详情 | DistanceMeasurement2DViewModel | |
MapView | 微件将从中操作的视图。 更多详情 | DistanceMeasurement2DViewModel |
属性详细信息
-
类的名称。声明的类名称格式化为
geoscene.folder.className
。
-
geodesicDistanceThreshold Number
-
当投影坐标系时 (除了 web 墨卡托),小于此阈值的距离将用平面法计算。否则,距离将以大地测量方式计算。
- 默认值:100000
示例// To set the threshold at 10 km let measurementWidget = new DistanceMeasurement2D({ viewModel: { view: view, geodesicDistanceThreshold: 10000 } });
-
measurement Objectreadonly
-
测量折线的长度和几何 (以米为单位)。
- 属性
-
length Number
线的长度 (m)。
geometry Polyline测量线。
示例// After creating and adding the DistanceMeasurement2D widget let measurementWidget = new DistanceMeasurement2D({ view: view }); view.ui.add(measurementWidget, "top-right"); // Raw measurements (in meters) can be accessed from this property measurementWidget.watch("viewModel.measurement", function(measurement) { console.log( "Length: ", measurement.length, "Geometry: ", measurement.geometry ); });
-
measurementLabel Stringreadonly
-
此属性返回特定于语言环境的长度表示。长度四舍五入到小数点后两位。长度来源于 measurement 属性 (以米为单位) 并转换为用户定义的单位或系统。
示例// After creating and adding the DistanceMeasurement2D widget let measurementWidget = new DistanceMeasurement2D({ view: view }); view.ui.add(measurementWidget, "top-right"); // The measurement label can be accessed from this property measurementWidget.watch("viewModel.measurementLabel", function(label) { console.log( "Label: ", label ); });
-
state Stringreadonly
-
视图模型的状态。
值 描述 disabled 尚未准备就绪 ready 准备测量 measuring 测量已开始 measured 测量已完成 可能值:"disabled"|"ready"|"measuring"|"measured"
- 默认值:disabled
示例// To display the state of the DistanceMeasurement2D widget let measurementWidget = new DistanceMeasurement2D({ view: view }); measurementWidget.watch("viewModel.state", function(state){ console.log("Current state: ", state); });
-
unit SystemOrLengthUnit
-
单位系统(英制、公制)或用于显示距离值的特定单位。可能值在 unitOptions 中列出。
示例// To create the DistanceMeasurement2D widget that displays distance in yards let measurementWidget = new DistanceMeasurement2D({ viewModel: { view: view, unit: "yards" } }); // To display the current measurement unit console.log('Current unit: ', measurementWidget.viewModel.unit);
-
unitOptions SystemOrLengthUnit[]
-
用于显示距离值的可用单位列表和单位系统 (英制、公制)。默认情况下,包括以下单位:
metric
、imperial
、inches
、feet
、us-feet
、yards
、miles
、nautical-miles
、meters
、kilometers
。可能的 unit 值只能是此列表的子集。示例// To display the available units to the console let measurementWidget = new DistanceMeasurement2D({ view: view }); console.log('All units: ', measurementWidget.viewModel.unitOptions.join(", "));
-
view MapView
-
微件将从中操作的视图。
示例// To create DistanceMeasurement2D widget with the view property let measurementWidget = new DistanceMeasurement2D({ viewModel: { view: view } });
方法概述
名称 | 返回值类值 | 描述 | 类 |
---|---|---|---|
添加一个或多个与对象的生命周期相关联的句柄。 更多详情 | Accessor | ||
清除当前测量。 更多详情 | DistanceMeasurement2DViewModel | ||
Boolean | 如果存在指定的句柄组,则返回 true。 更多详情 | Accessor | |
移除对象拥有的句柄组。 更多详情 | Accessor | ||
开始新的测量。 更多详情 | DistanceMeasurement2DViewModel |
方法详细说明
-
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
-
清除当前测量。
-
起始版本: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 distanceMeasurement2DViewModel = new DistanceMeasurement2DViewModel({ view: view, unit: "us-feet" }); await distanceMeasurement2DViewModel.start();