GDAL
ogr_core.h
Go to the documentation of this file.
1 /******************************************************************************
2  * $Id: ogr_core.h 504e5211ddf893644c256c583818e87fca0f685f 2020-04-16 14:15:58 +0200 Even Rouault $
3  *
4  * Project: OpenGIS Simple Features Reference Implementation
5  * Purpose: Define some core portability services for cross-platform OGR code.
6  * Author: Frank Warmerdam, warmerdam@pobox.com
7  *
8  ******************************************************************************
9  * Copyright (c) 1999, Frank Warmerdam
10  * Copyright (c) 2007-2014, Even Rouault <even dot rouault at spatialys.com>
11  *
12  * Permission is hereby granted, free of charge, to any person obtaining a
13  * copy of this software and associated documentation files (the "Software"),
14  * to deal in the Software without restriction, including without limitation
15  * the rights to use, copy, modify, merge, publish, distribute, sublicense,
16  * and/or sell copies of the Software, and to permit persons to whom the
17  * Software is furnished to do so, subject to the following conditions:
18  *
19  * The above copyright notice and this permission notice shall be included
20  * in all copies or substantial portions of the Software.
21  *
22  * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS
23  * OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
24  * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL
25  * THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
26  * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
27  * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
28  * DEALINGS IN THE SOFTWARE.
29  ****************************************************************************/
30 
31 #ifndef OGR_CORE_H_INCLUDED
32 #define OGR_CORE_H_INCLUDED
33 
34 #include "cpl_port.h"
35 #if defined(GDAL_COMPILATION)
36 #define DO_NOT_DEFINE_GDAL_RELEASE_DATE_AND_GDAL_RELEASE_NAME
37 #endif
38 #include "gdal_version.h"
39 
46 #if defined(__cplusplus) && !defined(CPL_SUPRESS_CPLUSPLUS)
47 
48 extern "C++"
49 {
50 #if !defined(DOXYGEN_SKIP)
51 #include <limits>
52 #endif
53 
57 class CPL_DLL OGREnvelope
58 {
59  public:
61  OGREnvelope() : MinX(std::numeric_limits<double>::infinity()),
62  MaxX(-std::numeric_limits<double>::infinity()),
63  MinY(std::numeric_limits<double>::infinity()),
64  MaxY(-std::numeric_limits<double>::infinity())
65  {
66  }
67 
69  OGREnvelope(const OGREnvelope& oOther) :
70  MinX(oOther.MinX),MaxX(oOther.MaxX), MinY(oOther.MinY), MaxY(oOther.MaxY)
71  {
72  }
73 
75  OGREnvelope& operator=(const OGREnvelope&) = default;
76 
78  double MinX;
79 
81  double MaxX;
82 
84  double MinY;
85 
87  double MaxY;
88 
89 #ifdef HAVE_GCC_DIAGNOSTIC_PUSH
90 #pragma GCC diagnostic push
91 #pragma GCC diagnostic ignored "-Wfloat-equal"
92 #endif
93 
94  int IsInit() const { return MinX != std::numeric_limits<double>::infinity(); }
95 
96 #ifdef HAVE_GCC_DIAGNOSTIC_PUSH
97 #pragma GCC diagnostic pop
98 #endif
99 
101  void Merge( OGREnvelope const& sOther ) {
102  MinX = MIN(MinX,sOther.MinX);
103  MaxX = MAX(MaxX,sOther.MaxX);
104  MinY = MIN(MinY,sOther.MinY);
105  MaxY = MAX(MaxY,sOther.MaxY);
106  }
107 
109  void Merge( double dfX, double dfY ) {
110  MinX = MIN(MinX,dfX);
111  MaxX = MAX(MaxX,dfX);
112  MinY = MIN(MinY,dfY);
113  MaxY = MAX(MaxY,dfY);
114  }
115 
117  void Intersect( OGREnvelope const& sOther ) {
118  if(Intersects(sOther))
119  {
120  if( IsInit() )
121  {
122  MinX = MAX(MinX,sOther.MinX);
123  MaxX = MIN(MaxX,sOther.MaxX);
124  MinY = MAX(MinY,sOther.MinY);
125  MaxY = MIN(MaxY,sOther.MaxY);
126  }
127  else
128  {
129  MinX = sOther.MinX;
130  MaxX = sOther.MaxX;
131  MinY = sOther.MinY;
132  MaxY = sOther.MaxY;
133  }
134  }
135  else
136  {
137  *this = OGREnvelope();
138  }
139  }
140 
142  int Intersects(OGREnvelope const& other) const
143  {
144  return MinX <= other.MaxX && MaxX >= other.MinX &&
145  MinY <= other.MaxY && MaxY >= other.MinY;
146  }
147 
149  int Contains(OGREnvelope const& other) const
150  {
151  return MinX <= other.MinX && MinY <= other.MinY &&
152  MaxX >= other.MaxX && MaxY >= other.MaxY;
153  }
154 };
155 
156 } // extern "C++"
157 
158 #else
159 typedef struct
160 {
161  double MinX;
162  double MaxX;
163  double MinY;
164  double MaxY;
165 } OGREnvelope;
166 #endif
167 
168 #if defined(__cplusplus) && !defined(CPL_SUPRESS_CPLUSPLUS)
169 
170 extern "C++" {
171 
175 class CPL_DLL OGREnvelope3D : public OGREnvelope
176 {
177  public:
180  MinZ(std::numeric_limits<double>::infinity()),
181  MaxZ(-std::numeric_limits<double>::infinity())
182  {
183  }
184 
186  OGREnvelope3D(const OGREnvelope3D& oOther) :
187  OGREnvelope(oOther),
188  MinZ(oOther.MinZ), MaxZ(oOther.MaxZ)
189  {
190  }
191 
194 
196  double MinZ;
197 
199  double MaxZ;
200 
201 #ifdef HAVE_GCC_DIAGNOSTIC_PUSH
202 #pragma GCC diagnostic push
203 #pragma GCC diagnostic ignored "-Wfloat-equal"
204 #endif
205 
206  int IsInit() const { return MinX != std::numeric_limits<double>::infinity(); }
207 #ifdef HAVE_GCC_DIAGNOSTIC_PUSH
208 #pragma GCC diagnostic pop
209 #endif
210 
212  void Merge( OGREnvelope3D const& sOther ) {
213  MinX = MIN(MinX,sOther.MinX);
214  MaxX = MAX(MaxX,sOther.MaxX);
215  MinY = MIN(MinY,sOther.MinY);
216  MaxY = MAX(MaxY,sOther.MaxY);
217  MinZ = MIN(MinZ,sOther.MinZ);
218  MaxZ = MAX(MaxZ,sOther.MaxZ);
219  }
220 
222  void Merge( double dfX, double dfY, double dfZ ) {
223  MinX = MIN(MinX,dfX);
224  MaxX = MAX(MaxX,dfX);
225  MinY = MIN(MinY,dfY);
226  MaxY = MAX(MaxY,dfY);
227  MinZ = MIN(MinZ,dfZ);
228  MaxZ = MAX(MaxZ,dfZ);
229  }
230 
232  void Intersect( OGREnvelope3D const& sOther ) {
233  if(Intersects(sOther))
234  {
235  if( IsInit() )
236  {
237  MinX = MAX(MinX,sOther.MinX);
238  MaxX = MIN(MaxX,sOther.MaxX);
239  MinY = MAX(MinY,sOther.MinY);
240  MaxY = MIN(MaxY,sOther.MaxY);
241  MinZ = MAX(MinZ,sOther.MinZ);
242  MaxZ = MIN(MaxZ,sOther.MaxZ);
243  }
244  else
245  {
246  MinX = sOther.MinX;
247  MaxX = sOther.MaxX;
248  MinY = sOther.MinY;
249  MaxY = sOther.MaxY;
250  MinZ = sOther.MinZ;
251  MaxZ = sOther.MaxZ;
252  }
253  }
254  else
255  {
256  *this = OGREnvelope3D();
257  }
258  }
259 
261  int Intersects(OGREnvelope3D const& other) const
262  {
263  return MinX <= other.MaxX && MaxX >= other.MinX &&
264  MinY <= other.MaxY && MaxY >= other.MinY &&
265  MinZ <= other.MaxZ && MaxZ >= other.MinZ;
266  }
267 
269  int Contains(OGREnvelope3D const& other) const
270  {
271  return MinX <= other.MinX && MinY <= other.MinY &&
272  MaxX >= other.MaxX && MaxY >= other.MaxY &&
273  MinZ <= other.MinZ && MaxZ >= other.MaxZ;
274  }
275 };
276 
277 } // extern "C++"
278 
279 #else
280 typedef struct
281 {
282  double MinX;
283  double MaxX;
284  double MinY;
285  double MaxY;
286  double MinZ;
287  double MaxZ;
288 } OGREnvelope3D;
289 #endif
290 
292 
294 void CPL_DLL *OGRMalloc( size_t ) CPL_WARN_DEPRECATED("Use CPLMalloc instead.");
295 void CPL_DLL *OGRCalloc( size_t, size_t ) CPL_WARN_DEPRECATED("Use CPLCalloc instead.");
296 void CPL_DLL *OGRRealloc( void *, size_t ) CPL_WARN_DEPRECATED("Use CPLRealloc instead.");
297 char CPL_DLL *OGRStrdup( const char * ) CPL_WARN_DEPRECATED("Use CPLStrdup instead.");
298 void CPL_DLL OGRFree( void * ) CPL_WARN_DEPRECATED("Use CPLFree instead.");
301 #ifdef STRICT_OGRERR_TYPE
302 
303 typedef enum
304 {
305  OGRERR_NONE,
315 } OGRErr;
316 #else
317 
318 typedef int OGRErr;
319 
320 #define OGRERR_NONE 0
321 #define OGRERR_NOT_ENOUGH_DATA 1
322 #define OGRERR_NOT_ENOUGH_MEMORY 2
323 #define OGRERR_UNSUPPORTED_GEOMETRY_TYPE 3
324 #define OGRERR_UNSUPPORTED_OPERATION 4
325 #define OGRERR_CORRUPT_DATA 5
326 #define OGRERR_FAILURE 6
327 #define OGRERR_UNSUPPORTED_SRS 7
328 #define OGRERR_INVALID_HANDLE 8
329 #define OGRERR_NON_EXISTING_FEATURE 9
331 #endif
332 
334 typedef int OGRBoolean;
335 
336 /* -------------------------------------------------------------------- */
337 /* ogr_geometry.h related definitions. */
338 /* -------------------------------------------------------------------- */
339 
345 typedef enum
346 {
349  wkbPoint = 1,
350  wkbLineString = 2,
352  wkbPolygon = 3,
361  wkbCircularString = 8,
364  wkbCurvePolygon = 10,
369  wkbCurve = 13,
370  wkbSurface = 14,
373  wkbTIN = 16,
375  wkbTriangle = 17,
377  wkbNone = 100,
383  wkbMultiCurveZ = 1011,
385  wkbCurveZ = 1013,
386  wkbSurfaceZ = 1014,
388  wkbTINZ = 1016,
389  wkbTriangleZ = 1017,
391  wkbPointM = 2001,
392  wkbLineStringM = 2002,
393  wkbPolygonM = 2003,
394  wkbMultiPointM = 2004,
401  wkbMultiCurveM = 2011,
403  wkbCurveM = 2013,
404  wkbSurfaceM = 2014,
406  wkbTINM = 2016,
407  wkbTriangleM = 2017,
409  wkbPointZM = 3001,
411  wkbPolygonZM = 3003,
421  wkbCurveZM = 3013,
422  wkbSurfaceZM = 3014,
424  wkbTINZM = 3016,
425  wkbTriangleZM = 3017,
427 #if defined(DOXYGEN_SKIP)
428  // Sphinx doesn't like 0x8000000x constants
429  wkbPoint25D = -2147483647,
430  wkbLineString25D = -2147483646,
431  wkbPolygon25D = -2147483645,
432  wkbMultiPoint25D = -2147483644,
433  wkbMultiLineString25D = -2147483643,
434  wkbMultiPolygon25D = -2147483642,
435  wkbGeometryCollection25D = -2147483641
436 #else
437  wkbPoint25D = 0x80000001,
438  wkbLineString25D = 0x80000002,
439  wkbPolygon25D = 0x80000003,
440  wkbMultiPoint25D = 0x80000004,
441  wkbMultiLineString25D = 0x80000005,
442  wkbMultiPolygon25D = 0x80000006,
443  wkbGeometryCollection25D = 0x80000007
444 #endif
446 
461 typedef enum
462 {
467 
468 #ifndef GDAL_COMPILATION
469 
470 #define wkb25DBit 0x80000000
471 #endif
472 
473 #ifndef __cplusplus
474 
475 #define wkbFlatten(x) OGR_GT_Flatten((OGRwkbGeometryType)(x))
476 #else
477 
478 #define wkbFlatten(x) OGR_GT_Flatten(static_cast<OGRwkbGeometryType>(x))
479 #endif
480 
484 #define wkbHasZ(x) (OGR_GT_HasZ(x) != 0)
485 
489 #define wkbSetZ(x) OGR_GT_SetZ(x)
490 
494 #define wkbHasM(x) (OGR_GT_HasM(x) != 0)
495 
499 #define wkbSetM(x) OGR_GT_SetM(x)
500 
501 #ifndef DOXYGEN_SKIP
502 #define ogrZMarker 0x21125711
503 #endif
504 
505 const char CPL_DLL * OGRGeometryTypeToName( OGRwkbGeometryType eType );
507  OGRwkbGeometryType eExtra );
509  OGRwkbGeometryType eExtra,
510  int bAllowPromotingToCurves );
514 OGRwkbGeometryType CPL_DLL OGR_GT_SetModifier( OGRwkbGeometryType eType, int bSetZ, int bSetM );
515 int CPL_DLL OGR_GT_HasZ( OGRwkbGeometryType eType );
516 int CPL_DLL OGR_GT_HasM( OGRwkbGeometryType eType );
517 int CPL_DLL OGR_GT_IsSubClassOf( OGRwkbGeometryType eType,
518  OGRwkbGeometryType eSuperType );
519 int CPL_DLL OGR_GT_IsCurve( OGRwkbGeometryType );
520 int CPL_DLL OGR_GT_IsSurface( OGRwkbGeometryType );
525 
527 typedef enum
528 {
529  wkbXDR = 0,
530  wkbNDR = 1
532 
533 #ifndef DOXYGEN_SKIP
534 
535 #ifndef NO_HACK_FOR_IBM_DB2_V72
536 # define HACK_FOR_IBM_DB2_V72
537 #endif
538 
539 #ifdef HACK_FOR_IBM_DB2_V72
540 # define DB2_V72_FIX_BYTE_ORDER(x) ((((x) & 0x31) == (x)) ? ((x) & 0x1) : (x))
541 # define DB2_V72_UNFIX_BYTE_ORDER(x) CPL_STATIC_CAST(unsigned char, OGRGeometry::bGenerate_DB2_V72_BYTE_ORDER ? ((x) | 0x30) : (x))
542 #else
543 # define DB2_V72_FIX_BYTE_ORDER(x) (x)
544 # define DB2_V72_UNFIX_BYTE_ORDER(x) (x)
545 #endif
546 
547 #endif /* #ifndef DOXYGEN_SKIP */
548 
552 #define ALTER_NAME_FLAG 0x1
553 
557 #define ALTER_TYPE_FLAG 0x2
558 
562 #define ALTER_WIDTH_PRECISION_FLAG 0x4
563 
568 #define ALTER_NULLABLE_FLAG 0x8
569 
574 #define ALTER_DEFAULT_FLAG 0x10
575 
579 #define ALTER_ALL_FLAG (ALTER_NAME_FLAG | ALTER_TYPE_FLAG | ALTER_WIDTH_PRECISION_FLAG | ALTER_NULLABLE_FLAG | ALTER_DEFAULT_FLAG)
580 
585 #define OGR_F_VAL_NULL 0x00000001
586 
591 #define OGR_F_VAL_GEOM_TYPE 0x00000002
592 
597 #define OGR_F_VAL_WIDTH 0x00000004
598 
606 #define OGR_F_VAL_ALLOW_NULL_WHEN_DEFAULT 0x00000008
607 
614 #define OGR_F_VAL_ALLOW_DIFFERENT_GEOM_DIM 0x00000010
615 
620 #define OGR_F_VAL_ALL (0x7FFFFFFF & ~OGR_F_VAL_ALLOW_DIFFERENT_GEOM_DIM)
621 
622 /************************************************************************/
623 /* ogr_feature.h related definitions. */
624 /************************************************************************/
625 
632 typedef enum
648  OFTMaxType = 13
649 } OGRFieldType;
650 
660 typedef enum
661 { OFSTNone = 0,
672  OFSTJSON = 4,
673  OFSTMaxSubType = 4
675 
680 typedef enum
681 {
682  OJUndefined = 0,
683  OJLeft = 1,
684  OJRight = 2
686 
688 #define OGRNullFID -1
689 
690 /* Special value for an unknown field type. This should only be used
691  * while reading a file. At the end of file any unknown types should
692  * be set to OFTString.
693 */
695 #define OGRUnknownType static_cast<OGRFieldType>(-1)
696 
703 #define OGRUnsetMarker -21121
704 
711 #define OGRNullMarker -21122
712 
713 /************************************************************************/
714 /* OGRField */
715 /************************************************************************/
716 
721 typedef union {
723  int Integer;
724  GIntBig Integer64;
725  double Real;
726  char *String;
727 
728  struct {
729  int nCount;
730  int *paList;
731  } IntegerList;
732 
733  struct {
734  int nCount;
735  GIntBig *paList;
736  } Integer64List;
737 
738  struct {
739  int nCount;
740  double *paList;
741  } RealList;
742 
743  struct {
744  int nCount;
745  char **paList;
746  } StringList;
747 
748  struct {
749  int nCount;
750  GByte *paData;
751  } Binary;
752 
753  struct {
754  int nMarker1;
755  int nMarker2;
756  int nMarker3;
757  } Set;
758 
759  struct {
760  GInt16 Year;
761  GByte Month;
762  GByte Day;
763  GByte Hour;
764  GByte Minute;
765  GByte TZFlag; /* 0=unknown, 1=localtime(ambiguous),
766  100=GMT, 104=GMT+1, 80=GMT-5, etc */
767  GByte Reserved; /* must be set to 0 */
768  float Second; /* with millisecond accuracy. at the end of the structure, so as to keep it 12 bytes on 32 bit */
769  } Date;
771 } OGRField;
772 
773 #ifdef __cplusplus
774 
775 inline int OGR_GET_MS(float fSec) {
776  if( CPLIsNan(fSec) ) return 0;
777  if( fSec >= 999 ) return 999;
778  if( fSec <= 0 ) return 0;
779  const float fValue = (fSec - static_cast<int>(fSec)) * 1000 + 0.5f;
780  return static_cast<int>(fValue);
781 }
782 #endif // __cplusplus
783 
784 int CPL_DLL OGRParseDate( const char *pszInput, OGRField *psOutput,
785  int nOptions );
786 
787 /* -------------------------------------------------------------------- */
788 /* Constants from ogrsf_frmts.h for capabilities. */
789 /* -------------------------------------------------------------------- */
790 #define OLCRandomRead "RandomRead"
791 #define OLCSequentialWrite "SequentialWrite"
792 #define OLCRandomWrite "RandomWrite"
793 #define OLCFastSpatialFilter "FastSpatialFilter"
794 #define OLCFastFeatureCount "FastFeatureCount"
795 #define OLCFastGetExtent "FastGetExtent"
796 #define OLCCreateField "CreateField"
797 #define OLCDeleteField "DeleteField"
798 #define OLCReorderFields "ReorderFields"
799 #define OLCAlterFieldDefn "AlterFieldDefn"
800 #define OLCTransactions "Transactions"
801 #define OLCDeleteFeature "DeleteFeature"
802 #define OLCFastSetNextByIndex "FastSetNextByIndex"
803 #define OLCStringsAsUTF8 "StringsAsUTF8"
804 #define OLCIgnoreFields "IgnoreFields"
805 #define OLCCreateGeomField "CreateGeomField"
806 #define OLCCurveGeometries "CurveGeometries"
807 #define OLCMeasuredGeometries "MeasuredGeometries"
809 #define ODsCCreateLayer "CreateLayer"
810 #define ODsCDeleteLayer "DeleteLayer"
811 #define ODsCCreateGeomFieldAfterCreateLayer "CreateGeomFieldAfterCreateLayer"
812 #define ODsCCurveGeometries "CurveGeometries"
813 #define ODsCTransactions "Transactions"
814 #define ODsCEmulatedTransactions "EmulatedTransactions"
815 #define ODsCMeasuredGeometries "MeasuredGeometries"
816 #define ODsCRandomLayerRead "RandomLayerRead"
817 #define ODsCRandomLayerWrite "RandomLayerWrite "
819 #define ODrCCreateDataSource "CreateDataSource"
820 #define ODrCDeleteDataSource "DeleteDataSource"
822 /* -------------------------------------------------------------------- */
823 /* Layer metadata items. */
824 /* -------------------------------------------------------------------- */
829 #define OLMD_FID64 "OLMD_FID64"
830 
831 /************************************************************************/
832 /* ogr_featurestyle.h related definitions. */
833 /************************************************************************/
834 
840 {
842  OGRSTCPen = 1,
846  OGRSTCVector = 5
848 
853 {
857  OGRSTUMM = 3,
858  OGRSTUCM = 4,
859  OGRSTUInches = 5
861 
866 {
875 #ifndef DOXYGEN_SKIP
876  OGRSTPenLast = 8
877 #endif
879 
884 {
893 #ifndef DOXYGEN_SKIP
894  OGRSTBrushLast = 8
895 #endif
896 
898 
903 {
916 #ifndef DOXYGEN_SKIP
917  OGRSTSymbolLast = 12
918 #endif
920 
925 {
947 #ifndef DOXYGEN_SKIP
948  OGRSTLabelLast = 21
949 #endif
951 
952 /* ------------------------------------------------------------------- */
953 /* Version checking */
954 /* -------------------------------------------------------------------- */
955 
956 #ifndef DOXYGEN_SKIP
957 
958 /* Note to developers : please keep this section in sync with gdal.h */
959 
960 #ifndef GDAL_VERSION_INFO_DEFINED
961 #define GDAL_VERSION_INFO_DEFINED
962 const char CPL_DLL * CPL_STDCALL GDALVersionInfo( const char * );
963 #endif
964 
965 #ifndef GDAL_CHECK_VERSION
966 
978 int CPL_DLL CPL_STDCALL GDALCheckVersion( int nVersionMajor, int nVersionMinor,
979  const char* pszCallingComponentName);
980 
982 #define GDAL_CHECK_VERSION(pszCallingComponentName) \
983  GDALCheckVersion(GDAL_VERSION_MAJOR, GDAL_VERSION_MINOR, pszCallingComponentName)
984 
985 #endif
986 
987 #endif /* #ifndef DOXYGEN_SKIP */
988 
989 CPL_C_END
990 
991 #endif /* ndef OGR_CORE_H_INCLUDED */
OGRSTSymbolStep
@ OGRSTSymbolStep
Step.
Definition: ogr_core.h:910
MAX
#define MAX(a, b)
Macro to compute the maximum of 2 values.
Definition: cpl_port.h:410
GDALCheckVersion
int GDALCheckVersion(int nVersionMajor, int nVersionMinor, const char *pszCallingComponentName)
Return TRUE if GDAL library version at runtime matches nVersionMajor.nVersionMinor.
Definition: gdal_misc.cpp:2308
OGRSTLabelStretch
@ OGRSTLabelStretch
Stretch.
Definition: ogr_core.h:942
OGREnvelope3D::Merge
void Merge(double dfX, double dfY, double dfZ)
Update the current object by computing its union with the provided point.
Definition: ogr_core.h:222
wkbTINM
@ wkbTINM
ISO SQL/MM Part 3.
Definition: ogr_core.h:406
OGREnvelope::OGREnvelope
OGREnvelope(const OGREnvelope &oOther)
Copy constructor.
Definition: ogr_core.h:69
GDALVersionInfo
const char * GDALVersionInfo(const char *)
Get runtime version information.
Definition: gdal_misc.cpp:2186
wkbSurfaceM
@ wkbSurfaceM
ISO SQL/MM Part 3.
Definition: ogr_core.h:404
wkbPointZM
@ wkbPointZM
ISO SQL/MM Part 3.
Definition: ogr_core.h:409
wkbCurvePolygonZM
@ wkbCurvePolygonZM
ISO SQL/MM Part 3.
Definition: ogr_core.h:418
OGRSTBrushSize
@ OGRSTBrushSize
Size.
Definition: ogr_core.h:889
GByte
unsigned char GByte
Unsigned byte type.
Definition: cpl_port.h:215
OGRSTLabelStrikeout
@ OGRSTLabelStrikeout
Strike out.
Definition: ogr_core.h:941
OFSTFloat32
@ OFSTFloat32
Single precision (32 bit) floating point.
Definition: ogr_core.h:668
OFTWideString
@ OFTWideString
deprecated
Definition: ogr_core.h:640
OGRSTUInches
@ OGRSTUInches
Inch.
Definition: ogr_core.h:859
OGRERR_UNSUPPORTED_GEOMETRY_TYPE
#define OGRERR_UNSUPPORTED_GEOMETRY_TYPE
Unsupported geometry type.
Definition: ogr_core.h:323
GInt16
short GInt16
Int16 type.
Definition: cpl_port.h:211
OGR_GT_GetCollection
OGRwkbGeometryType OGR_GT_GetCollection(OGRwkbGeometryType eType)
Returns the collection type that can contain the passed geometry type.
Definition: ogrgeometry.cpp:6626
wkbMultiCurveZM
@ wkbMultiCurveZM
ISO SQL/MM Part 3.
Definition: ogr_core.h:419
OGRSTLabelPerp
@ OGRSTLabelPerp
Perpendicular.
Definition: ogr_core.h:936
OGRSTUCM
@ OGRSTUCM
Centimeter.
Definition: ogr_core.h:858
OFSTInt16
@ OFSTInt16
Signed 16-bit integer.
Definition: ogr_core.h:666
wkbMultiLineStringZM
@ wkbMultiLineStringZM
ISO SQL/MM Part 3.
Definition: ogr_core.h:413
OFTBinary
@ OFTBinary
Raw Binary data.
Definition: ogr_core.h:642
OGRSTSymbolPriority
@ OGRSTSymbolPriority
Priority.
Definition: ogr_core.h:913
wkbPoint
@ wkbPoint
0-dimensional geometric object, standard WKB
Definition: ogr_core.h:349
OGREnvelope::MinX
double MinX
Minimum X value.
Definition: ogr_core.h:78
OGRSTLabelBColor
@ OGRSTLabelBColor
Background color.
Definition: ogr_core.h:931
OFSTBoolean
@ OFSTBoolean
Boolean integer.
Definition: ogr_core.h:664
OGRSTLabelFColor
@ OGRSTLabelFColor
Foreground color.
Definition: ogr_core.h:930
wkbCurvePolygonZ
@ wkbCurvePolygonZ
wkbCurvePolygon with Z component.
Definition: ogr_core.h:382
wkbMultiSurfaceZM
@ wkbMultiSurfaceZM
ISO SQL/MM Part 3.
Definition: ogr_core.h:420
wkbTriangleZ
@ wkbTriangleZ
ISO SQL/MM Part 3.
Definition: ogr_core.h:389
OGR_GT_IsSubClassOf
int OGR_GT_IsSubClassOf(OGRwkbGeometryType eType, OGRwkbGeometryType eSuperType)
Returns if a type is a subclass of another one.
Definition: ogrgeometry.cpp:6562
wkbCompoundCurveZM
@ wkbCompoundCurveZM
ISO SQL/MM Part 3.
Definition: ogr_core.h:417
wkbMultiSurfaceM
@ wkbMultiSurfaceM
ISO SQL/MM Part 3.
Definition: ogr_core.h:402
wkbMultiPolygon
@ wkbMultiPolygon
GeometryCollection of Polygons, standard WKB.
Definition: ogr_core.h:357
OGR_GT_Flatten
OGRwkbGeometryType OGR_GT_Flatten(OGRwkbGeometryType eType)
Returns the 2D geometry type corresponding to the passed geometry type.
Definition: ogrgeometry.cpp:6414
wkbMultiPoint25D
@ wkbMultiPoint25D
2.5D extension as per 99-402
Definition: ogr_core.h:432
wkbNDR
@ wkbNDR
LSB/Intel/Vax: Least Significant Byte First
Definition: ogr_core.h:530
ogr_style_tool_param_label_id
ogr_style_tool_param_label_id
List of parameters for use with OGRStyleLabel.
Definition: ogr_core.h:925
OGRSTClassId
enum ogr_style_tool_class_id OGRSTClassId
OGRStyleTool derived class types (returned by GetType()).
OGRSTBrushParam
enum ogr_style_tool_param_brush_id OGRSTBrushParam
List of parameters for use with OGRStyleBrush.
wkbVariantOldOgc
@ wkbVariantOldOgc
Old-style 99-402 extended dimension (Z) WKB types.
Definition: ogr_core.h:463
OGR_GT_IsNonLinear
int OGR_GT_IsNonLinear(OGRwkbGeometryType)
Return if a geometry type is a non-linear geometry type.
Definition: ogrgeometry.cpp:6816
wkbCompoundCurve
@ wkbCompoundCurve
sequence of contiguous curves, ISO SQL/MM Part 3.
Definition: ogr_core.h:363
OGRSTLabelItalic
@ OGRSTLabelItalic
Italic.
Definition: ogr_core.h:938
OGR_GT_GetLinear
OGRwkbGeometryType OGR_GT_GetLinear(OGRwkbGeometryType eType)
Returns the non-curve geometry type that can contain the passed geometry type.
Definition: ogrgeometry.cpp:6731
OGRMergeGeometryTypes
OGRwkbGeometryType OGRMergeGeometryTypes(OGRwkbGeometryType eMain, OGRwkbGeometryType eExtra)
Find common geometry type.
Definition: ogrgeometry.cpp:2701
wkbPolygon25D
@ wkbPolygon25D
2.5D extension as per 99-402
Definition: ogr_core.h:431
OGRSTPenWidth
@ OGRSTPenWidth
Width.
Definition: ogr_core.h:868
OFTWideStringList
@ OFTWideStringList
deprecated
Definition: ogr_core.h:641
wkbPolygonZM
@ wkbPolygonZM
ISO SQL/MM Part 3.
Definition: ogr_core.h:411
OGRSTLabelParam
enum ogr_style_tool_param_label_id OGRSTLabelParam
List of parameters for use with OGRStyleLabel.
OGR_GT_SetModifier
OGRwkbGeometryType OGR_GT_SetModifier(OGRwkbGeometryType eType, int bSetZ, int bSetM)
Returns a XY, XYZ, XYM or XYZM geometry type depending on parameter.
Definition: ogrgeometry.cpp:6535
wkbVariantPostGIS1
@ wkbVariantPostGIS1
PostGIS 1.X has different codes for CurvePolygon, MultiCurve and MultiSurface.
Definition: ogr_core.h:465
OFTDateTime
@ OFTDateTime
Date and Time.
Definition: ogr_core.h:645
wkbPolygonM
@ wkbPolygonM
ISO SQL/MM Part 3.
Definition: ogr_core.h:393
wkbTriangleM
@ wkbTriangleM
ISO SQL/MM Part 3.
Definition: ogr_core.h:407
OGREnvelope3D::Contains
int Contains(OGREnvelope3D const &other) const
Return whether the current object contains the other rectangle.
Definition: ogr_core.h:269
OGRSTLabelAdjHor
@ OGRSTLabelAdjHor
OBSOLETE; do not use.
Definition: ogr_core.h:943
wkbCircularString
@ wkbCircularString
one or more circular arc segments connected end to end, ISO SQL/MM Part 3.
Definition: ogr_core.h:361
OGRSTLabelTextString
@ OGRSTLabelTextString
Text string.
Definition: ogr_core.h:928
OGRSTPenParam
enum ogr_style_tool_param_pen_id OGRSTPenParam
List of parameters for use with OGRStylePen.
wkbMultiPolygonZM
@ wkbMultiPolygonZM
ISO SQL/MM Part 3.
Definition: ogr_core.h:414
ogr_style_tool_param_symbol_id
ogr_style_tool_param_symbol_id
List of parameters for use with OGRStyleSymbol.
Definition: ogr_core.h:903
wkbCurveM
@ wkbCurveM
ISO SQL/MM Part 3.
Definition: ogr_core.h:403
MIN
#define MIN(a, b)
Macro to compute the minimum of 2 values.
Definition: cpl_port.h:408
OGRSTLabelPlacement
@ OGRSTLabelPlacement
Placement.
Definition: ogr_core.h:932
OGREnvelope3D::MinZ
double MinZ
Minimum Z value.
Definition: ogr_core.h:196
OGRSTCSymbol
@ OGRSTCSymbol
Symbol.
Definition: ogr_core.h:844
OGRSTCLabel
@ OGRSTCLabel
Label.
Definition: ogr_core.h:845
wkbPolyhedralSurfaceZM
@ wkbPolyhedralSurfaceZM
ISO SQL/MM Part 3.
Definition: ogr_core.h:423
wkbPoint25D
@ wkbPoint25D
2.5D extension as per 99-402
Definition: ogr_core.h:429
wkbSurfaceZM
@ wkbSurfaceZM
ISO SQL/MM Part 3.
Definition: ogr_core.h:422
wkbCircularStringZM
@ wkbCircularStringZM
ISO SQL/MM Part 3.
Definition: ogr_core.h:416
OGRSTUnitId
enum ogr_style_tool_units_id OGRSTUnitId
List of units supported by OGRStyleTools.
wkbCircularStringZ
@ wkbCircularStringZ
wkbCircularString with Z component.
Definition: ogr_core.h:380
OGRBoolean
int OGRBoolean
Type for a OGR boolean.
Definition: ogr_core.h:334
wkbCurve
@ wkbCurve
Curve (abstract type).
Definition: ogr_core.h:369
OGRSTCNone
@ OGRSTCNone
None.
Definition: ogr_core.h:841
wkbMultiPointZM
@ wkbMultiPointZM
ISO SQL/MM Part 3.
Definition: ogr_core.h:412
OGRSTUPixel
@ OGRSTUPixel
Pixel.
Definition: ogr_core.h:855
OGRSTPenPriority
@ OGRSTPenPriority
Priority.
Definition: ogr_core.h:874
OGRMergeGeometryTypesEx
OGRwkbGeometryType OGRMergeGeometryTypesEx(OGRwkbGeometryType eMain, OGRwkbGeometryType eExtra, int bAllowPromotingToCurves)
Find common geometry type.
Definition: ogrgeometry.cpp:2738
OGREnvelope3D::Intersects
int Intersects(OGREnvelope3D const &other) const
Return whether the current object intersects with the other rectangle.
Definition: ogr_core.h:261
wkbTINZM
@ wkbTINZM
ISO SQL/MM Part 3.
Definition: ogr_core.h:424
OGR_GT_IsSurface
int OGR_GT_IsSurface(OGRwkbGeometryType)
Return if a geometry type is an instance of Surface.
Definition: ogrgeometry.cpp:6794
OGREnvelope::MaxX
double MaxX
Maximum X value.
Definition: ogr_core.h:81
OGRSTSymbolDx
@ OGRSTSymbolDx
Dx.
Definition: ogr_core.h:908
wkbLineStringZM
@ wkbLineStringZM
ISO SQL/MM Part 3.
Definition: ogr_core.h:410
CPL_C_START
#define CPL_C_START
Macro to start a block of C symbols.
Definition: cpl_port.h:337
OGR_GT_SetM
OGRwkbGeometryType OGR_GT_SetM(OGRwkbGeometryType eType)
Returns the measured geometry type corresponding to the passed geometry type.
Definition: ogrgeometry.cpp:6508
OGRERR_UNSUPPORTED_SRS
#define OGRERR_UNSUPPORTED_SRS
Unsupported SRS.
Definition: ogr_core.h:327
ogr_style_tool_class_id
ogr_style_tool_class_id
OGRStyleTool derived class types (returned by GetType()).
Definition: ogr_core.h:840
OGREnvelope3D::operator=
OGREnvelope3D & operator=(const OGREnvelope3D &)=default
Assignment operator.
OGRParseDate
int OGRParseDate(const char *pszInput, OGRField *psOutput, int nOptions)
Parse date string.
Definition: ogrutils.cpp:946
OGRSTLabelOColor
@ OGRSTLabelOColor
Outline color.
Definition: ogr_core.h:946
OGRwkbByteOrder
OGRwkbByteOrder
Enumeration to describe byte order.
Definition: ogr_core.h:528
OGRField
OGRFeature field attribute value union.
Definition: ogr_core.h:721
OGRSTSymbolAngle
@ OGRSTSymbolAngle
Angle.
Definition: ogr_core.h:905
OGRSTSymbolFontName
@ OGRSTSymbolFontName
Font name.
Definition: ogr_core.h:914
OGRERR_UNSUPPORTED_OPERATION
#define OGRERR_UNSUPPORTED_OPERATION
Unsupported operation.
Definition: ogr_core.h:324
wkbCurvePolygon
@ wkbCurvePolygon
planar surface, defined by 1 exterior boundary and zero or more interior boundaries,...
Definition: ogr_core.h:364
OGREnvelope3D::IsInit
int IsInit() const
Return whether the object has been initialized, that is, is non empty.
Definition: ogr_core.h:206
wkbLineStringM
@ wkbLineStringM
ISO SQL/MM Part 3.
Definition: ogr_core.h:392
OGRSTPenColor
@ OGRSTPenColor
Color.
Definition: ogr_core.h:867
OGRSTLabelDy
@ OGRSTLabelDy
Dy.
Definition: ogr_core.h:935
OGRERR_FAILURE
#define OGRERR_FAILURE
Failure.
Definition: ogr_core.h:326
OGRSTUMM
@ OGRSTUMM
Millimeter.
Definition: ogr_core.h:857
OGR_GT_GetCurve
OGRwkbGeometryType OGR_GT_GetCurve(OGRwkbGeometryType eType)
Returns the curve geometry type that can contain the passed geometry type.
Definition: ogrgeometry.cpp:6682
OFTString
@ OFTString
String of ASCII chars.
Definition: ogr_core.h:638
wkbMultiPolygon25D
@ wkbMultiPolygon25D
2.5D extension as per 99-402
Definition: ogr_core.h:434
wkbCircularStringM
@ wkbCircularStringM
ISO SQL/MM Part 3.
Definition: ogr_core.h:398
OFTIntegerList
@ OFTIntegerList
List of 32bit integers.
Definition: ogr_core.h:635
wkbMultiSurface
@ wkbMultiSurface
GeometryCollection of Surfaces, ISO SQL/MM Part 3.
Definition: ogr_core.h:368
OGRSTCBrush
@ OGRSTCBrush
Brush.
Definition: ogr_core.h:843
OGRERR_NOT_ENOUGH_MEMORY
#define OGRERR_NOT_ENOUGH_MEMORY
Not enough memory.
Definition: ogr_core.h:322
OGRSTLabelFontName
@ OGRSTLabelFontName
Font name.
Definition: ogr_core.h:926
OGRSTLabelPriority
@ OGRSTLabelPriority
Priority.
Definition: ogr_core.h:940
wkbPolyhedralSurface
@ wkbPolyhedralSurface
a contiguous collection of polygons, which share common boundary segments, ISO SQL/MM Part 3.
Definition: ogr_core.h:371
wkbCurvePolygonM
@ wkbCurvePolygonM
ISO SQL/MM Part 3.
Definition: ogr_core.h:400
CPL_C_END
#define CPL_C_END
Macro to end a block of C symbols.
Definition: cpl_port.h:339
wkbMultiPointM
@ wkbMultiPointM
ISO SQL/MM Part 3.
Definition: ogr_core.h:394
OGRSTLabelUnderline
@ OGRSTLabelUnderline
Underline.
Definition: ogr_core.h:939
wkbGeometryCollectionM
@ wkbGeometryCollectionM
ISO SQL/MM Part 3.
Definition: ogr_core.h:397
OGRSTCVector
@ OGRSTCVector
Vector.
Definition: ogr_core.h:846
OGRSTLabelAnchor
@ OGRSTLabelAnchor
Anchor.
Definition: ogr_core.h:933
OFTInteger
@ OFTInteger
Simple 32bit integer.
Definition: ogr_core.h:634
wkbVariantIso
@ wkbVariantIso
SFSQL 1.2 and ISO SQL/MM Part 3 extended dimension (Z&M) WKB types.
Definition: ogr_core.h:464
OGRSTLabelAngle
@ OGRSTLabelAngle
Angle.
Definition: ogr_core.h:929
OGR_GT_IsCurve
int OGR_GT_IsCurve(OGRwkbGeometryType)
Return if a geometry type is an instance of Curve.
Definition: ogrgeometry.cpp:6773
OGRSTSymbolDy
@ OGRSTSymbolDy
Dy.
Definition: ogr_core.h:909
OGRSTBrushDx
@ OGRSTBrushDx
Dx.
Definition: ogr_core.h:890
wkbNone
@ wkbNone
non-standard, for pure attribute records
Definition: ogr_core.h:377
OGREnvelope::MaxY
double MaxY
Maximum Y value.
Definition: ogr_core.h:87
OFTInteger64List
@ OFTInteger64List
List of 64bit integers.
Definition: ogr_core.h:647
wkbPolygon
@ wkbPolygon
planar 2-dimensional geometric object defined by 1 exterior boundary and 0 or more interior boundarie...
Definition: ogr_core.h:352
wkbMultiCurveM
@ wkbMultiCurveM
ISO SQL/MM Part 3.
Definition: ogr_core.h:401
OGREnvelope::Intersect
void Intersect(OGREnvelope const &sOther)
Update the current object by computing its intersection with the other rectangle.
Definition: ogr_core.h:117
wkbMultiLineString25D
@ wkbMultiLineString25D
2.5D extension as per 99-402
Definition: ogr_core.h:433
OGRJustification
OGRJustification
Display justification for field values.
Definition: ogr_core.h:681
wkbCompoundCurveM
@ wkbCompoundCurveM
ISO SQL/MM Part 3.
Definition: ogr_core.h:399
wkbPolyhedralSurfaceM
@ wkbPolyhedralSurfaceM
ISO SQL/MM Part 3.
Definition: ogr_core.h:405
OGRSTSymbolParam
enum ogr_style_tool_param_symbol_id OGRSTSymbolParam
List of parameters for use with OGRStyleSymbol.
OGREnvelope3D::OGREnvelope3D
OGREnvelope3D(const OGREnvelope3D &oOther)
Copy constructor.
Definition: ogr_core.h:186
OFSTNone
@ OFSTNone
No subtype.
Definition: ogr_core.h:662
OFTStringList
@ OFTStringList
Array of strings.
Definition: ogr_core.h:639
OGRSTBrushFColor
@ OGRSTBrushFColor
Foreground color.
Definition: ogr_core.h:885
wkbSurface
@ wkbSurface
Surface (abstract type).
Definition: ogr_core.h:370
OGREnvelope::Merge
void Merge(double dfX, double dfY)
Update the current object by computing its union with the provided point.
Definition: ogr_core.h:109
OGRSTBrushDy
@ OGRSTBrushDy
Dy.
Definition: ogr_core.h:891
wkbLinearRing
@ wkbLinearRing
non-standard, just for createGeometry()
Definition: ogr_core.h:378
OGRERR_NOT_ENOUGH_DATA
#define OGRERR_NOT_ENOUGH_DATA
Not enough data to deserialize.
Definition: ogr_core.h:321
OGRSTSymbolId
@ OGRSTSymbolId
Id.
Definition: ogr_core.h:904
OGRERR_CORRUPT_DATA
#define OGRERR_CORRUPT_DATA
Corrupt data.
Definition: ogr_core.h:325
OGRSTBrushBColor
@ OGRSTBrushBColor
Background color.
Definition: ogr_core.h:886
OFTTime
@ OFTTime
Time.
Definition: ogr_core.h:644
OGRSTUGround
@ OGRSTUGround
Ground unit.
Definition: ogr_core.h:854
OGRSTSymbolSize
@ OGRSTSymbolSize
Size.
Definition: ogr_core.h:907
OGREnvelope::MinY
double MinY
Minimum Y value.
Definition: ogr_core.h:84
OGRSTLabelHColor
@ OGRSTLabelHColor
Highlight color.
Definition: ogr_core.h:945
OGRErr
int OGRErr
Type for a OGR error.
Definition: ogr_core.h:318
wkbCompoundCurveZ
@ wkbCompoundCurveZ
wkbCompoundCurve with Z component.
Definition: ogr_core.h:381
OGRSTSymbolOffset
@ OGRSTSymbolOffset
Offset.
Definition: ogr_core.h:912
ogr_style_tool_param_pen_id
ogr_style_tool_param_pen_id
List of parameters for use with OGRStylePen.
Definition: ogr_core.h:866
GIntBig
long long GIntBig
Large signed integer type (generally 64-bit integer type).
Definition: cpl_port.h:248
OGRSTBrushId
@ OGRSTBrushId
Id.
Definition: ogr_core.h:887
ogr_style_tool_param_brush_id
ogr_style_tool_param_brush_id
List of parameters for use with OGRStyleBrush.
Definition: ogr_core.h:884
wkbCurveZ
@ wkbCurveZ
wkbCurve with Z component.
Definition: ogr_core.h:385
OGR_GT_HasZ
int OGR_GT_HasZ(OGRwkbGeometryType eType)
Return if the geometry type is a 3D geometry type.
Definition: ogrgeometry.cpp:6439
OGRwkbGeometryType
OGRwkbGeometryType
List of well known binary geometry types.
Definition: ogr_core.h:346
OGRSTPenCap
@ OGRSTPenCap
Cap.
Definition: ogr_core.h:872
OGR_GT_HasM
int OGR_GT_HasM(OGRwkbGeometryType eType)
Return if the geometry type is a measured type.
Definition: ogrgeometry.cpp:6463
wkbTINZ
@ wkbTINZ
ISO SQL/MM Part 3.
Definition: ogr_core.h:388
OGRSTCPen
@ OGRSTCPen
Pen.
Definition: ogr_core.h:842
OGRGeometryTypeToName
const char * OGRGeometryTypeToName(OGRwkbGeometryType eType)
Fetch a human readable name corresponding to an OGRwkbGeometryType value.
Definition: ogrgeometry.cpp:2478
OFTDate
@ OFTDate
Date.
Definition: ogr_core.h:643
cpl_port.h
Core portability definitions for CPL.
OGRSTPenPerOffset
@ OGRSTPenPerOffset
Perpendicular offset.
Definition: ogr_core.h:871
OGRFieldSubType
OGRFieldSubType
List of field subtypes.
Definition: ogr_core.h:661
OGREnvelope3D::Intersect
void Intersect(OGREnvelope3D const &sOther)
Update the current object by computing its intersection with the other rectangle.
Definition: ogr_core.h:232
wkbTriangleZM
@ wkbTriangleZM
ISO SQL/MM Part 3.
Definition: ogr_core.h:425
OGREnvelope::Contains
int Contains(OGREnvelope const &other) const
Return whether the current object contains the other rectangle.
Definition: ogr_core.h:149
OGREnvelope::OGREnvelope
OGREnvelope()
Default constructor.
Definition: ogr_core.h:61
wkbXDR
@ wkbXDR
MSB/Sun/Motoroloa: Most Significant Byte First
Definition: ogr_core.h:529
OGREnvelope3D
Simple container for a bounding region in 3D.
Definition: ogr_core.h:176
OGRSTBrushPriority
@ OGRSTBrushPriority
Priority.
Definition: ogr_core.h:892
OFTRealList
@ OFTRealList
List of doubles.
Definition: ogr_core.h:637
OGREnvelope::IsInit
int IsInit() const
Return whether the object has been initialized, that is, is non empty.
Definition: ogr_core.h:94
wkbGeometryCollection25D
@ wkbGeometryCollection25D
2.5D extension as per 99-402
Definition: ogr_core.h:435
OFSTJSON
@ OFSTJSON
JSON content.
Definition: ogr_core.h:672
ogr_style_tool_units_id
ogr_style_tool_units_id
List of units supported by OGRStyleTools.
Definition: ogr_core.h:853
wkbGeometryCollection
@ wkbGeometryCollection
geometric object that is a collection of 1 or more geometric objects, standard WKB
Definition: ogr_core.h:358
OGRFieldType
OGRFieldType
List of feature field types.
Definition: ogr_core.h:633
wkbMultiCurveZ
@ wkbMultiCurveZ
wkbMultiCurve with Z component.
Definition: ogr_core.h:383
OGRSTPenJoin
@ OGRSTPenJoin
Join.
Definition: ogr_core.h:873
wkbPolyhedralSurfaceZ
@ wkbPolyhedralSurfaceZ
ISO SQL/MM Part 3.
Definition: ogr_core.h:387
wkbMultiCurve
@ wkbMultiCurve
GeometryCollection of Curves, ISO SQL/MM Part 3.
Definition: ogr_core.h:367
OGRSTSymbolColor
@ OGRSTSymbolColor
Color.
Definition: ogr_core.h:906
wkbMultiPolygonM
@ wkbMultiPolygonM
ISO SQL/MM Part 3.
Definition: ogr_core.h:396
wkbLineString25D
@ wkbLineString25D
2.5D extension as per 99-402
Definition: ogr_core.h:430
OFTInteger64
@ OFTInteger64
Single 64bit integer.
Definition: ogr_core.h:646
wkbGeometryCollectionZM
@ wkbGeometryCollectionZM
ISO SQL/MM Part 3.
Definition: ogr_core.h:415
OGREnvelope
Simple container for a bounding region (rectangle)
Definition: ogr_core.h:58
OGRSTUPoints
@ OGRSTUPoints
Points.
Definition: ogr_core.h:856
OGREnvelope3D::MaxZ
double MaxZ
Maximum Z value.
Definition: ogr_core.h:199
OGRERR_NONE
#define OGRERR_NONE
Success.
Definition: ogr_core.h:320
OGREnvelope3D::Merge
void Merge(OGREnvelope3D const &sOther)
Update the current object by computing its union with the other rectangle.
Definition: ogr_core.h:212
wkbMultiSurfaceZ
@ wkbMultiSurfaceZ
wkbMultiSurface with Z component.
Definition: ogr_core.h:384
OGRSTLabelAdjVert
@ OGRSTLabelAdjVert
OBSOLETE; do not use.
Definition: ogr_core.h:944
OGREnvelope::operator=
OGREnvelope & operator=(const OGREnvelope &)=default
Assignment operator.
OGRSTSymbolOColor
@ OGRSTSymbolOColor
Outline color.
Definition: ogr_core.h:915
OGRSTLabelDx
@ OGRSTLabelDx
Dx.
Definition: ogr_core.h:934
wkbTriangle
@ wkbTriangle
a Triangle.
Definition: ogr_core.h:375
wkbLineString
@ wkbLineString
1-dimensional geometric object with linear interpolation between Points, standard WKB
Definition: ogr_core.h:350
OGRSTPenId
@ OGRSTPenId
Id.
Definition: ogr_core.h:870
wkbMultiLineString
@ wkbMultiLineString
GeometryCollection of LineStrings, standard WKB.
Definition: ogr_core.h:356
OGREnvelope3D::OGREnvelope3D
OGREnvelope3D()
Default constructor.
Definition: ogr_core.h:179
wkbCurveZM
@ wkbCurveZM
ISO SQL/MM Part 3.
Definition: ogr_core.h:421
OGR_GET_MS
int OGR_GET_MS(float fSec)
Return the number of milliseconds from a datetime with decimal seconds.
Definition: ogr_core.h:775
OFTReal
@ OFTReal
Double Precision floating point.
Definition: ogr_core.h:636
OGRSTSymbolPerp
@ OGRSTSymbolPerp
Perpendicular.
Definition: ogr_core.h:911
OGRSTBrushAngle
@ OGRSTBrushAngle
Angle.
Definition: ogr_core.h:888
OGRERR_NON_EXISTING_FEATURE
#define OGRERR_NON_EXISTING_FEATURE
Non existing feature.
Definition: ogr_core.h:329
OGRSTPenPattern
@ OGRSTPenPattern
Pattern.
Definition: ogr_core.h:869
wkbMultiLineStringM
@ wkbMultiLineStringM
ISO SQL/MM Part 3.
Definition: ogr_core.h:395
OGRERR_INVALID_HANDLE
#define OGRERR_INVALID_HANDLE
Invalid handle.
Definition: ogr_core.h:328
OGR_GT_SetZ
OGRwkbGeometryType OGR_GT_SetZ(OGRwkbGeometryType eType)
Returns the 3D geometry type corresponding to the passed geometry type.
Definition: ogrgeometry.cpp:6485
OGREnvelope::Merge
void Merge(OGREnvelope const &sOther)
Update the current object by computing its union with the other rectangle.
Definition: ogr_core.h:101
wkbUnknown
@ wkbUnknown
unknown type, non-standard
Definition: ogr_core.h:347
wkbTIN
@ wkbTIN
a PolyhedralSurface consisting only of Triangle patches ISO SQL/MM Part 3.
Definition: ogr_core.h:373
OGRSTLabelSize
@ OGRSTLabelSize
Size.
Definition: ogr_core.h:927
OGREnvelope::Intersects
int Intersects(OGREnvelope const &other) const
Return whether the current object intersects with the other rectangle.
Definition: ogr_core.h:142
OGRSTLabelBold
@ OGRSTLabelBold
Bold.
Definition: ogr_core.h:937
OGRwkbVariant
OGRwkbVariant
Output variants of WKB we support.
Definition: ogr_core.h:462
wkbPointM
@ wkbPointM
ISO SQL/MM Part 3.
Definition: ogr_core.h:391
wkbMultiPoint
@ wkbMultiPoint
GeometryCollection of Points, standard WKB.
Definition: ogr_core.h:355
wkbSurfaceZ
@ wkbSurfaceZ
wkbSurface with Z component.
Definition: ogr_core.h:386