com.supermap.realspace.spatialanalyst
类 Viewshed3D
- java.lang.Object
-
- com.supermap.data.InternalHandle
-
- com.supermap.data.InternalHandleDisposable
-
- com.supermap.realspace.spatialanalyst.Viewshed3D
-
- 所有已实现的接口:
- IDisposable
public class Viewshed3D extends com.supermap.data.InternalHandleDisposable
可视域分析,设置观察点、目标的位置,水平、垂直视角范围,建立可视区域分析并在指定的场景中显示分析结果。该分析针对三维场景模型分析。
- 作者:
- hup
-
-
构造器概要
构造器 构造器和说明 Viewshed3D(Scene scene)
根据指定的Scene对象,构造一个新的Viewshed3D对象。
-
方法概要
所有方法 实例方法 具体方法 限定符和类型 方法和说明 boolean
build()
执行可视域分析。void
clear()
清除分析结果。void
dispose()
释放对象占用的本地资源。ArrayList<Point3D>
getBarrierPoints()
获取障碍点。double
getDirection()
获取当前相机的方向与正北方向的夹角,单位:度。double
getDistance()
获取可视距离,单位:米。GeoModel3D
getFrustumBody()
获取整个视锥闭合体。Color
getHiddenAreaColor()
获取不可视区域的颜色。GeoModel3D
getHiddenBody()
获取隐藏区域闭合体。Color
getHintLineColor()
获取可视域分析的提示线颜色。double
getHorizontalFov()
获取可视域分析的水平视角范围。int
getInViewport()
获取可视域分析指定的视口。void
getObjsVisible(HashMap<String,int[]> value)
获取可视域的可见对象ID集合。double
getPitch()
获取当前分析的相机俯仰角。AnalysisQuality
getQuality()
获取分析的质量级别。double
getVerticalFov()
获取可视域分析垂直视角范围。Point3D
getViewerPosition()
获取观察点的位置。Color
getVisibleAreaColor()
获取可视区域的颜色。GeoModel3D
getVisibleBody()
获取可视区域闭合体。GeoModel3D
getVisibleInterface()
获取可见区域与隐藏区域交界面。void
setDirection(double direction)
设置当前相机的方向与正北方向的夹角,单位:度。void
setDistance(double distance)
设置可视距离,单位:米。void
setDistDirByPoint(Point3D value)
根据目标点位置,计算观察者点位和目标点的距离和方向。void
setHiddenAreaColor(Color color)
设置不可视区域的颜色。void
setHintLineColor(Color color)
设置可视域分析的提示线颜色。void
setHorizontalFov(double horizontalFov)
设置可视域分析的水平视角范围。void
setInViewport(int value)
设置可视域分析在指定视口进行。void
setPitch(double pitch)
设置当前分析的相机俯仰角。void
setQuality(AnalysisQuality quality)
设置分析的质量级别。void
setVerticalFov(double verticalFov)
设置可视域分析垂直视角范围。void
setViewerPosition(Point3D position)
设置观察点的位置。void
setVisibleAreaColor(Color color)
设置可视区域的颜色。
-
-
-
构造器详细资料
-
Viewshed3D
public Viewshed3D(Scene scene)
根据指定的Scene对象,构造一个新的Viewshed3D对象。- 参数:
scene
- 指定的场景对象。
-
-
方法详细资料
-
dispose
public void dispose()
释放对象占用的本地资源。
-
getViewerPosition
public Point3D getViewerPosition()
获取观察点的位置。- 返回:
- 观察点的位置。
-
setViewerPosition
public void setViewerPosition(Point3D position)
设置观察点的位置。- 参数:
position
- 指定观察点的位置。
-
getDirection
public double getDirection()
获取当前相机的方向与正北方向的夹角,单位:度。- 返回:
- 当前相机的方向与正北方向的夹角。
-
setDirection
public void setDirection(double direction)
设置当前相机的方向与正北方向的夹角,单位:度。- 参数:
direction
- 指定的角度。
-
getPitch
public double getPitch()
获取当前分析的相机俯仰角。注意:该俯仰角指当相机方向与地面平行的时候是0度,与相机本身参数俯仰不一样。
- 返回:
- 当前分析的相机俯仰角。
-
setPitch
public void setPitch(double pitch)
设置当前分析的相机俯仰角。注意:该俯仰角指当相机方向与地面平行的时候是0度,与相机本身参数俯仰不一样。
- 参数:
pitch
- 指定的相机俯仰角数值。
-
getHorizontalFov
public double getHorizontalFov()
获取可视域分析的水平视角范围。单位:度。- 返回:
- 可视域分析的水平视角范围。
-
setHorizontalFov
public void setHorizontalFov(double horizontalFov)
设置可视域分析的水平视角范围。单位:度。- 参数:
horizontalFov
- 指定可视域分析的水平视角范围。
-
getVerticalFov
public double getVerticalFov()
获取可视域分析垂直视角范围。单位:度。- 返回:
- 可视域分析垂直视角范围。
-
setVerticalFov
public void setVerticalFov(double verticalFov)
设置可视域分析垂直视角范围。单位:度。- 参数:
verticalFov
- 指定可视域分析垂直视角范围。
-
getDistance
public double getDistance()
获取可视距离,单位:米。- 返回:
- 可视距离。
-
setDistance
public void setDistance(double distance)
设置可视距离,单位:米。- 参数:
distance
- 指定的可视距离。
-
getVisibleAreaColor
public Color getVisibleAreaColor()
获取可视区域的颜色。- 返回:
- 可视区域的颜色。
-
setVisibleAreaColor
public void setVisibleAreaColor(Color color)
设置可视区域的颜色。- 参数:
color
- 指定可视区域的颜色。
-
getHiddenAreaColor
public Color getHiddenAreaColor()
获取不可视区域的颜色。- 返回:
- 不可视区域的颜色。
-
setHiddenAreaColor
public void setHiddenAreaColor(Color color)
设置不可视区域的颜色。- 参数:
color
- 指定不可视区域的颜色。
-
getHintLineColor
public Color getHintLineColor()
获取可视域分析的提示线颜色。- 返回:
- 可视域分析的提示线颜色。
-
setHintLineColor
public void setHintLineColor(Color color)
设置可视域分析的提示线颜色。- 参数:
color
- 指定可视域分析的提示线颜色。
-
getQuality
public AnalysisQuality getQuality()
获取分析的质量级别。- 返回:
- 分析的质量级别。
-
setQuality
public void setQuality(AnalysisQuality quality)
设置分析的质量级别。- 参数:
quality
- 指定分析的质量级别。
-
setDistDirByPoint
public void setDistDirByPoint(Point3D value)
根据目标点位置,计算观察者点位和目标点的距离和方向。- 参数:
value
- 指定的目标点位置。
-
getInViewport
public int getInViewport()
获取可视域分析指定的视口。- 返回:
- 指定视口索引。
-
setInViewport
public void setInViewport(int value)
设置可视域分析在指定视口进行。- 参数:
value
- 指定视口索引。
-
getObjsVisible
public void getObjsVisible(HashMap<String,int[]> value)
获取可视域的可见对象ID集合。- 参数:
value
- 可见对象ID集合。
-
getVisibleBody
public GeoModel3D getVisibleBody()
获取可视区域闭合体。- 返回:
- 可视区域闭合体。
-
getFrustumBody
public GeoModel3D getFrustumBody()
获取整个视锥闭合体。- 返回:
- 视锥闭合体。
-
getHiddenBody
public GeoModel3D getHiddenBody()
获取隐藏区域闭合体。- 返回:
- 隐藏区域闭合体。
-
getVisibleInterface
public GeoModel3D getVisibleInterface()
获取可见区域与隐藏区域交界面。- 返回:
- 可见区域与隐藏区域交界面。
-
build
public boolean build()
执行可视域分析。- 返回:
- 执行是否成功,成功返回true,否则返回false。
-
clear
public void clear()
清除分析结果。
-
-
Copyright © 2021–2024 SuperMap. All rights reserved.