com.supermap.data
类 GeoLine
- java.lang.Object
-
- com.supermap.data.Geometry
-
- com.supermap.data.GeoLine
-
-
构造器概要
构造器 构造器和说明 GeoLine()构造一个新的 GeoLine 对象。GeoLine(GeoLine geoLine)用指定的 GeoLine 对象构造一个与其完全相同的新对象。GeoLine(Point2Ds points)根据指定的参数来构造一个 GeoLine 的新对象。
-
方法概要
所有方法 实例方法 具体方法 限定符和类型 方法和说明 intaddPart(Point2Ds points)向此线几何对象追加一个子对象。GeoLineclone()返回当前 GeoLine 对象的一个拷贝。voiddispose()释放该对象所占用的资源。Point2DfindPointOnLineByDistance(double distance)在线上以指定的距离找点,查找的起始点为线的起始点。doublegetLength()返回线几何对象的长度,其值为各个子对象长度之和。Point2DsgetPart(int index)返回此线几何对象中指定序号的子对象,以有序点集合的方式返回该子对象。intgetPartCount()返回线几何对象的子对象个数。booleaninsertPart(int index, Point2Ds points)往此线几何对象中的指定位置插入一个子对象。booleanisEmpty()返回线几何对象是否为空,即其子对象个数是否为零。booleanremovePart(int index)删除此线几何对象中的指定序号的子对象。voidrotate(Point2D basePoint, double angle)旋转几何对象booleansetPart(int index, Point2Ds points)修改此线几何对象指定序号的子对象,即用新的有序点集合来替换原子对象的有序点集合。
-
-
-
构造器详细资料
-
GeoLine
public GeoLine()
构造一个新的 GeoLine 对象。
-
GeoLine
public GeoLine(GeoLine geoLine)
用指定的 GeoLine 对象构造一个与其完全相同的新对象。- 参数:
geoLine- 指定的 GeoLine 对象。- 抛出:
ObjectDisposedException- 如果作为拷贝源的线对象已调用dispose()方法。
-
GeoLine
public GeoLine(Point2Ds points)
根据指定的参数来构造一个 GeoLine 的新对象。- 参数:
points- 构成线的有序点集合。- 抛出:
java.lang.IllegalArgumentException- 如果 points 中的点的总数小于2。
-
-
方法详细资料
-
isEmpty
public boolean isEmpty()
返回线几何对象是否为空,即其子对象个数是否为零。
-
clone
public GeoLine clone()
返回当前 GeoLine 对象的一个拷贝。
-
getLength
public double getLength()
返回线几何对象的长度,其值为各个子对象长度之和。- 返回:
- 线几何对象的长度。
- Default:
- 默认值为 0.0。
-
getPartCount
public int getPartCount()
返回线几何对象的子对象个数。 线几何对象清空后,其子对象的个数为0。- 返回:
- 该线几何对象的子对象个数。
- Default:
- 默认值为 0。
-
addPart
public int addPart(Point2Ds points)
向此线几何对象追加一个子对象。- 参数:
points- 一个有序点集合。- 返回:
- 成功返回添加的子对象的序号。
- 抛出:
java.lang.IllegalArgumentException- 如果 points 中的点的个数小于2。
-
removePart
public boolean removePart(int index)
删除此线几何对象中的指定序号的子对象。- 参数:
index- int 指定的子对象的序号。- 返回:
- 成功则返回 true,否则返回 false。
- 抛出:
java.lang.IndexOutOfBoundsException- 如果序号大于等于子对象的个数或序号小于0。
-
findPointOnLineByDistance
public Point2D findPointOnLineByDistance(double distance)
在线上以指定的距离找点,查找的起始点为线的起始点。- 当 distance 大于 Length 时,返回线最后一个子对象的终点。
- 当 distance=0 时,返回线几何对象的起始点;
- 当线几何对象具有多个子对象的时候,按照子对象的序号依次查找,例如一个线几何对象有三个子对象组成,如下图所示。
箭头表示了各子对象的方向,P0,P1 和 P2 分别为其起点,其长度分别为 L1,L2 和 L3,dl 表示指定的距离,p 表示某一个子对象上 dl 距离的终止点,P3 为 L3 的终点。
当distance=0时,返回 P0 点;
当distance>L1+L2+L3时,返回 P3 点;
当distance=L1+dL时,返回 P 点。
- 参数:
distance- 要找点的距离- 返回:
- 查找成功返回要找的点,否则返回 null。
- 抛出:
java.lang.IllegalArgumentException- 如果传入的距离为负值。
-
getPart
public Point2Ds getPart(int index)
返回此线几何对象中指定序号的子对象,以有序点集合的方式返回该子对象。- 参数:
index- 子对象的序号。- 返回:
- 成功返回
Point2Ds对象,失败返回空值。
-
insertPart
public boolean insertPart(int index, Point2Ds points)往此线几何对象中的指定位置插入一个子对象。成功则返回 true,否则返回 false。- 参数:
index- 插入的位置。points- 插入的有序点集合。- 返回:
- 成功则返回 true,否则返回 false。
- 抛出:
java.lang.IndexOutOfBoundsException- 如果 index 大于该线几何对象的子对象总数或 index 为负。java.lang.IllegalArgumentException- 如果 points 中的点的总数小于2。
-
setPart
public boolean setPart(int index, Point2Ds points)修改此线几何对象指定序号的子对象,即用新的有序点集合来替换原子对象的有序点集合。- 参数:
index- 被修改的子对象的序号。points- 有序点的集合。- 返回:
- 成功返回 true,否则返回 false。
- 抛出:
java.lang.IndexOutOfBoundsException- 如果 index 不小于子对象的个数或 index 为负。java.lang.IllegalArgumentException- 如果 points 中的点的个数小于2。
-
-