PostGIS  3.0.6dev-r@@SVN_REVISION@@

◆ lwgeom_twkb_type()

static uint8_t lwgeom_twkb_type ( const LWGEOM geom)
static

Definition at line 31 of file lwout_twkb.c.

32 {
33  uint8_t twkb_type = 0;
34 
35  LWDEBUGF(2, "Entered lwgeom_twkb_type",0);
36 
37  switch ( geom->type )
38  {
39  case POINTTYPE:
40  twkb_type = WKB_POINT_TYPE;
41  break;
42  case LINETYPE:
43  twkb_type = WKB_LINESTRING_TYPE;
44  break;
45  case TRIANGLETYPE:
46  case POLYGONTYPE:
47  twkb_type = WKB_POLYGON_TYPE;
48  break;
49  case MULTIPOINTTYPE:
50  twkb_type = WKB_MULTIPOINT_TYPE;
51  break;
52  case MULTILINETYPE:
53  twkb_type = WKB_MULTILINESTRING_TYPE;
54  break;
55  case MULTIPOLYGONTYPE:
56  twkb_type = WKB_MULTIPOLYGON_TYPE;
57  break;
58  case TINTYPE:
59  case COLLECTIONTYPE:
60  twkb_type = WKB_GEOMETRYCOLLECTION_TYPE;
61  break;
62  default:
63  lwerror("%s: Unsupported geometry type: %s", __func__, lwtype_name(geom->type));
64  }
65  return twkb_type;
66 }
#define COLLECTIONTYPE
Definition: liblwgeom.h:122
#define MULTILINETYPE
Definition: liblwgeom.h:120
#define LINETYPE
Definition: liblwgeom.h:117
#define MULTIPOINTTYPE
Definition: liblwgeom.h:119
#define POINTTYPE
LWTYPE numbers, used internally by PostGIS.
Definition: liblwgeom.h:116
#define TINTYPE
Definition: liblwgeom.h:130
#define MULTIPOLYGONTYPE
Definition: liblwgeom.h:121
#define POLYGONTYPE
Definition: liblwgeom.h:118
const char * lwtype_name(uint8_t type)
Return the type name string associated with a type number (e.g.
Definition: lwutil.c:216
#define TRIANGLETYPE
Definition: liblwgeom.h:129
#define WKB_GEOMETRYCOLLECTION_TYPE
#define WKB_MULTIPOLYGON_TYPE
#define WKB_MULTIPOINT_TYPE
#define WKB_POINT_TYPE
Well-Known Binary (WKB) Geometry Types.
#define WKB_MULTILINESTRING_TYPE
#define WKB_LINESTRING_TYPE
#define WKB_POLYGON_TYPE
#define LWDEBUGF(level, msg,...)
Definition: lwgeom_log.h:88
void lwerror(const char *fmt,...)
Write a notice out to the error handler.
Definition: lwutil.c:190
uint8_t type
Definition: liblwgeom.h:448

References COLLECTIONTYPE, LINETYPE, LWDEBUGF, lwerror(), lwtype_name(), MULTILINETYPE, MULTIPOINTTYPE, MULTIPOLYGONTYPE, POINTTYPE, POLYGONTYPE, TINTYPE, TRIANGLETYPE, LWGEOM::type, WKB_GEOMETRYCOLLECTION_TYPE, WKB_LINESTRING_TYPE, WKB_MULTILINESTRING_TYPE, WKB_MULTIPOINT_TYPE, WKB_MULTIPOLYGON_TYPE, WKB_POINT_TYPE, and WKB_POLYGON_TYPE.

Referenced by lwgeom_write_to_buffer().

Here is the call graph for this function:
Here is the caller graph for this function: