com.supermap.realspace.spatialanalyst
类 Skyline
- java.lang.Object
-
- com.supermap.data.InternalHandle
-
- com.supermap.data.InternalHandleDisposable
-
- com.supermap.realspace.spatialanalyst.Skyline
-
- 所有已实现的接口:
- IDisposable
public class Skyline extends com.supermap.data.InternalHandleDisposable天际线分析,设定观察者位置、观察方向、添加限高体区域对象,执行天际线分析,并在指定的场景中得到分析结果。- 作者:
- hup
-
-
方法概要
所有方法 实例方法 具体方法 限定符和类型 方法和说明 intAddLimitBody(GeoRegion3D region3d)添加指定的限高体区域对象,并返回指定对象的索引号。booleanbuild()执行天际线分析。voidclear()清除分析结果。voiddispose()释放对象占用的本地资源。ColorgetColor()获取天际线的颜色。doublegetDirection()获取相机与正北方向的夹角,单位:度。SkylineDisplayModegetDisplayStyle()获取天际线的显示模式。intgetInViewport()获取天际线分析进行的指定视口。intgetLimitBodyCount()获取分析中限高体区域的个数。GeoModelgetLimitModel(int index)获取指定位限高体区域位置的限高体对象。GeoRegion3DgetLimitRegion(int index)根据指定的索引号,获取对应的限高体区域对象。doublegetLineWidth()返回天际线线宽,单位为像素。booleangetLookAround()获取是否生成360°的天际线。voidgetObjsVisible(HashMap<String,int[]> value)获取天际线的可见对象ID集合。doublegetPitch()获取相机的俯仰角,注意:该俯仰指相机方向和水面方向的夹角,单位:度。AnalysisQualitygetQuality()获取天际线分析的质量。doublegetRadius()获取天际线与观察点之间的水平距离。GeoLine3DgetSkyline()返回天际线对象。GeoLinegetSkyline2D()获取天际线二维线对象。GeoModel3DgetSkylineSector()获取天际线与观察点构成的扇形面。GeoModel3DgetSkylineSector(double dSectorRadius)获取天际线与观察点构成的扇形面。GeoModel3DgetSkylineSectorBody(double dHeight)获取天际线与观察点构成的扇形面拉伸体。GeoModel3DgetSkylineSectorBody(double dHeight, double dBodyRadius)获取天际线与观察点构成的扇形面拉伸体。Point3DgetViewerPosition()获取观察者的位置。voidlocateToViewerPosition()将相机定位到观察者的位置。voidremoveAllLimitBodies()移除索引的限高体对象。booleanremoveLimitBody(int index)移除指定位置的限高体对象。voidsetColor(Color color)设置天际线的颜色。voidsetDirection(double direction)设置相机与正北方向的夹角,单位:度。voidsetDisplayStyle(SkylineDisplayMode displayMode)设置天际线的显示模式。voidsetInViewport(int value)设置天际线分析在指定视口进行。voidsetLimitBody(int index, GeoRegion3D region3d)设置限高体对象。voidsetLineWidth(double value)设置天际线线宽,单位为像素。voidsetLookAround(boolean value)设置是否生成360°的天际线。voidsetPitch(double pitch)设置相机的俯仰角,注意:该俯仰指相机方向和水面方向的夹角,单位:度。voidsetQuality(AnalysisQuality quality)设置天际线分析的质量。voidsetRadius(double value)设置天际线与观察点之间的水平距离。voidsetViewerPosition(Point3D position)设置观察者的位置。voidsetViewerVisible(boolean visible)设置观测点是否可见。
-
-
-
构造器详细资料
-
Skyline
public Skyline(Scene scene)
根据指定的Scene对象,构造一个新的Skyline对象。- 参数:
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()
获取相机的俯仰角,注意:该俯仰指相机方向和水面方向的夹角,单位:度。- 返回:
- 相机的俯仰角。
-
setPitch
public void setPitch(double pitch)
设置相机的俯仰角,注意:该俯仰指相机方向和水面方向的夹角,单位:度。- 参数:
pitch- 指定的俯仰角度值。
-
getColor
public Color getColor()
获取天际线的颜色。- 返回:
- 天际线的颜色。
-
setColor
public void setColor(Color color)
设置天际线的颜色。- 参数:
color- 指定的颜色。
-
getQuality
public AnalysisQuality getQuality()
获取天际线分析的质量。- 返回:
- 天际线分析的质量。
-
setQuality
public void setQuality(AnalysisQuality quality)
设置天际线分析的质量。- 参数:
quality- 指定的分析质量。
-
getDisplayStyle
public SkylineDisplayMode getDisplayStyle()
获取天际线的显示模式。- 返回:
- 天际线的显示模式。
-
setDisplayStyle
public void setDisplayStyle(SkylineDisplayMode displayMode)
设置天际线的显示模式。- 参数:
displayMode- 指定的显示模式。
-
build
public boolean build()
执行天际线分析。- 返回:
- 分析是否成功,成功返回true,否则返回fasle。
-
clear
public void clear()
清除分析结果。
-
getSkyline
public GeoLine3D getSkyline()
返回天际线对象。- 返回:
- 天际线对象。
-
locateToViewerPosition
public void locateToViewerPosition()
将相机定位到观察者的位置。
-
AddLimitBody
public int AddLimitBody(GeoRegion3D region3d)
添加指定的限高体区域对象,并返回指定对象的索引号。- 参数:
region3d- 指定的三维面对象作限高体。- 返回:
- 限高体区域对象的索引号。
-
getLimitBodyCount
public int getLimitBodyCount()
获取分析中限高体区域的个数。- 返回:
- 限高体区域的个数。
-
setLimitBody
public void setLimitBody(int index, GeoRegion3D region3d)设置限高体对象。- 参数:
index- 指定限高体对象的索引号。region3d- 指定的三维面作限高体对象。
-
getLimitRegion
public GeoRegion3D getLimitRegion(int index)
根据指定的索引号,获取对应的限高体区域对象。- 参数:
index- 指定的索引号。- 返回:
- 限高体区域对象。
-
removeLimitBody
public boolean removeLimitBody(int index)
移除指定位置的限高体对象。- 参数:
index- 待删除限高体的索引号。- 返回:
- 移除是否成功,成功返回true,否则返回false。
-
removeAllLimitBodies
public void removeAllLimitBodies()
移除索引的限高体对象。
-
getLimitModel
public GeoModel getLimitModel(int index)
获取指定位限高体区域位置的限高体对象。- 参数:
index- 指定的索引号。- 返回:
- 限高体对象。
-
setViewerVisible
public void setViewerVisible(boolean visible)
设置观测点是否可见。- 参数:
visible- 指定观测点的可见性。
-
getInViewport
public int getInViewport()
获取天际线分析进行的指定视口。- 返回:
- 指定视口索引。
-
setInViewport
public void setInViewport(int value)
设置天际线分析在指定视口进行。- 参数:
value- 指定视口索引。
-
getLookAround
public boolean getLookAround()
获取是否生成360°的天际线。- 返回:
- 是否生成360°的天际线。
-
setLookAround
public void setLookAround(boolean value)
设置是否生成360°的天际线。- 参数:
value- 是否生成360°的天际线。
-
getRadius
public double getRadius()
获取天际线与观察点之间的水平距离。- 返回:
- 水平距离。
-
setRadius
public void setRadius(double value)
设置天际线与观察点之间的水平距离。- 参数:
value- 指定的水平距离。
-
getSkyline2D
public GeoLine getSkyline2D()
获取天际线二维线对象。- 返回:
- 二维线。
-
getSkylineSector
public GeoModel3D getSkylineSector()
获取天际线与观察点构成的扇形面。- 返回:
- 扇形面。
-
getSkylineSector
public GeoModel3D getSkylineSector(double dSectorRadius)
获取天际线与观察点构成的扇形面。- 参数:
dSectorRadius- 天际线与观察点之间的水平距离。- 返回:
- 扇形面。
-
getSkylineSectorBody
public GeoModel3D getSkylineSectorBody(double dHeight)
获取天际线与观察点构成的扇形面拉伸体。- 参数:
dHeight- 扇形面拉伸体的高程值。- 返回:
- 扇形面拉伸体。
-
getSkylineSectorBody
public GeoModel3D getSkylineSectorBody(double dHeight, double dBodyRadius)
获取天际线与观察点构成的扇形面拉伸体。- 参数:
dHeight- 扇形面拉伸体的高程值。dBodyRadius- 天际线与观察点之间的水平距离。- 返回:
- 扇形面拉伸体。
-
getObjsVisible
public void getObjsVisible(HashMap<String,int[]> value)
获取天际线的可见对象ID集合。- 参数:
value- 可见对象ID集合。
-
getLineWidth
public double getLineWidth()
返回天际线线宽,单位为像素。- 返回:
- 天际线线宽。
- 抛出:
IllegalStateException- 当前对象已被释放。- 从以下版本开始:
- 11.2.0。
-
setLineWidth
public void setLineWidth(double value)
设置天际线线宽,单位为像素。- 参数:
value- 天际线线宽。- 抛出:
IllegalStateException- 当前对象已被释放。- 从以下版本开始:
- 11.2.0。
-
-
Copyright © 2021–2025 SuperMap. All rights reserved.