幾何類別定義的階層如下
Geometry
(不可實例化)Point
(可實例化)Curve
(不可實例化)LineString
(可實例化)線
線性環
Surface
(不可實例化)Polygon
(可實例化)
GeometryCollection
(可實例化)MultiPoint
(可實例化)MultiCurve
(不可實例化)MultiLineString
(可實例化)
MultiSurface
(不可實例化)MultiPolygon
(可實例化)
無法在不可實例化的類別中建立物件。可以在可實例化的類別中建立物件。所有類別都有屬性,而可實例化的類別也可能具有斷言(定義有效類別實例的規則)。
Geometry
是基礎類別。它是一個抽象類別。Geometry
的可實例化子類別僅限於存在於二維座標空間中的零維、一維和二維幾何物件。所有可實例化的幾何類別都被定義為使幾何類別的有效實例在拓撲上是封閉的(也就是說,所有定義的幾何都包含其邊界)。
基礎 Geometry
類別具有 Point
、Curve
、Surface
和 GeometryCollection
的子類別
Point
代表零維物件。Curve
代表一維物件,並且具有子類別LineString
,以及子子類別Line
和LinearRing
。Surface
專為二維物件設計,並且具有子類別Polygon
。GeometryCollection
具有專門的零維、一維和二維集合類別,分別命名為MultiPoint
、MultiLineString
和MultiPolygon
,用於建模對應於Points
、LineStrings
和Polygons
集合的幾何圖形。MultiCurve
和MultiSurface
作為抽象超類別引入,以將集合介面通用化以處理Curves
和Surfaces
。
Geometry
、Curve
、Surface
、MultiCurve
和 MultiSurface
被定義為不可實例化的類別。它們為其子類別定義了一組通用方法,並包含在內以實現可擴展性。
Point
、LineString
、Polygon
、GeometryCollection
、MultiPoint
、MultiLineString
和 MultiPolygon
是可實例化的類別。