PostGIS  3.0.6dev-r@@SVN_REVISION@@

◆ lwgeom_summary()

char* lwgeom_summary ( const LWGEOM lwgeom,
int  offset 
)

Definition at line 166 of file lwgeom_debug.c.

167 {
168  char *result;
169 
170  switch (lwgeom->type)
171  {
172  case POINTTYPE:
173  return lwpoint_summary((LWPOINT *)lwgeom, offset);
174 
175  case CIRCSTRINGTYPE:
176  case TRIANGLETYPE:
177  case LINETYPE:
178  return lwline_summary((LWLINE *)lwgeom, offset);
179 
180  case POLYGONTYPE:
181  return lwpoly_summary((LWPOLY *)lwgeom, offset);
182 
183  case TINTYPE:
184  case MULTISURFACETYPE:
185  case MULTICURVETYPE:
186  case CURVEPOLYTYPE:
187  case COMPOUNDTYPE:
188  case MULTIPOINTTYPE:
189  case MULTILINETYPE:
190  case MULTIPOLYGONTYPE:
191  case COLLECTIONTYPE:
192  return lwcollection_summary((LWCOLLECTION *)lwgeom, offset);
193  default:
194  result = (char *)lwalloc(256);
195  snprintf(result, 256, "Object is of unknown type: %d",
196  lwgeom->type);
197  return result;
198  }
199 
200  return NULL;
201 }
#define COLLECTIONTYPE
Definition: liblwgeom.h:122
#define COMPOUNDTYPE
Definition: liblwgeom.h:124
#define CURVEPOLYTYPE
Definition: liblwgeom.h:125
#define MULTILINETYPE
Definition: liblwgeom.h:120
#define MULTISURFACETYPE
Definition: liblwgeom.h:127
#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
#define CIRCSTRINGTYPE
Definition: liblwgeom.h:123
#define MULTICURVETYPE
Definition: liblwgeom.h:126
#define TRIANGLETYPE
Definition: liblwgeom.h:129
void * lwalloc(size_t size)
Definition: lwutil.c:227
static char * lwline_summary(LWLINE *line, int offset)
Definition: lwgeom_debug.c:71
static char * lwcollection_summary(LWCOLLECTION *col, int offset)
Definition: lwgeom_debug.c:89
static char * lwpoint_summary(LWPOINT *point, int offset)
Definition: lwgeom_debug.c:55
static char * lwpoly_summary(LWPOLY *poly, int offset)
Definition: lwgeom_debug.c:130
uint8_t type
Definition: liblwgeom.h:448

References CIRCSTRINGTYPE, COLLECTIONTYPE, COMPOUNDTYPE, CURVEPOLYTYPE, LINETYPE, lwalloc(), lwcollection_summary(), lwline_summary(), lwpoint_summary(), lwpoly_summary(), MULTICURVETYPE, MULTILINETYPE, MULTIPOINTTYPE, MULTIPOLYGONTYPE, MULTISURFACETYPE, POINTTYPE, POLYGONTYPE, TINTYPE, TRIANGLETYPE, LWGEOM::type, and LWPOINT::type.

Referenced by GEOS2POSTGIS(), lwcollection_summary(), LWGEOM_makepoly(), LWGEOM_summary(), and ST_Normalize().

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