Skip to content

Geometry class hierarchy

Timo Westkämper edited this page Jan 28, 2014 · 9 revisions

SQL/MM

Geometry
  Point
  Curve
    LineString
    CircularString
    CompoundCurve
  Surface
    CurvePolygon
      Polygon
  GeomCollection
    MultiSurface
      MultiPolygon
    MultiCurve
      MultiLineString
    MultiPoint

SFS 1.2.1

Geometry (1.1) - jts, geolatte
  Point (1.1) - jts, geolatte
  Curve (1.1)
    LineString (1.1) - jts, geolatte
      Line
      LinearRing - geolatte
  Surface (1.1)
    Polygon (1.1) - jts, geolatte
      Triangle
    PolyhedralSurface - geolatte
      TIN
  GeometryCollection (1.1) - jts, geolatte
    MultiSurface (1.1) 
      MultiPolygon (1.1) - jts, geolatte
    MultiCurve (1.1) 
      MultiLineString (1.1) - jts, geolatte
    MultiPoint (1.1) - jts, geolatte

JTS supports only a subset of v1.1

methods

Geometry
  ST_Dimension(): Integer
  ST_GeometryType(): String
  ST_AsText(): String (or Clob)
  ST_AsBinary(): Blob
  ST_SRID(): Integer
  ST_STRID(ansrid: Integer): Geometry
  ST_IsEmpty(): Integer
  ST_IsSimple(): Integer
  ST_Boundary(): Geometry
  ST_Envelope(): Polygon
  ST_WKTToSQL(awkt: String): Geometry
  ST_WKBTOSQL(akwb: Blob): Geometry
  ST_Equals(ageometry: Geometry): Integer
  ST_Disjoint(ageometry: Geometry): Integer
  ST_Intersects(ageometry: Geometry): Integer
  ST_Touches(ageometry: Geometry): Integer
  ST_Crosses(ageometry: Geometry): Integer
  ST_Within(ageometry: Geometry): Integer
  ST_Contains(ageoemtry: Geometry): Integer
  ST_Overlaps(ageometry: Geometry): Integer
  ST_Relate(ageometry: Geometry, amatrix: String): Integer
  ST_Distance(ageometry: Geometry): Double
  ST_Distance(ageometry: Geometry, aunit: String): Double
  ST_Intersection(ageometry: Geometry): Geometry
  ST_Difference(ageometry: Geometry): Geometry
  ST_Union(ageometry: Geometry): Geometry
  ST_SymDifference(ageometry: Geometry): Geometry
  ST_Buffer(adistance: Double): Geometry
  ST_Buffer(adistance: Double, aunit: String): Geometry
  ST_ConvexHull(): Geometry

Point
  ST_X(): Double
  ST_X(xcoord: Double): Point
  ST_Y(): Double
  ST_Y(ycoord: Double): Point
  ST_Z(): Double
  ST_Z(zcoord: Double): Point
  ST_M(): Double
  ST_M(mcoord: Double): Point

Curve 
  ST_StartPoint(): Point
  ST_EndPoint(): Point
  ST_IsRing(): Integer
  ST_Length(): Double
  ST_Length(aunit: String): Double

LineString
  ST_NumPoints(): Integer
  ST_PointN(aposition: Integer): Integer

Surface
  ST_Area(): Double
  ST_Area(unit: String): Double
  ST_Centroid(): Point
  ST_PointOnSurface(): Point

Polygon
  ST_ExteriorRing(): LineString
  ST_ExteriorRing(acurve: LineString): Polygon
  ST_InteriorRings(): LineString[]
  ST_InteriorRings(acurvearray: LineString[]): Polygon
  ST_NumInteriorRing(): Integer
  ST_InteriorRingN(aposition: Integer): LineString

PolyhedralSurface
  ST_Geometries(): Surface[]
  NumSurfaces(): Integer
  SURFACE(aposition: Integer): Surface

GeometryCollection
  ST_NumGeometries(): Integer
  ST_GeometryN(aposition: Integer): Geometry

MultiPoint
  none
  
MultiCurve  
  ST_IsClosed(): Integer
  ST_Length(): Double
  ST_Length(aunit: String): Double

MultiLineString
  override ST_Geometries(): LineString[]
  override ST_Geometries(ageometryarray: Geometry[]): MultiLineString

MultiSurface
  ST_Centroid(): Point
  ST_PointOnSurface(): Point
  ST_Area(): Double
  ST_Area(aunit: String): Double
  override ST_Geometries(): Surface[]
Clone this wiki locally