Elevation Extremum Analysis
DMap3D.analysis.elevationExtremum is used to analyze the elevation extremes (highest and lowest points) within a specified region.
Import
import DMap3D from 'dmap3d'
import * as Cesium from 'cesium'
Basic Usage
const viewer = new Cesium.Viewer('cesiumContainer')
// Create elevation extremum analysis tool
const extremum = new DMap3D.analysis.elevationExtremum(viewer)
// Listen for analysis complete event
extremum.onAnalysisEnd((result) => {
console.log('Minimum elevation:', result.minHeight, 'meters')
console.log('Maximum elevation:', result.maxHeight, 'meters')
console.log('Base elevation:', result.baseHeight, 'meters')
})
// Activate drawing (draw analysis region in the scene)
extremum.activate()
Constructor
new DMap3D.analysis.elevationExtremum(viewer, options?)
Parameters:
viewer- Cesium.Viewer instanceoptions?- Optional configuration
Options:
interface ElevationExtremumOptions {
type?: 'globe' | 'all' // Sampling type, default 'all'
heightMode?: 'relative' | 'absolute' // Height mode, default 'absolute'
baseHeight?: number // Base height, default 0
pointLength?: number // Number of sample points, default 1200
showTriangle?: boolean // Show triangulated mesh, default true
showRangeBox?: boolean // Show bounding box, default true
showBasePlane?: boolean // Show base plane, default true
showResultLabel?: boolean // Show result labels, default true
}
Methods
activate()
Activate drawing functionality to draw the analysis region in the scene.
extremum.activate()
deactivate()
Deactivate drawing functionality.
extremum.deactivate()
clear()
Clear all analysis content.
extremum.clear()
onAnalysisEnd(callback)
Register analysis complete callback.
extremum.onAnalysisEnd((result) => {
console.log('Minimum elevation:', result.minHeight)
console.log('Maximum elevation:', result.maxHeight)
console.log('Cut volume:', result.cutVolume)
console.log('Fill volume:', result.fillVolume)
console.log('Base area:', result.baseArea)
})
destroy()
Destroy the tool and release resources.
extremum.destroy()
Analysis Result
interface CutAndFillResult {
baseHeight: number // Base height (meters)
minHeight: number // Minimum height (meters)
maxHeight: number // Maximum height (meters)
cutVolume: number // Cut volume (cubic meters)
fillVolume: number // Fill volume (cubic meters)
baseArea: number // Base area (square meters)
}