Go to the documentation of this file.
31 #ifndef OGRSF_FRMTS_H_INCLUDED
32 #define OGRSF_FRMTS_H_INCLUDED
34 #include "cpl_progress.h"
37 #include "gdal_priv.h"
45 #if !defined(GDAL_COMPILATION) && !defined(SUPPRESS_DEPRECATION_WARNINGS)
47 #define OGR_DEPRECATED(x) CPL_WARN_DEPRECATED(x)
49 #define OGR_DEPRECATED(x)
53 class OGRLayerAttrIndex;
68 class CPL_DLL
OGRLayer :
public GDALMajorObject
71 void ConvertGeomsIfNecessary(
OGRFeature *poFeature );
75 int m_bFilterIsEnvelope;
78 OGREnvelope m_sFilterEnvelope;
79 int m_iGeomFieldFilter;
86 OGRErr GetExtentInternal(
int iGeomField, OGREnvelope *psExtent,
int bForce );
98 virtual void SetSpatialFilterRect(
double dfMinX,
double dfMinY,
99 double dfMaxX,
double dfMaxY );
101 virtual void SetSpatialFilter(
int iGeomField,
OGRGeometry * );
102 virtual void SetSpatialFilterRect(
int iGeomField,
103 double dfMinX,
double dfMinY,
104 double dfMaxX,
double dfMaxY );
106 virtual OGRErr SetAttributeFilter(
const char * );
108 virtual void ResetReading() = 0;
118 virtual const char *GetName();
121 virtual int FindFieldIndex(
const char *pszFieldName,
int bExactMatch );
125 virtual GIntBig GetFeatureCount(
int bForce = TRUE );
127 virtual OGRErr GetExtent(
int iGeomField, OGREnvelope *psExtent,
130 virtual int TestCapability(
const char * ) = 0;
133 int bApproxOK = TRUE );
134 virtual OGRErr DeleteField(
int iField );
135 virtual OGRErr ReorderFields(
int* panMap );
136 virtual OGRErr AlterFieldDefn(
int iField,
OGRFieldDefn* poNewFieldDefn,
int nFlagsIn );
139 int bApproxOK = TRUE );
141 virtual OGRErr SyncToDisk();
144 virtual void SetStyleTableDirectly(
OGRStyleTable *poStyleTable );
150 virtual OGRErr RollbackTransaction();
152 virtual const char *GetFIDColumn();
153 virtual const char *GetGeometryColumn();
155 virtual OGRErr SetIgnoredFields(
const char **papszFields );
159 char** papszOptions = NULL,
160 GDALProgressFunc pfnProgress = NULL,
161 void * pProgressArg = NULL );
164 char** papszOptions = NULL,
165 GDALProgressFunc pfnProgress = NULL,
166 void * pProgressArg = NULL );
170 GDALProgressFunc pfnProgress,
171 void * pProgressArg );
174 char** papszOptions = NULL,
175 GDALProgressFunc pfnProgress = NULL,
176 void * pProgressArg = NULL );
179 char** papszOptions = NULL,
180 GDALProgressFunc pfnProgress = NULL,
181 void * pProgressArg = NULL );
184 char** papszOptions = NULL,
185 GDALProgressFunc pfnProgress = NULL,
186 void * pProgressArg = NULL );
189 char** papszOptions = NULL,
190 GDALProgressFunc pfnProgress = NULL,
191 void * pProgressArg = NULL );
195 int GetRefCount()
const;
201 OGRErr ReorderField(
int iOldFieldPos,
int iNewFieldPos );
204 int AttributeFilterEvaluationNeedsGeometry();
207 OGRErr InitializeIndexSupport(
const char * );
208 OGRLayerAttrIndex *GetIndex() {
return m_poAttrIndex; }
214 OGRFeatureQuery *m_poAttrQuery;
215 char *m_pszAttrQueryString;
216 OGRLayerAttrIndex *m_poAttrIndex;
252 virtual const char *GetName() OGR_DEPRECATED(
"Use GDALDataset class instead") = 0;
254 static void DestroyDataSource(
OGRDataSource * ) OGR_DEPRECATED(
"Use GDALDataset class instead");
286 virtual const char *GetName() OGR_DEPRECATED(
"Use GDALDriver class instead") = 0;
288 virtual OGRDataSource *Open(
const char *pszName,
int bUpdate=FALSE ) OGR_DEPRECATED(
"Use GDALDriver class instead") = 0;
290 virtual int TestCapability(
const char *pszCap ) OGR_DEPRECATED(
"Use GDALDriver class instead") = 0;
292 virtual OGRDataSource *CreateDataSource(
const char *pszName,
293 char ** = NULL ) OGR_DEPRECATED(
"Use GDALDriver class instead");
294 virtual OGRErr DeleteDataSource(
const char *pszName ) OGR_DEPRECATED(
"Use GDALDriver class instead");
321 static GDALDataset* OpenWithDriverArg(GDALDriver* poDriver,
322 GDALOpenInfo* poOpenInfo);
323 static GDALDataset* CreateVectorOnly( GDALDriver* poDriver,
324 const char * pszName,
325 char ** papszOptions );
326 static CPLErr DeleteDataSource( GDALDriver* poDriver,
327 const char * pszName );
331 static OGRSFDriverRegistrar *GetRegistrar() OGR_DEPRECATED(
"Use GDALDriverManager class instead");
334 void RegisterDriver(
OGRSFDriver * poDriver ) OGR_DEPRECATED(
"Use GDALDriverManager class instead");
337 int GetDriverCount(
void ) OGR_DEPRECATED(
"Use GDALDriverManager class instead");
339 GDALDriver *GetDriver(
int iDriver ) OGR_DEPRECATED(
"Use GDALDriverManager class instead");
341 GDALDriver *GetDriverByName(
const char * ) OGR_DEPRECATED(
"Use GDALDriverManager class instead");
344 int GetOpenDSCount() OGR_DEPRECATED(
"Use GDALDriverManager class instead");
346 OGRDataSource *GetOpenDS(
int ) OGR_DEPRECATED(
"Use GDALDriverManager class instead");
357 void OGRRegisterAllInternal();
359 void CPL_DLL RegisterOGRFileGDB();
360 void CPL_DLL RegisterOGRShape();
361 void CPL_DLL RegisterOGRDB2();
362 void CPL_DLL RegisterOGRNTF();
363 void CPL_DLL RegisterOGRFME();
364 void CPL_DLL RegisterOGRSDTS();
365 void CPL_DLL RegisterOGRTiger();
366 void CPL_DLL RegisterOGRS57();
367 void CPL_DLL RegisterOGRTAB();
368 void CPL_DLL RegisterOGRMIF();
369 void CPL_DLL RegisterOGROGDI();
370 void CPL_DLL RegisterOGRODBC();
371 void CPL_DLL RegisterOGRWAsP();
372 void CPL_DLL RegisterOGRPG();
373 void CPL_DLL RegisterOGRMSSQLSpatial();
374 void CPL_DLL RegisterOGRMySQL();
375 void CPL_DLL RegisterOGROCI();
376 void CPL_DLL RegisterOGRDGN();
377 void CPL_DLL RegisterOGRGML();
378 void CPL_DLL RegisterOGRLIBKML();
379 void CPL_DLL RegisterOGRKML();
380 void CPL_DLL RegisterOGRGeoJSON();
381 void CPL_DLL RegisterOGRAVCBin();
382 void CPL_DLL RegisterOGRAVCE00();
383 void CPL_DLL RegisterOGRREC();
384 void CPL_DLL RegisterOGRMEM();
385 void CPL_DLL RegisterOGRVRT();
386 void CPL_DLL RegisterOGRDODS();
387 void CPL_DLL RegisterOGRSQLite();
388 void CPL_DLL RegisterOGRCSV();
389 void CPL_DLL RegisterOGRILI1();
390 void CPL_DLL RegisterOGRILI2();
391 void CPL_DLL RegisterOGRGRASS();
392 void CPL_DLL RegisterOGRPGeo();
393 void CPL_DLL RegisterOGRDXF();
394 void CPL_DLL RegisterOGRCAD();
395 void CPL_DLL RegisterOGRDWG();
396 void CPL_DLL RegisterOGRDGNV8();
397 void CPL_DLL RegisterOGRSDE();
398 void CPL_DLL RegisterOGRIDB();
399 void CPL_DLL RegisterOGRGMT();
400 void CPL_DLL RegisterOGRBNA();
401 void CPL_DLL RegisterOGRGPX();
402 void CPL_DLL RegisterOGRGeoconcept();
403 void CPL_DLL RegisterOGRIngres();
404 void CPL_DLL RegisterOGRXPlane();
405 void CPL_DLL RegisterOGRNAS();
406 void CPL_DLL RegisterOGRGeoRSS();
407 void CPL_DLL RegisterOGRGTM();
408 void CPL_DLL RegisterOGRVFK();
409 void CPL_DLL RegisterOGRPGDump();
410 void CPL_DLL RegisterOGROSM();
411 void CPL_DLL RegisterOGRGPSBabel();
412 void CPL_DLL RegisterOGRSUA();
413 void CPL_DLL RegisterOGROpenAir();
414 void CPL_DLL RegisterOGRPDS();
415 void CPL_DLL RegisterOGRWFS();
416 void CPL_DLL RegisterOGRSOSI();
417 void CPL_DLL RegisterOGRHTF();
418 void CPL_DLL RegisterOGRAeronavFAA();
419 void CPL_DLL RegisterOGRGeomedia();
420 void CPL_DLL RegisterOGRMDB();
421 void CPL_DLL RegisterOGREDIGEO();
422 void CPL_DLL RegisterOGRGFT();
423 void CPL_DLL RegisterOGRSVG();
424 void CPL_DLL RegisterOGRCouchDB();
425 void CPL_DLL RegisterOGRCloudant();
426 void CPL_DLL RegisterOGRIdrisi();
427 void CPL_DLL RegisterOGRARCGEN();
428 void CPL_DLL RegisterOGRSEGUKOOA();
429 void CPL_DLL RegisterOGRSEGY();
430 void CPL_DLL RegisterOGRXLS();
431 void CPL_DLL RegisterOGRODS();
432 void CPL_DLL RegisterOGRXLSX();
433 void CPL_DLL RegisterOGRElastic();
434 void CPL_DLL RegisterOGRGeoPackage();
435 void CPL_DLL RegisterOGRWalk();
436 void CPL_DLL RegisterOGRCarto();
437 void CPL_DLL RegisterOGRAmigoCloud();
438 void CPL_DLL RegisterOGRSXF();
439 void CPL_DLL RegisterOGROpenFileGDB();
440 void CPL_DLL RegisterOGRSelafin();
441 void CPL_DLL RegisterOGRJML();
442 void CPL_DLL RegisterOGRPLSCENES();
443 void CPL_DLL RegisterOGRCSW();
444 void CPL_DLL RegisterOGRMongoDB();
445 void CPL_DLL RegisterOGRVDV();
446 void CPL_DLL RegisterOGRGMLAS();
virtual OGRLinearRing * getInteriorRing(int)
Fetch reference to indicated internal ring.
Definition: ogrpolygon.cpp:217
OGRBoolean Is3D() const
Definition: ogr_geometry.h:185
#define CPL_LSBWORD32(x)
Definition: cpl_port.h:879
virtual OGRBoolean IsEmpty() const =0
Returns TRUE (non-zero) if the object has no points.
virtual void setCoordinateDimension(int nDimension)
Set the coordinate dimension.
Definition: ogrgeometry.cpp:1022
virtual OGRErr addRingDirectly(OGRCurve *)
Add a ring to a polygon.
Definition: ogrcurvepolygon.cpp:397
virtual OGRBoolean Intersects(const OGRGeometry *) const CPL_OVERRIDE
Do these features intersect?
Definition: ogrpoint.cpp:790
@ wkbPointZM
Definition: ogr_core.h:376
#define CPL_SWAP32(x)
Definition: cpl_port.h:772
int getNumGeometries() const
Fetch number of geometries in PolyhedralSurface.
Definition: ogrpolyhedralsurface.cpp:914
OGRLinearRing * stealExteriorRing()
"Steal" reference to external polygon ring.
Definition: ogrpolygon.cpp:192
Definition: ogr_geometry.h:1435
static OGRMultiPolygon * CastToMultiPolygon(OGRPolyhedralSurface *poPS)
Casts the OGRPolyhedralSurface to an OGRMultiPolygon.
Definition: ogrpolyhedralsurface.cpp:815
virtual OGRGeometry * getLinearGeometry(double dfMaxAngleStepSizeDegrees=0, const char *const *papszOptions=NULL) const CPL_OVERRIDE
Return, possibly approximate, non-curve version of this geometry.
Definition: ogrpolygon.cpp:822
OGRErr addGeometryDirectly(OGRGeometry *poNewGeom)
Add a geometry directly to the container.
Definition: ogrpolyhedralsurface.cpp:872
virtual OGRwkbGeometryType getGeometryType() const CPL_OVERRIDE
Fetch geometry type.
Definition: ogrpolygon.cpp:106
virtual int getDimension() const CPL_OVERRIDE
Get the dimension of this object.
Definition: ogrpolyhedralsurface.cpp:144
#define OGRERR_UNSUPPORTED_GEOMETRY_TYPE
Definition: ogr_core.h:290
virtual OGRGeometry * clone() const CPL_OVERRIDE
Make a copy of this object.
Definition: ogrcurvepolygon.cpp:106
virtual OGRwkbGeometryType getGeometryType() const =0
Fetch geometry type.
virtual void getEnvelope(OGREnvelope *psEnvelope) const CPL_OVERRIDE
Computes and returns the bounding envelope for this geometry in the passed psEnvelope structure.
Definition: ogrpoint.cpp:622
@ wkbPoint
Definition: ogr_core.h:316
virtual OGRErr importFromWkb(unsigned char *, int=-1, OGRwkbVariant=wkbVariantOldOgc) CPL_OVERRIDE
Assign geometry from well known binary data.
Definition: ogrpoint.cpp:298
CPLString & Printf(const char *pszFormat,...)
Definition: cplstring.cpp:59
#define CPL_SWAPDOUBLE(p)
Definition: cpl_port.h:860
#define VSI_REALLOC_VERBOSE(pOldPtr, nNewSize)
Definition: cpl_vsi.h:274
Definition: ogr_featurestyle.h:83
virtual void empty() CPL_OVERRIDE
Clear geometry information. This restores the geometry to it's initial state after construction,...
Definition: ogrpolyhedralsurface.cpp:153
virtual OGRErr importFromWkt(char **) CPL_OVERRIDE
Assign geometry from well known text data.
Definition: ogrpolyhedralsurface.cpp:350
virtual void set3D(OGRBoolean bIs3D)
Add or remove the Z coordinate dimension.
Definition: ogrgeometry.cpp:1045
virtual void setMeasured(OGRBoolean bIsMeasured) CPL_OVERRIDE
Add or remove the M coordinate dimension.
Definition: ogrlinestring.cpp:179
virtual void set3D(OGRBoolean bIs3D) CPL_OVERRIDE
Add or remove the Z coordinate dimension.
Definition: ogrcurvepolygon.cpp:689
void * CPLCalloc(size_t, size_t)
Definition: cpl_conv.cpp:128
virtual void flattenTo2D() CPL_OVERRIDE
Convert geometry to strictly 2D. In a sense this converts all Z coordinates to 0.0.
Definition: ogrpoint.cpp:249
void OGRRegisterAll(void)
Register all drivers.
Definition: ogrregisterall.cpp:38
@ wkbNDR
Definition: ogr_core.h:482
virtual OGRBoolean IsEmpty() const CPL_OVERRIDE
Returns TRUE (non-zero) if the object has no points.
Definition: ogr_geometry.h:357
Definition: ogr_spatialref.h:132
Definition: ogr_geometry.h:1487
virtual OGRPolygon * CurvePolyToPoly(double dfMaxAngleStepSizeDegrees=0, const char *const *papszOptions=NULL) const CPL_OVERRIDE
Return a polygon from a curve polygon.
Definition: ogrpolygon.cpp:802
virtual OGRwkbGeometryType getGeometryType() const CPL_OVERRIDE
Returns the WKB Type of PolyhedralSurface.
Definition: ogrpolyhedralsurface.cpp:116
@ wkbPolygon25D
Definition: ogr_core.h:396
@ wkbPolygonZM
Definition: ogr_core.h:378
@ wkbVariantPostGIS1
Definition: ogr_core.h:422
@ wkbPolygonM
Definition: ogr_core.h:360
Definition: ogr_geometry.h:118
virtual const char * getGeometryName() const =0
Fetch WKT name for geometry type.
virtual double get_Area() const CPL_OVERRIDE
Returns the area enclosed.
Definition: ogrpolyhedralsurface.cpp:744
virtual void setCoordinateDimension(int nDimension) CPL_OVERRIDE
Set the coordinate dimension.
Definition: ogrpolyhedralsurface.cpp:1022
virtual void swapXY() CPL_OVERRIDE
Swap x and y coordinates.
Definition: ogrpolyhedralsurface.cpp:1037
virtual OGRBoolean IsEmpty() const CPL_OVERRIDE
Checks if the PolyhedralSurface is empty.
Definition: ogrpolyhedralsurface.cpp:973
virtual int WkbSize() const CPL_OVERRIDE
Returns size of related binary representation.
Definition: ogrpolyhedralsurface.cpp:132
Definition: ogrsf_frmts.h:68
Convenient string class based on std::string.
Definition: cpl_string.h:338
Definition: ogr_geometry.h:322
virtual OGRErr importFromWkt(char **) CPL_OVERRIDE
Assign geometry from well known text data.
Definition: ogrpoint.cpp:477
@ wkbPolyhedralSurfaceZM
Definition: ogr_core.h:390
OGRGeometry & operator=(const OGRGeometry &other)
Assignment operator.
Definition: ogrgeometry.cpp:141
void * CPLRealloc(void *, size_t)
Definition: cpl_conv.cpp:215
@ wkbPoint25D
Definition: ogr_core.h:394
OGRPolygon & operator=(const OGRPolygon &other)
Assignment operator.
Definition: ogrpolygon.cpp:93
#define EQUAL(a, b)
Definition: cpl_port.h:622
int OGRBoolean
Definition: ogr_core.h:301
virtual int WkbSize() const CPL_OVERRIDE
Returns size of related binary representation.
Definition: ogrpolygon.cpp:299
Definition: ogrsf_frmts.h:315
virtual OGRErr PointOnSurface(OGRPoint *) const CPL_OVERRIDE
This method relates to the SFCOM ISurface::get_PointOnSurface() method.
Definition: ogrpolyhedralsurface.cpp:771
double x
Definition: ogr_geometry.h:57
static OGRErr createFromWkb(unsigned char *, OGRSpatialReference *, OGRGeometry **, int=-1, OGRwkbVariant=wkbVariantOldOgc)
Create a geometry object of the appropriate type from it's well known binary representation.
Definition: ogrgeometryfactory.cpp:103
virtual OGRGeometry * getCurveGeometry(const char *const *papszOptions=NULL) const CPL_WARN_UNUSED_RESULT
Return curve version of this geometry.
Definition: ogrgeometry.cpp:3116
#define wkbFlatten(x)
Definition: ogr_core.h:431
virtual void swapXY() CPL_OVERRIDE
Swap x and y coordinates.
Definition: ogrpoint.cpp:757
#define CPLAssert(expr)
Definition: cpl_error.h:182
Definition: ogr_geometry.h:47
#define CPL_C_START
Definition: cpl_port.h:352
virtual OGRGeometry * clone() const CPL_WARN_UNUSED_RESULT=0
Make a copy of this object.
virtual OGRLinearRing * stealInteriorRing(int)
"Steal" reference to indicated interior ring.
Definition: ogrpolygon.cpp:265
virtual void setMeasured(OGRBoolean bIsMeasured) CPL_OVERRIDE
Add or remove the M coordinate dimension.
Definition: ogrcurvepolygon.cpp:694
virtual OGRErr addGeometry(const OGRGeometry *)
Add a new geometry to a collection.
Definition: ogrpolyhedralsurface.cpp:836
virtual OGRErr exportToWkt(char **ppszDstText, OGRwkbVariant=wkbVariantOldOgc) const CPL_OVERRIDE
Convert a geometry into well known text format.
Definition: ogrpoint.cpp:562
virtual void getEnvelope(OGREnvelope *psEnvelope) const CPL_OVERRIDE
Computes and returns the bounding envelope for this geometry in the passed psEnvelope structure.
Definition: ogrpolyhedralsurface.cpp:198
Definition: ogr_geometry.h:1017
OGRwkbByteOrder
Definition: ogr_core.h:479
OGRLinearRing * getExteriorRing()
Fetch reference to external polygon ring.
Definition: ogrpolygon.cpp:147
OGRCurvePolygon()
Create an empty curve polygon.
Definition: ogrcurvepolygon.cpp:52
static OGRGeometry * createGeometry(OGRwkbGeometryType)
Create an empty geometry of desired type.
Definition: ogrgeometryfactory.cpp:442
@ wkbCurvePolygon
Definition: ogr_core.h:331
virtual OGRBoolean Intersects(const OGRGeometry *) const
Do these features intersect?
Definition: ogrgeometry.cpp:515
virtual OGRBoolean Equals(OGRGeometry *) const CPL_OVERRIDE
Returns TRUE if two geometries are equivalent.
Definition: ogrpoint.cpp:706
virtual void setCoordinateDimension(int nDimension) CPL_OVERRIDE
Set the coordinate dimension.
Definition: ogrpoint.cpp:262
virtual int WkbSize() const CPL_OVERRIDE
Returns size of related binary representation.
Definition: ogrpoint.cpp:280
void setPointsM(int, OGRRawPoint *, double *)
Assign all points in a line string.
Definition: ogrlinestring.cpp:874
#define OGRERR_FAILURE
Definition: ogr_core.h:293
#define CPL_MSBWORD32(x)
Definition: cpl_port.h:881
virtual OGRErr exportToWkb(OGRwkbByteOrder, unsigned char *, OGRwkbVariant=wkbVariantOldOgc) const CPL_OVERRIDE
Convert a geometry into well known binary format.
Definition: ogrpolygon.cpp:364
#define OGRERR_NOT_ENOUGH_MEMORY
Definition: ogr_core.h:289
virtual OGRGeometry * clone() const CPL_OVERRIDE
Make a copy of this object.
Definition: ogrpolyhedralsurface.cpp:169
virtual OGRBoolean hasCurveGeometry(int bLookForNonLinear=FALSE) const CPL_OVERRIDE
Returns if this geometry is or has curve geometry.
Definition: ogrpolygon.cpp:813
@ wkbPolyhedralSurface
Definition: ogr_core.h:338
void sfcgal_geometry_t
Definition: ogr_geometry.h:67
#define CPL_C_END
Definition: cpl_port.h:354
void CPLDebug(const char *, const char *,...)
Definition: cpl_error.cpp:492
virtual OGRErr importFromWkb(unsigned char *, int=-1, OGRwkbVariant=wkbVariantOldOgc) CPL_OVERRIDE
Assign geometry from well known binary data.
Definition: ogrpolygon.cpp:319
Definition: ogr_feature.h:62
virtual void empty() CPL_OVERRIDE
Clear geometry information. This restores the geometry to it's initial state after construction,...
Definition: ogrpoint.cpp:198
@ wkbVariantIso
Definition: ogr_core.h:421
virtual void set3D(OGRBoolean bIs3D) CPL_OVERRIDE
Add or remove the Z coordinate dimension.
Definition: ogrlinestring.cpp:170
virtual int getNumPoints() const CPL_OVERRIDE
Fetch vertex count.
Definition: ogr_geometry.h:552
OGRErr removeGeometry(int iIndex, int bDelete=TRUE)
Remove a geometry from the container.
Definition: ogrpolyhedralsurface.cpp:1073
void assignSpatialReference(OGRSpatialReference *poSR)
Assign spatial reference to this object.
Definition: ogrgeometry.cpp:450
virtual int getDimension() const CPL_OVERRIDE
Get the dimension of this object.
Definition: ogrpoint.cpp:212
@ wkbPolygon
Definition: ogr_core.h:319
OGRSpatialReference * getSpatialReference(void) const
Returns spatial reference system for object.
Definition: ogr_geometry.h:238
OGRGeometry * getGeometryRef(int i)
Fetch geometry from container.
Definition: ogrpolyhedralsurface.cpp:936
#define VSI_CALLOC_VERBOSE(nCount, nSize)
Definition: cpl_vsi.h:269
@ wkbPolyhedralSurfaceM
Definition: ogr_core.h:372
Definition: ogrsf_frmts.h:247
virtual const char * getGeometryName() const CPL_OVERRIDE
Fetch WKT name for geometry type.
Definition: ogrpoint.cpp:239
struct _OGRPreparedGeometry OGRPreparedGeometry
Definition: ogr_geometry.h:1799
void CPLError(CPLErr eErrClass, CPLErrorNum err_no, const char *fmt,...)
Definition: cpl_error.cpp:215
Definition: ogr_feature.h:141
static OGRErr createFromWkt(char **, OGRSpatialReference *, OGRGeometry **)
Create a geometry object of the appropriate type from it's well known text representation.
Definition: ogrgeometryfactory.cpp:270
virtual void flattenTo2D() CPL_OVERRIDE
Convert geometry to strictly 2D. In a sense this converts all Z coordinates to 0.0.
Definition: ogrpolyhedralsurface.cpp:627
virtual const char * getGeometryName() const CPL_OVERRIDE
Fetch WKT name for geometry type.
Definition: ogrpolyhedralsurface.cpp:102
void VSIFree(void *)
Definition: cpl_vsisimple.cpp:817
void setPoints(int, OGRRawPoint *, double *=NULL)
Assign all points in a line string.
Definition: ogrlinestring.cpp:985
#define CPLE_NotSupported
Definition: cpl_error.h:110
#define OGRERR_NOT_ENOUGH_DATA
Definition: ogr_core.h:288
#define OGRERR_CORRUPT_DATA
Definition: ogr_core.h:292
Definition: ogrsf_frmts.h:280
int OGRErr
Definition: ogr_core.h:285
virtual OGRErr transform(OGRCoordinateTransformation *) CPL_OVERRIDE
Apply arbitrary coordinate transformation to geometry.
Definition: ogrpolyhedralsurface.cpp:639
long long GIntBig
Definition: cpl_port.h:250
virtual OGRErr transform(OGRCoordinateTransformation *poCT) CPL_OVERRIDE
Apply arbitrary coordinate transformation to geometry.
Definition: ogrpoint.cpp:741
void OGRRegisterAll()
Register all drivers.
Definition: ogrregisterall.cpp:38
#define VSI_MALLOC_VERBOSE(size)
Definition: cpl_vsi.h:254
OGRPoint()
Create an empty point.
Definition: ogrpoint.cpp:54
OGRwkbGeometryType
Definition: ogr_core.h:312
#define CPL_UNUSED
Definition: cpl_port.h:1008
virtual OGRErr importFromWkb(unsigned char *, int=-1, OGRwkbVariant=wkbVariantOldOgc) CPL_OVERRIDE
Assign geometry from well known binary data.
Definition: ogrpolyhedralsurface.cpp:216
#define CPL_WARN_UNUSED_RESULT
Definition: cpl_port.h:999
Definition: ogr_feature.h:279
virtual OGRBoolean Equals(OGRGeometry *) const CPL_OVERRIDE
Returns TRUE if two geometries are equivalent.
Definition: ogrpolyhedralsurface.cpp:704
virtual void closeRings() CPL_OVERRIDE
Force rings to be closed.
Definition: ogrpolygon.cpp:791
#define EQUALN(a, b, n)
Definition: cpl_port.h:620
virtual ~OGRPolyhedralSurface()
Destructor.
Definition: ogrpolyhedralsurface.cpp:74
virtual OGRBoolean Intersects(const OGRGeometry *) const CPL_OVERRIDE
Do these features intersect?
Definition: ogrcurvepolygon.cpp:775
double getZ() const
Fetch Z coordinate.
Definition: ogr_geometry.h:366
@ wkbXDR
Definition: ogr_core.h:481
virtual int WkbSize() const =0
Returns size of related binary representation.
OGRBoolean IsMeasured() const
Definition: ogr_geometry.h:187
OGRCurvePolygon & operator=(const OGRCurvePolygon &other)
Assignment operator.
Definition: ogrcurvepolygon.cpp:91
virtual void set3D(OGRBoolean bIs3D) CPL_OVERRIDE
Set the type as 3D geometry.
Definition: ogrpolyhedralsurface.cpp:986
Definition: ogr_geometry.h:433
double getY() const
Fetch Y coordinate.
Definition: ogr_geometry.h:364
virtual OGRGeometry * getLinearGeometry(double dfMaxAngleStepSizeDegrees=0, const char *const *papszOptions=NULL) const CPL_WARN_UNUSED_RESULT
Return, possibly approximate, non-curve version of this geometry.
Definition: ogrgeometry.cpp:3081
CPLErr
Definition: cpl_error.h:52
virtual const char * getGeometryName() const CPL_OVERRIDE
Fetch WKT name for geometry type.
Definition: ogrpolygon.cpp:123
@ wkbPolyhedralSurfaceZ
Definition: ogr_core.h:354
OGRPolyhedralSurface & operator=(const OGRPolyhedralSurface &other)
Assignment operator.
Definition: ogrpolyhedralsurface.cpp:87
OGRPolyhedralSurface()
Create an empty PolyhedralSurface.
Definition: ogrpolyhedralsurface.cpp:47
virtual OGRBoolean hasCurveGeometry(int bLookForNonLinear=FALSE) const CPL_OVERRIDE
Returns if this geometry is or has curve geometry.
Definition: ogrpolyhedralsurface.cpp:1047
Definition: ogr_geometry.h:684
#define OGRERR_NONE
Definition: ogr_core.h:287
char * CPLStrdup(const char *)
Definition: cpl_conv.cpp:284
Definition: ogr_feature.h:207
double y
Definition: ogr_geometry.h:59
@ wkbLineString
Definition: ogr_core.h:317
virtual OGRErr exportToWkt(char **ppszDstText, OGRwkbVariant=wkbVariantOldOgc) const CPL_OVERRIDE
Convert a geometry into well known text format.
Definition: ogrpolygon.cpp:614
OGRPolygon()
Create an empty polygon.
Definition: ogrpolygon.cpp:55
virtual OGRErr exportToWkb(OGRwkbByteOrder, unsigned char *, OGRwkbVariant=wkbVariantOldOgc) const CPL_OVERRIDE
Convert a geometry into well known binary format.
Definition: ogrpoint.cpp:375
Definition: ogr_geometry.h:1162
virtual OGRwkbGeometryType getGeometryType() const CPL_OVERRIDE
Fetch geometry type.
Definition: ogrpoint.cpp:222
Definition: ogr_geometry.h:1051
virtual OGRErr PointOnSurface(OGRPoint *poPoint) const CPL_OVERRIDE
This method relates to the SFCOM ISurface::get_PointOnSurface() method.
Definition: ogrpolygon.cpp:758
virtual OGRGeometry * clone() const CPL_OVERRIDE
Make a copy of this object.
Definition: ogrpoint.cpp:182
virtual OGRBoolean Contains(const OGRGeometry *) const CPL_OVERRIDE
Test for containment.
Definition: ogrcurvepolygon.cpp:752
virtual void setMeasured(OGRBoolean bIsMeasured) CPL_OVERRIDE
Set the type as Measured.
Definition: ogrpolyhedralsurface.cpp:1001
OGRBoolean IsPointOnSurface(const OGRPoint *) const
Definition: ogrpolygon.cpp:771
virtual OGRBoolean Within(const OGRGeometry *) const CPL_OVERRIDE
Test for containment.
Definition: ogrpoint.cpp:766
virtual OGRErr exportToWkb(OGRwkbByteOrder, unsigned char *, OGRwkbVariant=wkbVariantOldOgc) const CPL_OVERRIDE
Convert a geometry into well known binary format.
Definition: ogrpolyhedralsurface.cpp:300
virtual OGRGeometry * getCurveGeometry(const char *const *papszOptions=NULL) const CPL_OVERRIDE
Return curve version of this geometry.
Definition: ogrpolygon.cpp:835
virtual OGRErr exportToWkt(char **ppszDstText, OGRwkbVariant=wkbVariantOldOgc) const CPL_OVERRIDE
Convert a geometry into well known text format.
Definition: ogrpolyhedralsurface.cpp:462
#define CPLFree
Definition: cpl_conv.h:81
virtual OGRBoolean Within(const OGRGeometry *) const
Test for containment.
Definition: ogrgeometry.cpp:4729
virtual OGRBoolean IsEmpty() const CPL_OVERRIDE
Returns TRUE (non-zero) if the object has no points.
Definition: ogrcurvepolygon.cpp:703
virtual void setMeasured(OGRBoolean bIsMeasured)
Add or remove the M coordinate dimension.
Definition: ogrgeometry.cpp:1068
static OGRLineString * CastToLineString(OGRLinearRing *poLR)
Cast to line string.
Definition: ogrlinearring.cpp:770
OGRwkbVariant
Definition: ogr_core.h:418
OGRCurve * stealExteriorRingCurve()
"Steal" reference to external ring.
Definition: ogrcurvepolygon.cpp:311
virtual OGRErr importFromWkt(char **) CPL_OVERRIDE
Assign geometry from well known text data.
Definition: ogrpolygon.cpp:438
@ wkbPointM
Definition: ogr_core.h:358
double getX() const
Fetch X coordinate.
Definition: ogr_geometry.h:362
OGRwkbGeometryType getIsoGeometryType() const
Get the geometry type that conforms with ISO SQL/MM Part3.
Definition: ogrgeometry.cpp:776
virtual OGRErr exportToWkt(char **ppszDstText, OGRwkbVariant=wkbVariantOldOgc) const CPL_OVERRIDE
Convert a geometry into well known text format.
Definition: ogrlinestring.cpp:1797
OGRPoint & operator=(const OGRPoint &other)
Assignment operator.
Definition: ogrpoint.cpp:162
#define STARTS_WITH_CI(a, b)
Definition: cpl_port.h:633
#define CPLE_AppDefined
Definition: cpl_error.h:100
unsigned int GUInt32
Definition: cpl_port.h:199
Generated for GDAL by
1.8.17.