PostGIS  3.4.0dev-r@@SVN_REVISION@@

◆ assvg_geom()

static void assvg_geom ( stringbuffer_t sb,
const LWGEOM geom,
int  relative,
int  precision 
)
static

Definition at line 498 of file lwout_svg.c.

499 {
500  int type = geom->type;
501 
502  switch (type)
503  {
504  case POINTTYPE:
505  assvg_point(sb, (LWPOINT*)geom, relative, precision);
506  break;
507 
508  case LINETYPE:
509  assvg_line(sb, (LWLINE*)geom, relative, precision);
510  break;
511 
512  case POLYGONTYPE:
513  assvg_polygon(sb, (LWPOLY*)geom, relative, precision);
514  break;
515 
516  case MULTIPOINTTYPE:
517  assvg_multipoint(sb, (LWMPOINT*)geom, relative, precision);
518  break;
519 
520  case MULTILINETYPE:
521  assvg_multiline(sb, (LWMLINE*)geom, relative, precision);
522  break;
523 
524  case MULTIPOLYGONTYPE:
525  assvg_multipolygon(sb, (LWMPOLY*)geom, relative, precision);
526  break;
527 
528  case CIRCSTRINGTYPE:
529  assvg_circstring(sb, (LWCIRCSTRING*)geom, relative, precision);
530  break;
531 
532  case COMPOUNDTYPE:
533  assvg_compound(sb, (LWCOMPOUND*)geom, relative, precision);
534  break;
535 
536  case CURVEPOLYTYPE:
537  assvg_curvepoly(sb, (LWCURVEPOLY*)geom, relative, precision);
538  break;
539 
540  case MULTICURVETYPE:
541  assvg_multicurve(sb, (LWMCURVE*)geom, relative, precision);
542  break;
543 
544  case MULTISURFACETYPE:
545  assvg_multisurface(sb, (LWMSURFACE*)geom, relative, precision);
546  break;
547 
548  default:
549  lwerror("assvg_geom_buf: '%s' geometry type not supported.",
550  lwtype_name(type));
551  }
552 
553 }
static uint8_t precision
Definition: cu_in_twkb.c:25
#define COMPOUNDTYPE
Definition: liblwgeom.h:110
#define CURVEPOLYTYPE
Definition: liblwgeom.h:111
#define MULTILINETYPE
Definition: liblwgeom.h:106
#define MULTISURFACETYPE
Definition: liblwgeom.h:113
#define LINETYPE
Definition: liblwgeom.h:103
#define MULTIPOINTTYPE
Definition: liblwgeom.h:105
#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
const char * lwtype_name(uint8_t type)
Return the type name string associated with a type number (e.g.
Definition: lwutil.c:216
#define MULTICURVETYPE
Definition: liblwgeom.h:112
void lwerror(const char *fmt,...)
Write a notice out to the error handler.
Definition: lwutil.c:190
static void assvg_compound(stringbuffer_t *sb, const LWCOMPOUND *icompound, int relative, int precision)
Definition: lwout_svg.c:261
static void assvg_multipoint(stringbuffer_t *sb, const LWMPOINT *mpoint, int relative, int precision)
Definition: lwout_svg.c:332
static void assvg_curvepoly(stringbuffer_t *sb, const LWCURVEPOLY *curvepoly, int relative, int precision)
Definition: lwout_svg.c:406
static void assvg_multiline(stringbuffer_t *sb, const LWMLINE *mline, int relative, int precision)
Definition: lwout_svg.c:347
static void assvg_multipolygon(stringbuffer_t *sb, const LWMPOLY *mpoly, int relative, int precision)
Definition: lwout_svg.c:361
static void assvg_line(stringbuffer_t *sb, const LWLINE *line, int relative, int precision)
Definition: lwout_svg.c:152
static void assvg_polygon(stringbuffer_t *sb, const LWPOLY *poly, int relative, int precision)
Definition: lwout_svg.c:309
static void assvg_circstring(stringbuffer_t *sb, const LWCIRCSTRING *icurve, int relative, int precision)
Definition: lwout_svg.c:253
static void assvg_multicurve(stringbuffer_t *sb, const LWMCURVE *mcurve, int relative, int precision)
Definition: lwout_svg.c:375
static void assvg_point(stringbuffer_t *sb, const LWPOINT *point, int circle, int precision)
Definition: lwout_svg.c:135
static void assvg_multisurface(stringbuffer_t *sb, const LWMSURFACE *msurface, int relative, int precision)
Definition: lwout_svg.c:444
type
Definition: ovdump.py:42
uint8_t type
Definition: liblwgeom.h:462

References assvg_circstring(), assvg_compound(), assvg_curvepoly(), assvg_line(), assvg_multicurve(), assvg_multiline(), assvg_multipoint(), assvg_multipolygon(), assvg_multisurface(), assvg_point(), assvg_polygon(), CIRCSTRINGTYPE, COMPOUNDTYPE, CURVEPOLYTYPE, LINETYPE, lwerror(), lwtype_name(), MULTICURVETYPE, MULTILINETYPE, MULTIPOINTTYPE, MULTIPOLYGONTYPE, MULTISURFACETYPE, POINTTYPE, POLYGONTYPE, precision, LWGEOM::type, and ovdump::type.

Referenced by assvg_collection().

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