幾何類別定義的階層如下
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 是可實例化的類別。