GDAL
Classes | Typedefs | Enumerations | Functions
ogr_geometry.h File Reference

Simple feature geometry classes. More...

#include "cpl_conv.h"
#include "cpl_json.h"
#include "ogr_core.h"
#include "ogr_geomcoordinateprecision.h"
#include "ogr_spatialref.h"
#include <climits>
#include <cmath>
#include <memory>

Go to the source code of this file.

Classes

struct  OGRWktOptions
 Options for formatting WKT output. More...
 
class  OGRRawPoint
 Simple container for a position. More...
 
class  IOGRGeometryVisitor
 OGRGeometry visitor interface. More...
 
class  OGRDefaultGeometryVisitor
 OGRGeometry visitor default implementation. More...
 
class  IOGRConstGeometryVisitor
 OGRGeometry visitor interface. More...
 
class  OGRDefaultConstGeometryVisitor
 OGRGeometry visitor default implementation. More...
 
struct  OGRGeomCoordinateBinaryPrecision
 Geometry coordinate precision for a binary representation. More...
 
struct  OGRwkbExportOptions
 WKB export options. More...
 
class  OGRGeometry
 Abstract base class for all geometry classes. More...
 
class  OGRPoint
 Point class. More...
 
class  OGRPointIterator
 Interface for a point iterator. More...
 
class  OGRCurve
 Abstract curve base class for OGRLineString, OGRCircularString and OGRCompoundCurve. More...
 
class  OGRIteratedPoint
 
class  OGRSimpleCurve
 Abstract curve base class for OGRLineString and OGRCircularString. More...
 
class  OGRLineString
 Concrete representation of a multi-vertex line. More...
 
class  OGRLinearRing
 Concrete representation of a closed ring. More...
 
class  OGRCircularString
 Concrete representation of a circular string, that is to say a curve made of one or several arc circles. More...
 
class  OGRCompoundCurve
 Utility class to store a collection of curves. More...
 
class  OGRSurface
 Abstract base class for 2 dimensional objects like polygons or curve polygons. More...
 
class  OGRCurvePolygon
 Concrete class representing curve polygons. More...
 
class  OGRPolygon
 Concrete class representing polygons. More...
 
class  OGRTriangle
 Triangle class. More...
 
class  OGRGeometryCollection
 A collection of 1 or more geometry objects. More...
 
class  OGRMultiSurface
 A collection of non-overlapping OGRSurface. More...
 
class  OGRMultiPolygon
 A collection of non-overlapping OGRPolygon. More...
 
class  OGRPolyhedralSurface
 PolyhedralSurface class. More...
 
class  OGRTriangulatedSurface
 TriangulatedSurface class. More...
 
class  OGRMultiPoint
 A collection of OGRPoint. More...
 
class  OGRMultiCurve
 A collection of OGRCurve. More...
 
class  OGRMultiLineString
 A collection of OGRLineString. More...
 
class  OGRGeometryFactory
 Create geometry objects from well known text/binary. More...
 
class  OGRGeometryFactory::TransformWithOptionsCache
 Opaque class used as argument to transformWithOptions() More...
 

Typedefs

typedef struct GEOSGeom_t * GEOSGeom
 GEOS geometry type.
 
typedef struct GEOSContextHandle_HS * GEOSContextHandle_t
 GEOS context handle type.
 
typedef void sfcgal_geometry_t
 SFCGAL geometry type.
 
typedef std::unique_ptr< OGRGeometry, OGRGeometryUniquePtrDeleter > OGRGeometryUniquePtr
 Unique pointer type for OGRGeometry. More...
 
typedef std::unique_ptr< OGRPreparedGeometry, OGRPreparedGeometryUniquePtrDeleter > OGRPreparedGeometryUniquePtr
 Unique pointer type for OGRPreparedGeometry. More...
 

Enumerations

enum class  OGRWktFormat { F , G , Default }
 WKT Output formatting options. More...
 

Functions

OGRwkbGeometryType OGRFromOGCGeomType (const char *pszGeomType)
 Map OGCgeometry format type to corresponding OGR constants. More...
 
const char * OGRToOGCGeomType (OGRwkbGeometryType eGeomType, bool bCamelCase=false, bool bAddZM=false, bool bSpaceBeforeZM=false)
 Map OGR geometry format constants to corresponding OGC geometry type. More...
 

Detailed Description

Simple feature geometry classes.

Typedef Documentation

◆ OGRGeometryUniquePtr

typedef std::unique_ptr<OGRGeometry, OGRGeometryUniquePtrDeleter> OGRGeometryUniquePtr

Unique pointer type for OGRGeometry.

Since
GDAL 2.3

◆ OGRPreparedGeometryUniquePtr

typedef std::unique_ptr<OGRPreparedGeometry, OGRPreparedGeometryUniquePtrDeleter> OGRPreparedGeometryUniquePtr

Unique pointer type for OGRPreparedGeometry.

Since
GDAL 2.3

Enumeration Type Documentation

◆ OGRWktFormat

enum class OGRWktFormat
strong

WKT Output formatting options.

Enumerator

F-type formatting.

G-type formatting.

Default 

Format as F when abs(value) < 1, otherwise as G.

Function Documentation

◆ OGRFromOGCGeomType()

OGRwkbGeometryType OGRFromOGCGeomType ( const char *  pszGeomType)

Map OGCgeometry format type to corresponding OGR constants.

Parameters
pszGeomTypePOINT[ ][Z][M], LINESTRING[ ][Z][M], etc...
Returns
OGR constant.

◆ OGRToOGCGeomType()

const char * OGRToOGCGeomType ( OGRwkbGeometryType  eGeomType,
bool  bCamelCase,
bool  bAddZM,
bool  bSpaceBeforeZM 
)

Map OGR geometry format constants to corresponding OGC geometry type.

Parameters
eGeomTypeOGR geometry type
bCamelCaseWhether the return should be like "MultiPoint" (bCamelCase=true) or "MULTIPOINT" (bCamelCase=false, default)
bAddZMWhether to include Z, M or ZM suffix for non-2D geometries. Default is false.
bSpaceBeforeZMWhether to include a space character before the Z/M/ZM suffix. Default is false.
Returns
string with OGC geometry type (without dimensionality)