PostGIS 3.6.2dev-r@@SVN_REVISION@@
Loading...
Searching...
No Matches

◆ lwgeom_construct_empty()

LWGEOM * lwgeom_construct_empty ( uint8_t  type,
int32_t  srid,
char  hasz,
char  hasm 
)
extern

Definition at line 2191 of file lwgeom.c.

2192{
2193 switch(type)
2194 {
2195 case POINTTYPE:
2196 return lwpoint_as_lwgeom(lwpoint_construct_empty(srid, hasz, hasm));
2197 case LINETYPE:
2198 return lwline_as_lwgeom(lwline_construct_empty(srid, hasz, hasm));
2199 case POLYGONTYPE:
2200 return lwpoly_as_lwgeom(lwpoly_construct_empty(srid, hasz, hasm));
2201 case CURVEPOLYTYPE:
2202 return lwcurvepoly_as_lwgeom(lwcurvepoly_construct_empty(srid, hasz, hasm));
2203 case CIRCSTRINGTYPE:
2204 return lwcircstring_as_lwgeom(lwcircstring_construct_empty(srid, hasz, hasm));
2205 case TRIANGLETYPE:
2206 return lwtriangle_as_lwgeom(lwtriangle_construct_empty(srid, hasz, hasm));
2207 case COMPOUNDTYPE:
2208 case MULTIPOINTTYPE:
2209 case MULTILINETYPE:
2210 case MULTIPOLYGONTYPE:
2211 case COLLECTIONTYPE:
2212 return lwcollection_as_lwgeom(lwcollection_construct_empty(type, srid, hasz, hasm));
2213 default:
2214 lwerror("lwgeom_construct_empty: unsupported geometry type: %s",
2215 lwtype_name(type));
2216 return NULL;
2217 }
2218}
const char * lwtype_name(uint8_t type)
Return the type name string associated with a type number (e.g.
Definition lwutil.c:216
#define COLLECTIONTYPE
Definition liblwgeom.h:108
#define COMPOUNDTYPE
Definition liblwgeom.h:110
#define CURVEPOLYTYPE
Definition liblwgeom.h:111
LWCURVEPOLY * lwcurvepoly_construct_empty(int32_t srid, char hasz, char hasm)
Definition lwcurvepoly.c:35
#define MULTILINETYPE
Definition liblwgeom.h:106
#define LINETYPE
Definition liblwgeom.h:103
#define MULTIPOINTTYPE
Definition liblwgeom.h:105
LWTRIANGLE * lwtriangle_construct_empty(int32_t srid, char hasz, char hasm)
Definition lwtriangle.c:58
#define POINTTYPE
LWTYPE numbers, used internally by PostGIS.
Definition liblwgeom.h:102
#define MULTIPOLYGONTYPE
Definition liblwgeom.h:107
#define POLYGONTYPE
Definition liblwgeom.h:104
#define CIRCSTRINGTYPE
Definition liblwgeom.h:109
LWPOINT * lwpoint_construct_empty(int32_t srid, char hasz, char hasm)
Definition lwpoint.c:151
LWCOLLECTION * lwcollection_construct_empty(uint8_t type, int32_t srid, char hasz, char hasm)
#define TRIANGLETYPE
Definition liblwgeom.h:115
LWCIRCSTRING * lwcircstring_construct_empty(int32_t srid, char hasz, char hasm)
LWPOLY * lwpoly_construct_empty(int32_t srid, char hasz, char hasm)
Definition lwpoly.c:161
LWLINE * lwline_construct_empty(int32_t srid, char hasz, char hasm)
Definition lwline.c:55
LWGEOM * lwpoint_as_lwgeom(const LWPOINT *obj)
Definition lwgeom.c:344
LWGEOM * lwcurvepoly_as_lwgeom(const LWCURVEPOLY *obj)
Definition lwgeom.c:319
LWGEOM * lwtriangle_as_lwgeom(const LWTRIANGLE *obj)
Definition lwgeom.c:334
LWGEOM * lwline_as_lwgeom(const LWLINE *obj)
Definition lwgeom.c:339
LWGEOM * lwcircstring_as_lwgeom(const LWCIRCSTRING *obj)
Definition lwgeom.c:314
LWGEOM * lwpoly_as_lwgeom(const LWPOLY *obj)
Definition lwgeom.c:329
LWGEOM * lwcollection_as_lwgeom(const LWCOLLECTION *obj)
Definition lwgeom.c:309
void void lwerror(const char *fmt,...) __attribute__((format(printf
Write a notice out to the error handler.

References CIRCSTRINGTYPE, COLLECTIONTYPE, COMPOUNDTYPE, CURVEPOLYTYPE, LINETYPE, lwcircstring_as_lwgeom(), lwcircstring_construct_empty(), lwcollection_as_lwgeom(), lwcollection_construct_empty(), lwcurvepoly_as_lwgeom(), lwcurvepoly_construct_empty(), lwerror(), lwline_as_lwgeom(), lwline_construct_empty(), lwpoint_as_lwgeom(), lwpoint_construct_empty(), lwpoly_as_lwgeom(), lwpoly_construct_empty(), lwtriangle_as_lwgeom(), lwtriangle_construct_empty(), lwtype_name(), MULTILINETYPE, MULTIPOINTTYPE, MULTIPOLYGONTYPE, POINTTYPE, POLYGONTYPE, and TRIANGLETYPE.

Referenced by gserialized_list_union(), lwgeom_boundary(), pgis_union_geometry_array(), ST_BoundingDiagonal(), ST_ClipByBox2d(), and ST_CollectionExtract().

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