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对象。
-
方法概要
所有方法 实例方法 具体方法 限定符和类型 方法和说明 booleanbuild()执行可视域分析。voidclear()清除分析结果。voiddispose()释放对象占用的本地资源。ArrayList<Point3D>getBarrierPoints()获取障碍点。doublegetDirection()获取当前相机的方向与正北方向的夹角,单位:度。doublegetDistance()获取可视距离,单位:米。GeoModel3DgetFrustumBody()获取整个视锥闭合体。ColorgetHiddenAreaColor()获取不可视区域的颜色。GeoModel3DgetHiddenBody()获取隐藏区域闭合体。ColorgetHintLineColor()获取可视域分析的提示线颜色。doublegetHorizontalFov()获取可视域分析的水平视角范围。intgetInViewport()获取可视域分析指定的视口。voidgetObjsVisible(HashMap<String,int[]> value)获取可视域的可见对象ID集合。doublegetPitch()获取当前分析的相机俯仰角。AnalysisQualitygetQuality()获取分析的质量级别。doublegetVerticalFov()获取可视域分析垂直视角范围。Point3DgetViewerPosition()获取观察点的位置。ColorgetVisibleAreaColor()获取可视区域的颜色。GeoModel3DgetVisibleBody()获取可视区域闭合体。GeoModel3DgetVisibleInterface()获取可见区域与隐藏区域交界面。voidsetDirection(double direction)设置当前相机的方向与正北方向的夹角,单位:度。voidsetDistance(double distance)设置可视距离,单位:米。voidsetDistDirByPoint(Point3D value)根据目标点位置,计算观察者点位和目标点的距离和方向。voidsetHiddenAreaColor(Color color)设置不可视区域的颜色。voidsetHintLineColor(Color color)设置可视域分析的提示线颜色。voidsetHorizontalFov(double horizontalFov)设置可视域分析的水平视角范围。voidsetInViewport(int value)设置可视域分析在指定视口进行。voidsetPitch(double pitch)设置当前分析的相机俯仰角。voidsetQuality(AnalysisQuality quality)设置分析的质量级别。voidsetVerticalFov(double verticalFov)设置可视域分析垂直视角范围。voidsetViewerPosition(Point3D position)设置观察点的位置。voidsetVisibleAreaColor(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–2025 SuperMap. All rights reserved.