com.supermap.data
类 GeoLine3D
- java.lang.Object
-
- com.supermap.data.InternalHandle
-
- com.supermap.data.InternalHandleDisposable
-
- com.supermap.data.Geometry
-
- com.supermap.data.Geometry3D
-
- com.supermap.data.GeoLine3D
-
- 所有已实现的接口:
- IDisposable
public class GeoLine3D extends Geometry3D
三维线几何对象类。该类继承自
Geometry3D
类。三维线几何对象是由三维点串构成的线对象,这些点可以不在同一平面上。线对象由一个或多个部分组成,每个部分称为线对象的一个子对象。每个子对象用一个三维点对象集合来表示。通过该类可以对子对象进行添加、删除和修改等操作。
该类仅在 Windows、Linux 平台版本中支持。
注意:该类的对象调用
getGeoModel()
方法无效,即返回值为null。
-
-
构造器概要
构造器 构造器和说明 GeoLine3D()
构造一个新的 GeoLine3D 对象。GeoLine3D(GeoLine3D geoLine3D)
根据指定的GeoLine3D
对象构造一个与其完全相同的新对象。GeoLine3D(Point3Ds points)
根据指定的参数来构造一个 GeoLine3D 的新对象。
-
方法概要
所有方法 实例方法 具体方法 限定符和类型 方法和说明 int
addPart(Point3Ds points)
向三维线几何对象追加一个子对象。GeoLine3D
clone()
克隆一个Geometry对象。GeoRegion3D
convertToRegion()
将该三维线几何对象转换为三维面几何对象,成功返回面几何对象。void
dispose()
释放该对象所占用的资源。double
getLength()
返回三维线几何对象的长度,其长度为各个子对象长度之和,单位为米。Point3Ds
getPart(int index)
返回三维线几何对象中指定序号的子对象的三维点对象集合。int
getPartCount()
返回三维线对象的子对象个数。int
indexOf(Point3Ds part)
返回指定三维点串所表示的子对象在此三维线几何对象中的序号。boolean
insertPart(int index, Point3Ds points)
用于往三维线几何对象中的指定位置插入一个子对象,成功则返回 true,否则返回 false。boolean
isEmpty()
判断几何对象是否为空值,不同的几何对象的是否为空的条件各异,请参见各具体几何类型的该方法。boolean
removePart(int index)
删除三维线几何对象中指定序号的子对象。void
rotateAxis(Point3D startPoint, Point3D endPoint, double dAngle, boolean isLonLat)
实现三维线绕指定线段旋转。void
setEmpty()
清空几何对象中的空间数据,但几何对象的标识符和几何风格保持不变。boolean
setPart(int index, Point3Ds points)
修改三维线几何对象指定序号的子对象,即用新的三维点串来替换原来子对象的三维点串。boolean
subDivision(double interval, boolean lonlat)
插值细分,对三维线几何对象根据间距插值节点。-
从类继承的方法 com.supermap.data.Geometry3D
convertToGeoModel3D, convertToGeoModel3D, convertToGeoModel3D, getBoundingBox, getGeoModel, getInnerPoint3D, getOrientedBoundingBox, getPosition, getRotationX, getRotationY, getRotationZ, getScaleX, getScaleY, getScaleZ, getStyle3D, getVolume, offset, setPosition, setRotationX, setRotationY, setRotationZ, setScaleX, setScaleY, setScaleZ, setStyle3D
-
从类继承的方法 com.supermap.data.Geometry
addCustomGeometryCreatedListener, fromXML, getBounds, getID, getInnerPoint, getStyle, getType, getVariantID, hitTest, mirror, offset, removeCustomGeometryCreatedListener, resize, rotate, setBounds, setID, setStyle, toXML
-
-
-
-
构造器详细资料
-
GeoLine3D
public GeoLine3D()
构造一个新的 GeoLine3D 对象。
-
GeoLine3D
public GeoLine3D(Point3Ds points)
根据指定的参数来构造一个 GeoLine3D 的新对象。- 参数:
points
- 指定的三维点对象。
-
-
方法详细资料
-
rotateAxis
public void rotateAxis(Point3D startPoint, Point3D endPoint, double dAngle, boolean isLonLat)
实现三维线绕指定线段旋转。可模拟风场下输电线的摆动效果。- 参数:
startPoint
- 旋转轴的起始点。endPoint
- 旋转轴的终止点。dAngle
- 线段绕旋转轴的旋转角度。isLonLat
- 输入数据是否为经纬度。- 从以下版本开始:
- 11.2.0。
-
dispose
public void dispose()
释放该对象所占用的资源。当调用该方法之后,此对象不再可用。- 指定者:
dispose
在接口中IDisposable
- 指定者:
dispose
在类中Geometry
-
getLength
public double getLength()
返回三维线几何对象的长度,其长度为各个子对象长度之和,单位为米。- 返回:
- 三维线几何对象的长度。单位为米。
- 默认值:
- 默认值为 0,单位为米。
-
getPartCount
public int getPartCount()
返回三维线对象的子对象个数。- 返回:
- 三维线几何对象的子对象个数。
- 默认值:
- 默认值为 0。
-
addPart
public int addPart(Point3Ds points)
向三维线几何对象追加一个子对象。- 参数:
points
- 子对象的点串。- 返回:
- 如果成功,返回添加子对象的序号。
-
removePart
public boolean removePart(int index)
删除三维线几何对象中指定序号的子对象。- 参数:
index
- 指定的子对象索引号。- 返回:
- 删除成功,返回 true,否则返回 false。
-
getPart
public Point3Ds getPart(int index)
返回三维线几何对象中指定序号的子对象的三维点对象集合。当三维线对象是简单线对象时,如果传入参数0,得到的是此线对象的节点的集合。
- 参数:
index
- 子对象的索引。当此三维线对象是复杂线对象时,子对象的索引从0开始。- 返回:
- 成功返回
Point3Ds
对象,失败返回空值。
-
insertPart
public boolean insertPart(int index, Point3Ds points)
用于往三维线几何对象中的指定位置插入一个子对象,成功则返回 true,否则返回 false。- 参数:
index
- 插入的位置,缺省则从1开始。points
- 待插入的子对象的三维点串。- 返回:
- 插入成功返回 true,否则返回 false。
-
setPart
public boolean setPart(int index, Point3Ds points)
修改三维线几何对象指定序号的子对象,即用新的三维点串来替换原来子对象的三维点串。- 参数:
index
- 被替换的子对象的索引号(大于零)。points
- 替换子对象的三维点串。- 返回:
- 成功返回 true,否则返回 false。
-
indexOf
public int indexOf(Point3Ds part)
返回指定三维点串所表示的子对象在此三维线几何对象中的序号。- 参数:
part
- 三维点串。- 返回:
- 指定三维点串所表示的子对象在此三维线几何对象中的序号,如果该子对象不存在,返回-1。
-
convertToRegion
public GeoRegion3D convertToRegion()
将该三维线几何对象转换为三维面几何对象,成功返回面几何对象。对于没有封闭的三维线几何对象,转换为三维面几何对象时,会把首尾自动连起来。
- 返回:
- GeoRegion3D 转换成功返回三维面几何对象。
- 抛出:
UnsupportedOperationException
- 当此GeoLine3D
对象实例的某个子对象的点数少于3时。
-
isEmpty
public boolean isEmpty()
从类复制的说明:Geometry
判断几何对象是否为空值,不同的几何对象的是否为空的条件各异,请参见各具体几何类型的该方法。- 覆盖:
isEmpty
在类中Geometry
- 返回:
- 一个布尔值指定几何对象是否为空。
- 另请参阅:
Geometry.offset(double, double)
-
setEmpty
public void setEmpty()
从类复制的说明:Geometry
清空几何对象中的空间数据,但几何对象的标识符和几何风格保持不变。
-
subDivision
public boolean subDivision(double interval, boolean lonlat)
插值细分,对三维线几何对象根据间距插值节点。插值成功后,即三维线几何对象的子对象及子对象个数将被修改。- 参数:
interval
- 插值的间隔,一个Double值。lonlat
- 是否是经纬度。true表示地理坐标系,间隔单位是度;false表示投影或平面坐标系,间隔单位是米。- 返回:
- 返回true表示插值成功,false表示插值失败。
- 抛出:
IllegalStateException
- 当前对象已被释放。- 从以下版本开始:
- 11.2.0。
-
-
Copyright © 2021–2024 SuperMap. All rights reserved.