com.supermap.data

类 GeoLine3D

  • 所有已实现的接口:
    IDisposable


    public class GeoLine3D
    extends Geometry3D
    三维线几何对象类。

    该类继承自 Geometry3D 类。三维线几何对象是由三维点串构成的线对象,这些点可以不在同一平面上。

    线对象由一个或多个部分组成,每个部分称为线对象的一个子对象。每个子对象用一个三维点对象集合来表示。通过该类可以对子对象进行添加、删除和修改等操作。

    该类仅在 Windows、Linux 平台版本中支持。

    注意:该类的对象调用 getGeoModel() 方法无效,即返回值为null。

    • 构造器详细资料

      • GeoLine3D

        public GeoLine3D()
        构造一个新的 GeoLine3D 对象。
      • GeoLine3D

        public GeoLine3D(Point3Ds points)
        根据指定的参数来构造一个 GeoLine3D 的新对象。
        参数:
        points - 指定的三维点对象。
      • GeoLine3D

        public GeoLine3D(GeoLine3D geoLine3D)
        根据指定的 GeoLine3D 对象构造一个与其完全相同的新对象。
        参数:
        geoLine3D - 指定的 GeoLine3D 对象。
    • 方法详细资料

      • 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时。
      • clone

        public GeoLine3D clone()
        从类复制的说明: Geometry
        克隆一个Geometry对象。
        指定者:
        clone 在类中 Geometry
        返回:
        克隆的Geometry对象。
      • isEmpty

        public boolean isEmpty()
        从类复制的说明: Geometry
        判断几何对象是否为空值,不同的几何对象的是否为空的条件各异,请参见各具体几何类型的该方法。
        覆盖:
        isEmpty 在类中 Geometry
        返回:
        一个布尔值指定几何对象是否为空。
        另请参阅:
        Geometry.offset(double, double)
      • setEmpty

        public void setEmpty()
        从类复制的说明: Geometry
        清空几何对象中的空间数据,但几何对象的标识符和几何风格保持不变。
        覆盖:
        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.