geosolution/view~ViewHelper()

view相关分析类

Summary

Methods:
corridor

视廊分析

frustumIntersection

可视域视锥体相交,常用于判断相机是否存在可能相交的部分,结合ViewshedSet.intersectOnly做更精准的分析

getContourLines

获取轮廓线

getFrustum

获取可视域或视频投放视景体线几何体

getFrustumMesh

可视域或视频投放计算视锥体3维模型

getRotationFromTarget

通过视点和目标点计算旋转角度

getViewshedArea

获取可视域面积

visibility

获取当前相机姿态下该点是否可见

visibleFrequency

获取当前相机姿态下该点是否可见的频率

Constructor

new ViewHelper()

Methods

static corridor(mesh, viewlist) → {Object}

视廊分析

Parameters:
Name Type Description
mesh Mesh | Stretch

建筑建模

viewlist Viewshed

可视域对象

Returns:
Object -

{invisibleMesh,visibleMesh} 分析结果为建筑模型在该可视域下可见和不可见部分

static frustumIntersection(views) → {Mesh|undefined}

可视域视锥体相交,常用于判断相机是否存在可能相交的部分,结合ViewshedSet.intersectOnly做更精准的分析

Parameters:
Name Type Description
views Array.<Viewshed>
Returns:
Mesh | undefined

static getContourLines(viewshed) → {Array.<Array.<Number>>}

获取轮廓线

Parameters:
Name Type Description
viewshed Viewshed
Returns:
Array.<Array.<Number>> -

可视域线结构体

static getFrustum(view) → {Object}

获取可视域或视频投放视景体线几何体

Parameters:
Name Type Description
view Viewshed | ImageProjector
Returns:
Object

static getFrustumMesh(view)

可视域或视频投放计算视锥体3维模型

Parameters:
Name Type Description
view Viewshed

static getRotationFromTarget(origin, target) → {Array.<Number>}

通过视点和目标点计算旋转角度

Parameters:
Name Type Description
origin Coordinate

视点

target Coordinate

目标点

Returns:
Array.<Number> -

姿态角

static getViewshedArea(viewshed, map, options) → {Object}

获取可视域面积

Parameters:
Name Type Description
viewshed Viewshed

可视域对象

map Map

地图对象

options Object
Name Type Description
precision Number

精度,默认值为5,精度越高,面积计算越准确,提取的范围也更精细,耗时也更久。

needTriangles Boolean

是否提取可视及不可视范围,关闭时不提取visibleTriangles和hideTriangles(参考返回结果)。

Returns:
Object -

返回结果,属性visibleArea为可视面积,hideArea为不可视面积,visibleTriangles为可视范围,hideTriangles为不可视范围。
可视和不可视范围的数据结构为[[p0, p1, p2], [p3, p4, p5], ......],其中[p0, p1, p2]和[p3, p4, p5]分别为一个三角形,p0、p1、p2...等均为三角形上的一个点的坐标。

static visibility(coord, viewlist) → {Boolean}

获取当前相机姿态下该点是否可见

Parameters:
Name Type Description
coord Coordinate
viewlist Viewshed
Returns:
Boolean -

点位可见的状态

static visibleFrequency(coord, viewlist) → {Number}

获取当前相机姿态下该点是否可见的频率

Parameters:
Name Type Description
coord Coordinate
viewlist Array.<Viewshed>
Returns:
Number -

点位可见的数量