com.supermap.data

类 GeoRegion3D

  • 所有已实现的接口:
    IDisposable


    public class GeoRegion3D
    extends Geometry3D
    三维面几何对象类。

    三维面几何对象由一个或多个部分组成,每个部分称为三维面几何对象的一个子对象,每个子对象用一个有序三维坐标点集合来表示,其起始点和终止点重合。对子对象可以进行添加,删除,修改等操作。

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

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

    • 构造器详细资料

      • GeoRegion3D

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

        public GeoRegion3D(Point3Ds points)
        根据指定的参数来构造一个 GeoRegion3D 的新对象。
        参数:
        points - 指定的三维点串。
        抛出:
        IllegalArgumentException - 如果点串中点的个数小于3。
      • GeoRegion3D

        public GeoRegion3D(GeoRegion3D region3D)
    • 方法详细资料

      • dispose

        public void dispose()
        释放该对象所占用的资源。当调用该方法之后,此对象不再可用。
        指定者:
        dispose 在接口中 IDisposable
        指定者:
        dispose 在类中 Geometry
      • getArea

        public double getArea()
        返回三维面几何对象的面积,默认值为0,单位为平方米。
        返回:
        三维面几何对象的面积。单位为平方米。
        默认值:
        默认值为 0,单位为平方米。
      • getPartCount

        public int getPartCount()
        返回三维面几何对象的子对象个数,默认值为0。

        面几何对象清空后,其子对象的个数为0。

        返回:
        三维面几何对象的子对象个数。
        默认值:
        默认值为 0。
      • getPerimeter

        public double getPerimeter()
        返回三维面几何对象的周长,即所有子对象的周长之和,单位为米。
        返回:
        三维面几何对象的周长。单位为米。
        默认值:
        默认值为 0,单位为米。
      • addPart

        public int addPart(Point3Ds points)
        向三维面几何对象中添加一个子对象。
        参数:
        points - 组成区域子对象的点串。
        返回:
        添加成功则返回新添加子对象索引,否则返回-1。
        抛出:
        IllegalArgumentException - 如果点串中点的个数小于3。
      • convertToLine

        public GeoLine3D convertToLine()
        将一个三维面几何对象转换生成一个三维线对象。
        返回:
        成功则返回线对象。
      • removePart

        public boolean removePart(int index)
        删除该三维面几何对象的指定序号的子对象。
        参数:
        index - 被删除的子对象的索引值。
        返回:
        删除成功返回 true,否则返回 false。
        抛出:
        IndexOutOfBoundsException - 如果索引越界。
      • getPart

        public Point3Ds getPart(int index)
        返回三维面几何对象中指定的子对象。

        返回子对象点串的副本,因此对返回值的修改并不影响原对象,如需修改区域对象,请用 setPart() 方法。

        参数:
        index - 子对象的索引。
        返回:
        子对象点串。
        抛出:
        IndexOutOfBoundsException - 如果索引越界。
      • insertPart

        public boolean insertPart(int index,
                                  Point3Ds points)
        向该三维面几何对象的指定位置处插入一个子对象。

        插入点串的副本,因此插入后对源点串的修改不会影响区域对象,如需修改区域对象,请用 setPart() 方法。

        参数:
        index - 插入子对象的位置。
        points - 要插入的子对象的三维点串。
        返回:
        插入成功返回 true,否则返回 false。
        抛出:
        IllegalArgumentException - 如果点串中点的个数小于3。
        IndexOutOfBoundsException - 如果索引越界。
      • offset

        public void offset(double dx,
                           double dy,
                           double dz)
        从类复制的说明: Geometry3D
        根据指定的 X、Y、Z 方向上的偏移量,将三维几何对象进行偏移。
        覆盖:
        offset 在类中 Geometry3D
        参数:
        dx - 沿 X 轴方向的偏移量,单位为度。
        dy - 沿 Y 轴方向的偏移量,单位为度。
        dz - 沿 Z 轴方向的偏移量,单位为米。
      • setPart

        public boolean setPart(int index,
                               Point3Ds points)
        使用指定的三维点串替换该三维面几何对象中指定索引号的子对象。
        参数:
        index - 被替换的子对象的索引号。
        points - 用以替换的区域子对象的三维点串。
        返回:
        设置成功返回 true,否则返回 false。
        抛出:
        IllegalArgumentException - 如果点串中点的个数小于3。
        IndexOutOfBoundsException - 如果索引越界。
      • indexOf

        public int indexOf(Point3Ds part)
        返回指定有序点集合所表示的子对象在此三维面几何对象中的序号。
        参数:
        part - 有序三维点集合。
        返回:
        如果该子对象不存在,就返回-1。
      • clone

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

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

        public void setEmpty()
        从类复制的说明: Geometry
        清空几何对象中的空间数据,但几何对象的标识符和几何风格保持不变。
        覆盖:
        setEmpty 在类中 Geometry
      • convertToGeoModel3D

        public GeoModel3D convertToGeoModel3D(boolean bLonLat,
                                              ArrayList<Point3D> points)
        带纹理坐标的Georegion3D转GeoModel3D.
      • convertToRegion

        public GeoRegion convertToRegion()
        Georegion3D转Region
        返回:
      • 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.