PostGIS  3.7.0dev-r@@SVN_REVISION@@

◆ encode_poly()

static void encode_poly ( struct feature_builder feature,
LWPOLY lwpoly 
)
static

Definition at line 250 of file mvt.c.

251 {
252  uint32_t i;
253  int32_t px = 0, py = 0;
254  size_t c = 0, offset = 0;
255  feature->type = VECTOR_TILE__TILE__GEOM_TYPE__POLYGON;
256  for (i = 0; i < lwpoly->nrings; i++)
257  c += 3 + ((lwpoly->rings[i]->npoints - 1) * 2);
258  feature->geometry = palloc(sizeof(*feature->geometry) * c);
259  for (i = 0; i < lwpoly->nrings; i++)
260  offset += encode_ptarray(MVT_RING,
261  lwpoly->rings[i],
262  feature->geometry + offset, &px, &py);
263  feature->n_geometry = offset;
264 }
@ MVT_RING
Definition: mvt.c:59
static uint32_t encode_ptarray(enum mvt_type type, POINTARRAY *pa, uint32_t *buffer, int32_t *px, int32_t *py)
Definition: mvt.c:149
POINTARRAY ** rings
Definition: liblwgeom.h:519
uint32_t nrings
Definition: liblwgeom.h:524
uint32_t npoints
Definition: liblwgeom.h:427
VectorTile__Tile__GeomType type
Definition: mvt.c:92
size_t n_geometry
Definition: mvt.c:93
uint32_t * geometry
Definition: mvt.c:94

References encode_ptarray(), feature_builder::geometry, MVT_RING, feature_builder::n_geometry, POINTARRAY::npoints, LWPOLY::nrings, LWPOLY::rings, and feature_builder::type.

Referenced by encode_feature_geometry().

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