跳到主要内容

方位角测量

DMap3D.measurement.azimuth 用于测量三维空间中两点之间的方位角(从正北方向顺时针的角度)。

引入

import DMap3D from 'dmap3d'
import * as Cesium from 'cesium'

基本用法

const viewer = new Cesium.Viewer('cesiumContainer')

// 创建方位角测量工具
const azimuthTool = new DMap3D.measurement.azimuth(viewer)

// 开始测量(左键点击两个点:起点、终点)
azimuthTool.start()
// 方位角值实时显示,格式:方位角: XX°

构造函数

new DMap3D.measurement.azimuth(viewer)

创建方位角测量工具实例。继承自 MeasureBase 基类。

参数:

  • viewer - Cesium.Viewer 实例

方法

start()

开始方位角测量。用户左键点击两个点(起点和终点),方位角实时显示在线段中点位置。同时会显示正北方向指示箭头。

azimuthTool.start()

end()

结束测量,保留已绘制的结果。

azimuthTool.end()

clear()

清除所有测量结果。

azimuthTool.clear()

destroy()

销毁工具并释放资源。

azimuthTool.destroy()

updateConfig(config)

动态更新样式配置。

azimuthTool.updateConfig({
pointColor: '#FF0000', // 测量点颜色
pointSize: 10, // 测量点大小(像素)
lineColor: '#00FF00', // 测量线颜色
lineWidth: 3, // 测量线宽度(像素)
fontColor: '#FFFF00', // 方位角标签文字颜色
fontSize: 16, // 字体大小(像素)
arrowColor: '#FF00FF', // 正北方向指示箭头颜色
arrowLength: 30 // 正北方向指示箭头长度(米)
})

配置项

属性类型默认值说明
pointColorstring'#ffc403'测量点颜色
pointSizenumber8测量点大小(像素)
lineColorstring'#12e184'测量线颜色
lineWidthnumber2测量线宽度(像素)
fontColorstring'#ffc403'方位角标签文字颜色
fontSizenumber14字体大小(像素)
arrowColorstring'#ffc403'正北方向指示箭头颜色
arrowLengthnumber20正北方向指示箭头长度(米)

方位角说明

方位角基于 ENU(东-北-天)局部坐标系计算:

  • : 正北方向
  • 90°: 正东方向
  • 180°: 正南方向
  • 270°: 正西方向
  • 范围: 0° - 360°,顺时针方向为正

完整示例

const viewer = new Cesium.Viewer('cesiumContainer')

// 创建方位角测量工具
const azimuthTool = new DMap3D.measurement.azimuth(viewer)

// 自定义样式
azimuthTool.updateConfig({
pointColor: '#FF0000',
lineColor: '#00FFFF',
fontColor: '#FFFF00',
arrowColor: '#FF0000',
arrowLength: 50,
fontSize: 16
})

// 开始测量
azimuthTool.start()
// 左键点击两个点,方位角自动计算并显示
// 同时会在起点位置显示一条正北方向的指示线

// 清除并重新测量
azimuthTool.clear()
azimuthTool.start()

// 销毁
azimuthTool.destroy()

相关链接