方法
缓冲分析,求指定 点线面geojson对象 按width半径的 缓冲面对象
参数名称 | 类型 | 默认值 | 描述信息 |
---|---|---|---|
geojson |
object |
geojson格式对象 |
|
width |
number |
缓冲半径,单位:米 |
|
steps |
number |
8
|
可选
缓冲步幅 |
返回值:
缓冲面对象,geojson格式
static mars3d.PolyUtil.bufferPoints(points, width, steps) → Array.<LngLatPoint>
util/PolyUtil.js 100
缓冲分析,坐标数组围合面,按width半径的 缓冲新的坐标
参数名称 | 类型 | 默认值 | 描述信息 |
---|---|---|---|
points |
Array.<LngLatPoint> | Array.<Cesium.Cartesian3> | Array |
坐标数组 |
|
width |
number |
缓冲半径,单位:米 |
|
steps |
number |
8
|
可选
缓冲步幅 |
返回值:
缓冲后的新坐标数组
求坐标数组的中心点
参数名称 | 类型 | 描述信息 |
---|---|---|
arr |
Array.<Array> | Array.<string> | Array.<LngLatPoint> | Array.<Cesium.Cartesian3> |
坐标数组 |
height |
number |
可选
指定中心点的高度值,默认为所有点的最高高度 |
返回值:
中心点坐标
按2个坐标点分段分步来计算,求路线的贴地线坐标(插值)
参数名称 | 类型 | 默认值 | 描述信息 | ||||||||||||||||||||||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
options |
object |
{}
|
可选
参数对象:
|
返回值:
异步计算完成的Promise,同callback
求路线的贴地线坐标(插值)
参数名称 | 类型 | 默认值 | 描述信息 | ||||||||||||||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
options |
object |
{}
|
可选
参数对象:
|
返回值:
异步计算完成的Promise, 等价于callback
求 多个点 的的贴地新坐标(不插值)
参数名称 | 类型 | 默认值 | 描述信息 | ||||||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
options |
object |
{}
|
可选
参数对象:
|
返回值:
异步计算完成的Promise, 等价于callback
体积计算
参数名称 | 类型 | 默认值 | 描述信息 | ||||||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
options |
object |
{}
|
可选
参数对象:
|
返回值:
异步计算完成的Promise
求 坐标点 的 外包围凸体面(简化只保留边界线坐标)
参数名称 | 类型 | 描述信息 | ||||||||
---|---|---|---|---|---|---|---|---|---|---|
coordinates |
Array.<Array> |
经纬度坐标数组,示例:[ [123.123456,32.654321,198.7], [111.123456,22.654321,50.7] ] |
||||||||
options |
object |
可选
参数
|
返回值:
经纬度坐标数组,示例:[ [123.123456,32.654321,198.7], [111.123456,22.654321,50.7] ]
格式化Rectangle矩形对象,返回经纬度值
参数名称 | 类型 | 默认值 | 描述信息 |
---|---|---|---|
rectangle |
Cesium.Rectangle |
矩形对象 |
|
digits |
number |
6
|
可选
经纬度保留的小数位数 |
返回值:
返回经纬度值,示例: { xmin: 73.16895, xmax: 134.86816, ymin: 12.2023, ymax: 54.11485 }
static mars3d.PolyUtil.getBezierCurve(positions, options) → Array.<Cesium.Cartesian3>
util/PolyUtil.js 1080
求贝塞尔曲线坐标
参数名称 | 类型 | 描述信息 | ||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
positions |
Array.<LngLatPoint> | Array.<Cesium.Cartesian3> | Array |
坐标数组 |
||||||||||||||||
options |
object |
可选
控制参数
|
返回值:
坐标数组
static mars3d.PolyUtil.getCenter(scene, toCartesian) → LngLatPoint|Cesium.Cartesian3
util/PolyUtil.js 573
提取 地球视野 的中心点坐标
参数名称 | 类型 | 描述信息 |
---|---|---|
scene |
Cesium.Scene |
三维地图场景对象,一般用map.scene或viewer.scene |
toCartesian |
boolean |
可选
是否返回 |
返回值:
边线上的坐标点数组Cesium.Cartesian3坐标
static mars3d.PolyUtil.getEllipseOuterPositions(options) → Array.<Cesium.Cartesian3>
util/PolyUtil.js 523
获取 圆(或椭圆)边线上的坐标点数组
参数名称 | 类型 | 描述信息 | ||||||||||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
options |
object |
参数对象:
|
返回值:
边线上的坐标点数组
计算geojson的边界范围
参数名称 | 类型 | 描述信息 |
---|---|---|
geojson |
object |
可选
Geojson对象 |
返回值:
返回经纬度值,示例: { xmin: 73.16895, xmax: 134.86816, ymin: 12.2023, ymax: 54.11485 }
求坐标数组的矩形范围内 按 splitNum网格数插值的 granularity值
参数名称 | 类型 | 默认值 | 描述信息 |
---|---|---|---|
positions |
Array.<LngLatPoint> | Array.<Cesium.Cartesian3> | Array |
坐标数组 |
|
splitNum |
number |
10
|
可选
splitNum网格数 |
返回值:
granularity值
在 指定bbox区域 内生成 指定数量(概略) 的网格坐标点, 目前常用于生成坐标点,测试数据量
参数名称 | 类型 | 默认值 | 描述信息 |
---|---|---|---|
bbox |
Array.<number> |
区域范围,如:[116.984788, 31.625909, 117.484068, 32.021504] |
|
count |
number |
数量(概略),返回坐标接近此数字 |
|
alt |
number |
0
|
可选
高度值 |
返回值:
坐标集合 ,如: {points:[LngLatPoint,LngLatPoint], size: 500 }
static mars3d.PolyUtil.getGridPointsByPoly(positions, step, alt) → Array.<LngLatPoint>|undefined
util/PolyUtil.js 1606
获取指定多边形范围内的插值Grid网格点集合
参数名称 | 类型 | 描述信息 |
---|---|---|
positions |
Array.<Cesium.Cartesian3> |
区域范围 |
step |
number |
间隔步长,单位:米 |
alt |
number |
可选
高度值 |
返回值:
坐标集合
static mars3d.PolyUtil.getHeightRange(positions, scene, options) → Promise.<object>
util/PolyUtil.js 338
计算面内最大、最小高度值
参数名称 | 类型 | 默认值 | 描述信息 | ||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
positions |
Array.<LngLatPoint> | Array.<Cesium.Cartesian3> | Array |
坐标数组 |
|||||||||||||||||
scene |
Cesium.Scene |
三维地图场景对象,一般用map.scene |
|||||||||||||||||
options |
object |
{}
|
可选
参数对象:
|
返回值:
异步计算完成的Promise,结果示例:{ maxHeight: 100, minHeight: 21 }
static mars3d.PolyUtil.getHeightRangeByDepth(positions, scene, options) → Promise.<object>
util/PolyUtil.js 1707
计算面内最大、最小高度值,并 使用离屏渲染深度图的方式加速计算范围内的任何可见的物体的高度
参数名称 | 类型 | 默认值 | 描述信息 | ||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
positions |
Array.<LngLatPoint> | Array.<Cesium.Cartesian3> | Array |
坐标数组 |
|||||||||||||
scene |
Cesium.Scene |
三维地图场景对象,一般用map.scene |
|||||||||||||
options |
object |
{}
|
可选
参数对象:
|
返回值:
异步计算完成的Promise,结果示例:{ maxHeight: 100, minHeight: 21 }
static mars3d.PolyUtil.getLinkedPointList(startPoint, endPoint, angularityFactor, numOfSingleLine) → Array.<Cesium.Cartesian3>
util/PolyUtil.js 1387
计算2点间的 曲线链路的点集(空中曲线)
参数名称 | 类型 | 描述信息 |
---|---|---|
startPoint |
Cesium.Cartesian3 | LngLatPoint |
开始节点 |
endPoint |
Cesium.Cartesian3 | LngLatPoint |
结束节点 |
angularityFactor |
number |
曲率 |
numOfSingleLine |
number |
点集数量 |
返回值:
曲线坐标数组
static mars3d.PolyUtil.getMapExtentPositions(scene) → Array.<Cesium.Cartesian3>
util/PolyUtil.js 630
提取 地球视野 的边界坐标
参数名称 | 类型 | 描述信息 |
---|---|---|
scene |
Cesium.Scene |
三维地图场景对象,一般用map.scene或viewer.scene |
返回值:
边线上的坐标点数组
static mars3d.PolyUtil.getOffsetLine(positions, offset) → Array.<Cesium.Cartesian3>
util/PolyUtil.js 1453
计算平行线
参数名称 | 类型 | 描述信息 |
---|---|---|
positions |
Array.<LngLatPoint> | Array.<Cesium.Cartesian3> | Array |
原始线的坐标数组 |
offset |
number |
偏移的距离(单位米),正负决定方向 |
返回值:
平行线坐标数组
static mars3d.PolyUtil.getPositionsRectVertex(positions, rotation) → Array.<Cesium.Cartesian3>
util/PolyUtil.js 888
获取坐标点数组的外接矩形的 4个顶点坐标点(数组)
参数名称 | 类型 | 默认值 | 描述信息 |
---|---|---|---|
positions |
Array.<LngLatPoint> | Array.<Cesium.Cartesian3> | Array |
坐标点数组 |
|
rotation |
number |
0
|
可选
旋转的角度,弧度值 |
返回值:
4个顶点坐标点
static mars3d.PolyUtil.getRectangle(positions, isFormat) → Cesium.Rectangle|object
util/PolyUtil.js 832
获取 坐标数组 的 矩形边界值
参数名称 | 类型 | 默认值 | 描述信息 |
---|---|---|---|
positions |
Array.<Cesium.Cartesian3> | Array.<string> | Array.<Array> | Array.<LngLatPoint> |
坐标数组 |
|
isFormat |
boolean |
false
|
可选
是否格式化,格式化时示例: { xmin: 73.16895, xmax: 134.86816, ymin: 12.2023, ymax: 54.11485 } |
返回值:
isFormat:true时,返回格式化对象,isFormat:false时返回Cesium.Rectangle对象
static mars3d.PolyUtil.getRectangleOuterPositions(options) → Array.<Cesium.Cartesian3>
util/PolyUtil.js 913
获取矩形(含旋转角度)的边线上的4个顶点坐标点数组
参数名称 | 类型 | 描述信息 | ||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
options |
object |
可选
参数对象:
|
返回值:
边线上的4个顶点坐标点数组
static mars3d.PolyUtil.getRectPositionsByCenter(options) → Array.<Cesium.Cartesian3>
util/PolyUtil.js 969
根据传入中心点、高宽或角度,计算矩形面的顶点坐标。
参数名称 | 类型 | 描述信息 | ||||||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
options |
object |
可选
参数对象:
|
返回值:
矩形面的顶点坐标数组
static mars3d.PolyUtil.interLine(positions, options) → Array.<Cesium.Cartesian3>
util/PolyUtil.js 1193
对路线进行按空间等比插值,高度:高度值按各点的高度等比计算 比如:用于航线的插值运算
参数名称 | 类型 | 默认值 | 描述信息 | |||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|
positions |
Array.<LngLatPoint> | Array.<Cesium.Cartesian3> | Array |
坐标数组 |
||||||||||
options |
object |
{}
|
可选
参数对象:
|
返回值:
插值后的坐标对象
面内进行贴地(或贴模型)插值, 返回三角网等计算结果
参数名称 | 类型 | 默认值 | 描述信息 | ||||||||||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
options |
object |
{}
|
可选
参数对象:
|
返回值:
异步计算完成的Promise
对面内进行插值,并 使用离屏渲染深度图的方式加速计算范围内的任何可见的物体的高度
注意事项:
- 需要地形和模型等需要分析区域对应的数据加载完成后才能使用该方法。
- 如果有遮挡了分析区域的任何矢量对象,都需要分析前隐藏下,分析结束后再改回显示。
参数名称 | 类型 | 默认值 | 描述信息 | ||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
options |
object |
{}
|
可选
参数对象:
|
返回值:
计算完成的相关数据
对路线进行平面等比插值,高度:指定的固定height值 或 按贴地高度。
参数名称 | 类型 | 默认值 | 描述信息 | ||||||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
options |
object |
{}
|
可选
参数对象:
|
返回值:
插值后的路线坐标数组
对路线内进行插值,并 使用离屏渲染深度图的方式加速计算范围内的任何可见的物体的高度
注意事项:
- 需要地形和模型等需要分析区域对应的数据加载完成后才能使用该方法。
- 如果有遮挡了分析区域的任何矢量对象,都需要分析前隐藏下,分析结束后再改回显示。
参数名称 | 类型 | 默认值 | 描述信息 | ||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
options |
object |
{}
|
可选
参数对象:
|
返回值:
计算完成的相关数据
判断点是否 多边形内
参数名称 | 类型 | 描述信息 |
---|---|---|
position |
Cesium.Cartesian3 | LngLatPoint |
需要判断的点 |
positions |
Array.<Cesium.Cartesian3> | Array.<LngLatPoint> |
多边形的边界点 |
返回值:
是否在多边形内
抽析简化点数量
参数名称 | 类型 | 描述信息 | ||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
positions |
Array.<LngLatPoint> | Array.<Cesium.Cartesian3> | Array |
坐标数组 |
||||||||||||||||
options |
object |
可选
控制参数
|
返回值:
坐标数组
static mars3d.PolyUtil.sliceByMaxDistance(positions, maxDistance, options) → Array.<Cesium.Cartesian3>|Cesium.Cartesian3
util/PolyUtil.js 1492
截取路线指定最大长度的新路线, 在最后一个点往前截取maxDistance长度。 应用场景: 航迹的 “尾巴线” 的运算
参数名称 | 类型 | 默认值 | 描述信息 | ||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
positions |
Array.<LngLatPoint> | Array.<Cesium.Cartesian3> | Array |
路线坐标 |
|||||||||
maxDistance |
number |
最大的截取长度 |
|||||||||
options |
object |
{}
|
可选
参数对象:
|
返回值:
指定长度的坐标数组 ,options.point为true时,只返回数组的第1个点。
根据 基准面高度 重新计算填挖方体积
参数名称 | 类型 | 描述信息 |
---|---|---|
resultInter |
VolumeResult |
插值完的对象 |
cutHeight |
number |
基准面高度 |
返回值:
重新计算填挖方体积后的对象
根据 minHeight最低底面高度 计算(或重新计算)填挖方体积
参数名称 | 类型 | 描述信息 |
---|---|---|
resultInter |
interPolygonResult |
插值完的对象 |
返回值:
计算完成的填挖方体积
定义的类型
异步分段分步计算贴地距离中,每计算完成2个点之间的距离后 的回调方法
参数名称 | 类型 | 描述信息 |
---|---|---|
arrStepPoints |
Array.<Array> |
二维数组坐标集合,各分段2点之间的贴地点数组的集合 |
异步分段分步计算贴地距离中,每计算完成2个点之间的距离后 的回调方法
参数名称 | 类型 | 描述信息 |
---|---|---|
raisedPositions |
Array.<Cesium.Cartesian3> |
当前2个点之间的 贴地坐标数组 |
noHeight |
boolean |
是否计算贴地高度失败,true时标识计算失败了 |
index |
number |
坐标数组的index顺序 |
面内进行贴地(或贴模型)插值, 返回三角网等计算结果 的回调方法
参数名称 | 类型 | 默认值 | 描述信息 | |||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
options |
object |
{}
|
可选
参数对象:
|
面内进行贴地(或贴模型)插值, 返回三角网等计算结果 的回调方法
参数名称 | 类型 | 默认值 | 描述信息 | |||||||||||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
options |
object |
{}
|
可选
参数对象:
|