Documentation Home

11.4.2.1 几何类层次结构

几何类定义层次结构如下:

  • Geometry(不可实例化)

    • Point(可实例化)

    • Curve(不可实例化)

      • LineString(可实例化)

        • Line

        • LinearRing

    • Surface(不可实例化)

      • Polygon(可实例化)

    • GeometryCollection(可实例化)

      • MultiPoint(可实例化)

      • MultiCurve(不可实例化)

        • MultiLineString (可实例化)

      • MultiSurface(不可实例化)

        • MultiPolygon(可实例化)

无法在不可实例化的类中创建对象。可以在可实例化类中创建对象。所有的类都有属性,可实例化的类也可能有断言(定义有效类实例的规则)。

Geometry是基类。它是一个抽象类。的可实例化子类 Geometry仅限于存在于二维坐标空间中的零维、一维和二维几何对象。所有可实例化的几何类都已定义,因此几何类的有效实例在拓扑上是封闭的(即,所有已定义的几何都包含它们的边界)。

Geometry类有 PointCurveSurface和 的子类GeometryCollection

  • Point表示零维对象。

  • Curve表示一维对象,并且有子类LineString,子类LineLinearRing

  • Surface专为二维对象设计并具有子类Polygon

  • GeometryCollectionMultiPoint具有名为、 MultiLineString和 的专门零维、一维和二维集合类 ,用于分别MultiPolygon对应于 、 和 的集合的Points建模 LineStrings几何 Polygons. MultiCurveMultiSurface作为抽象超类引入,这些超类概括了集合接口以处理CurvesSurfaces

Geometry, Curve, Surface, MultiCurve, 和 MultiSurface被定义为不可实例化的类。它们为它们的子类定义了一组通用的方法,并包含在内以实现可扩展性。

Point, LineString, Polygon, GeometryCollection, MultiPoint, MultiLineString, 和 MultiPolygon是可实例化的类。