跳到主要内容

空间分析

量测

startMeasureDistanceTriangulation(options)

进入三角量测模式
参数
名称参数枚举值是否必填描述
optionsObjectN/A三角量测的线参数
options.colorStringN/A线的颜色,默认为"#78E7E0"
options.lineWidthIntegerN/A线的宽度,默认为1
代码示例
let options = {
"color": "#00FF00",
"lineWidth": 2
}
mapmostUE.startMeasureDistanceTriangulation(options); // options为可选参数,可不传
效果
show

stopMeasureDistanceTriangulation()

退出三角量测模式
代码示例
mapmostUE.stopMeasureDistanceTriangulation()

startMeasureDistanceContinuation(options)

进入连续距离量测模式
参数
名称参数枚举值是否必填描述
optionsObjectN/A连续距离量测的线参数
options.colorStringN/A线的颜色,默认为"#78E7E0"
options.lineWidthIntegerN/A线的宽度,默认为1
代码示例
mapmostUE.startMeasureDistanceContinuation()
效果
show

stopMeasureDistanceContinuation()

退出连续距离量测模式
代码示例
mapmostUE.stopMeasureDistanceContinuation()
效果
show

startMeasureAreaContinuation(options)

进入连续面积量测模式
参数
名称参数枚举值是否必填描述
optionsObjectN/A连续面积量测的线参数
options.colorStringN/A线的颜色,默认为"#78E7E0"
options.lineWidthIntegerN/A线的宽度,默认为1
代码示例
mapmostUE.startMeasureAreaContinuation()
效果
show

stopMeasureAreaContinuation()

退出连续面积量测模式
代码示例
mapmostUE.stopMeasureAreaContinuation()

startMeasureAreaProjection(options)

进入投影面积量测模式
参数
名称参数枚举值是否必填描述
optionsObjectN/A连续投影面积量测的线参数
options.colorStringN/A线的颜色,默认为"#78E7E0"
options.lineWidthIntegerN/A线的宽度,默认为1
代码示例
mapmostUE.startMeasureAreaProjection()
效果
show

stopMeasureAreaProjection()

退出投影面积量测模式
代码示例
mapmostUE.stopMeasureAreaProjection()

剖分

此类接口需在模型导入时,对目标模型进行预处理。具体过程见:FAQ:常见问题三

startClip(callback)

进入剖分状态
参数
名称参数枚举值是否必填描述
function(val) {}FnN/A剖切体生成完成时回调函数
val.clipAreaPointsObject[]N/AN/A生成的剖切体后回调返回对象
val.clipAreaPoints[0].xfloatN/AN/A经度
val.clipAreaPoints[0].yfloatN/AN/A纬度
val.clipAreaPoints[0].zfloatN/AN/A高度
val.clipAreaPoints[1].pitchfloatN/AN/A俯仰角
val.clipAreaPoints[1].yawfloatN/AN/A偏航角
val.clipAreaPoints[1].rollfloatN/AN/A翻滚角
val.clipAreaPoints[2]floatN/AN/A
val.clipAreaPoints[3]floatN/AN/A
val.clipAreaPoints[4]floatN/AN/A
代码示例
// 剖切体在场景中被创建后的回调
let fn = function (val) {
console.log('clip box added!')
console.log(val)
}
mapmostUE.startClip(fn);
效果
show

stopClip()

退出剖分状态
代码示例
mapmostUE.stopClip()

addClipBox(options)

添加剖分体块
参数
名称参数枚举值是否必填描述
optionsObjectN/A剖分体参数对象
options.Locationfloat[]N/A剖分体的位置(经度,维度,高度)
options.rotationfloatN/A剖分体的旋转角(yaw,pitch,roll)
options.lengthObjectN/A剖分体的长
options.widthObjectN/A剖分体的宽
options.heightObjectN/A剖分体的高
代码示例
let options = {
"location": [120.675362,31.318861,20],
"rotation": [0, 180, 40],
"length": 200, // 单位米
"width": 100, // 单位米
"height": 80 // 单位米
}
mapmostUE.addClipBox(options);

removeClipBox()

删除剖分体块
代码示例
mapmostUE.removeClipBox();

setOnClipAreaChangedListener(function(callback){})

添加体剖分包围区域点的回调
参数
名称参数枚举值是否必填描述
function(val) {}FnN/A剖切体生成完成时回调函数
val.clipAreaPointsObject[]N/AN/A生成的剖切体后回调返回对象
val.clipAreaPoints[0].xfloatN/AN/A剖分体的经度
val.clipAreaPoints[0].yfloatN/AN/A剖分体的纬度
val.clipAreaPoints[0].zfloatN/AN/A剖分体的高度
val.clipAreaPoints[1].pitchfloatN/AN/A剖分体的俯仰角
val.clipAreaPoints[1].yawfloatN/AN/A剖分体的偏航角
val.clipAreaPoints[1].rollfloatN/AN/A剖分体的翻滚角
val.clipAreaPoints[2]floatN/AN/A剖分体的长
val.clipAreaPoints[3]floatN/AN/A剖分体的宽
val.clipAreaPoints[4]floatN/AN/A剖分体的高
代码示例
mapmostUE.setOnClipAreaChangedListener(function (val) {
console.log(val)
});

removeOnClipAreaChangedListener()

移除体剖分包围区域点的回调
代码示例
mapmostUE.removeOnClipAreaChangedListener();

视频融合

addVideoFusion(options)

添加视频融合
参数
名称参数枚举值是否必填描述
optionsObjectN/A视频融合参数
options.idStringN/A视频融合id
options.cameraPositionFloat[]N/A摄像头经度、纬度、高度
options.cameraRotationFloat[]N/A摄像头翻滚、俯仰、偏航
options.fovFloatN/A摄像头FOV
options.urlStringN/A摄像头视频流地址
options.videoSizeFloat[]N/A摄像头视频长宽
options.farFloat[]N/A视频融合距离
options.opacityFloatN/A视频融合透明度,默认值为1,范围[0,1]
options.brightnessFloatN/A视频融合亮度,默认值为2.0
options.featherFloatN/A视频融合羽化效果,默认值为0,范围[0,1]
options.mixColorFloat[]N/A视频融合混合颜色,默认值为[1,1,1],范围[0~1,0~1,0~1]
代码示例

mapmostUE.addVideoFusion({
id: '123',
cameraPosition: [120.67123250352988, 31.318632028379234, 103.08066236784234],
fov: 45.643803,
cameraRotation: [-3.2218, -78.405357, -7.411176],
url: "http://XXX/XXX.mp4",
videoSize: [1920, 1080],
far: 34650.398072,
opacity: 1,//透明度
brightness: 2.0,//亮度
feather: 0.8,//羽化效果
mixColor: [0.5, 0.5, 1]//混合颜色
});
效果
show

removeVideoFusion(id)

删除视频融合
参数
名称参数枚举值是否必填描述
idStringN/A视频融合id
代码示例
mapmostUE.removeVideoFusion('123')

updateVideoFusion(id, options)

更新视频融合参数
参数
名称参数枚举值是否必填描述
idStringN/A视频融合的id
optionsObjectN/A图层参数对象
options.farIntegerN/A投影距离
options.fovFloat相机fov
代码示例
 mapmostUE.updateVideoFusion('123', {
fov: 70,
far: 200000
})

setOnVideoFusionParamChangeListener(id, callback)

设置视频融合参数变化监听
参数
名称参数枚举值是否必填描述
idStringN/A视频融合id
callbackfunctionN/A参数变化回调函数
代码示例
function onVideoFusionParamChange(val) {
console.log(val)
}
mapmostUE.setOnVideoFusionParamChangeListener('123', onVideoFusionParamChange)

removeOnVideoFusionParamChangeListener(id)

移除视频融合参数变化监听
参数
名称参数枚举值是否必填描述
idStringN/A视频融合id
代码示例
mapmostUE.removeOnVideoFusionParamChangeListener('123')

startChangeVideoFusionLocationRotation(id)

进入视频融合调整状态
参数
名称参数枚举值是否必填描述
idStringN/A视频融合id
代码示例
mapmostUE.startChangeVideoFusionLocationRotation('123')

stopChangeVideoFusionLocationRotation(id)

退出视频融合调整状态
参数
名称参数枚举值是否必填描述
idStringN/A视频融合id
代码示例
mapmostUE.stopChangeVideoFusionLocationRotation('123')

setVidoeFusionFrustumVisibility(id, isVisible)

设置视频融合视锥体可见性
参数
名称参数枚举值是否必填描述
idStringN/A视频融合id
isVisibleboolN/A是否显示,true为显示,false为不显示
代码示例
mapmostUE.setVidoeFusionFrustumVisibility('123', true)

可视域分析

startViewshedAnalysis()

进入视域分析状态
代码示例
mapmostUE.startViewshedAnalysis()
效果
show

stopViewshedAnalysis()

退出视域分析状态
代码示例
mapmostUE.stopViewshedAnalysis()

addViewshedAnalysis(options)

添加视域分析
参数
名称参数枚举值是否必填描述
optionsObjectN/A视域分析参数
options.positionFloat[]N/A视域分析起始点经度、纬度、高度
options.rotationFloat[]N/A视域分析起始点翻滚、俯仰、偏航
options.horizontalDegreeFloatN/A视域分析水平方向夹角
options.verticalDegreeFloatN/A视域分析垂直方向夹角
options.viewDistanceFloatN/A视域分析距离,单位米
代码示例
mapmostUE.addViewshedAnalysis( {
"position": [120.67355346679688, 31.310224533081055, 66],
"rotation": [0, -13.70693, -137.395538],
"horizontalDegree": 60,
"verticalDegree": 45,
"viewDistance": 500 // 单位米
})

removeViewshedAnalysis()

删除视域分析
代码示例
mapmostUE.removeViewshedAnalysis()

通视分析

startSightLineAnalysis()

进入通视分析状态
代码示例
mapmostUE.startSightLineAnalysis();
效果
show

stopSightLineAnalysis()

退出通视分析状态
代码示例
mapmostUE.stopSightLineAnalysis();
效果
show

限高分析

startLimitHeightAnalysis()

进入限高分析状态
代码示例
mapmostUE.startLimitHeightAnalysis();
效果
show

stopLimitHeightAnalysis()

退出限高分析状态
代码示例
mapmostUE.stopLimitHeightAnalysis();
效果
show

addLimitHeightAnalysis(options)

添加限高分析
参数
名称参数枚举值是否必填描述
optionsObjectN/A限高分析参数对象
options.locationfloat[]N/A正方形中心点
options.degreefloatN/A沿竖直轴向旋转角度,从正东开始,往南为正,往北为负
options.sideLengthfloatN/A正方形边长,单位是米
代码示例
let options = {
"location": [120.74661415630074, 31.306798644341832, 20.17527841699568], // 正方形中心点
"degree": -10, // 沿竖直轴向旋转角度,从正东开始,往南为正,往北为负
"sideLength":500 // 正方形边长,单位是米
};

mapmostUE.addLimitHeightAnalysis(options);
效果
show

removeLimitHeightAnalysis()

删除限高分析
代码示例
mapmostUE.removeLimitHeightAnalysis();
效果
show