高程极值分析
DMap3D.analysis.elevationExtremum 用于分析指定区域内的高程极值(最高点和最低点)。
引入
import DMap3D from 'dmap3d'
import * as Cesium from 'cesium'
基本用法
const viewer = new Cesium.Viewer('cesiumContainer')
// 创建高程极值分析工具
const extremum = new DMap3D.analysis.elevationExtremum(viewer)
// 监听分析完成事件
extremum.onAnalysisEnd((result) => {
console.log('最低高程:', result.minHeight, '米')
console.log('最高高程:', result.maxHeight, '米')
console.log('基准高程:', result.baseHeight, '米')
})
// 激活绘制(在场景中绘制分析区域)
extremum.activate()
构造函数
new DMap3D.analysis.elevationExtremum(viewer, options?)
参数:
viewer- Cesium.Viewer 实例options?- 可选配置项
Options:
interface ElevationExtremumOptions {
type?: 'globe' | 'all' // 采样类型,默认 'all'
heightMode?: 'relative' | 'absolute' // 高度模式,默认 'absolute'
baseHeight?: number // 基准高度,默认 0
pointLength?: number // 采样点数量,默认 1200
showTriangle?: boolean // 显示三角网格,默认 true
showRangeBox?: boolean // 显示范围框,默认 true
showBasePlane?: boolean // 显示基准面,默认 true
showResultLabel?: boolean // 显示结果标注,默认 true
}
方法
activate()
激活绘制功能,在场景中绘制分析区域。
extremum.activate()
deactivate()
停用绘制功能。
extremum.deactivate()
clear()
清除所有分析内容。
extremum.clear()
onAnalysisEnd(callback)
注册分析完成回调。
extremum.onAnalysisEnd((result) => {
console.log('最低高程:', result.minHeight)
console.log('最高高程:', result.maxHeight)
console.log('挖方体积:', result.cutVolume)
console.log('填方体积:', result.fillVolume)
console.log('基底面积:', result.baseArea)
})
destroy()
销毁工具并释放资源。
extremum.destroy()
分析结果
interface CutAndFillResult {
baseHeight: number // 基准高度(米)
minHeight: number // 最低高度(米)
maxHeight: number // 最高高度(米)
cutVolume: number // 挖方体积(立方米)
fillVolume: number // 填方体积(立方米)
baseArea: number // 基底面积(平方米)
}