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

◆ ptarray_to_wkb_size()

static size_t ptarray_to_wkb_size ( const POINTARRAY pa,
uint8_t  variant 
)
static

Definition at line 379 of file lwout_wkb.c.

380{
381 int dims = 2;
382 size_t size = 0;
383
384 if ( variant & (WKB_ISO | WKB_EXTENDED) )
385 dims = FLAGS_NDIMS(pa->flags);
386
387 /* Include the npoints if it's not a POINT type) */
388 if ( ! ( variant & WKB_NO_NPOINTS ) )
389 size += WKB_INT_SIZE;
390
391 /* size of the double list */
392 size += pa->npoints * dims * WKB_DOUBLE_SIZE;
393
394 return size;
395}
static uint8_t variant
Definition cu_in_twkb.c:26
#define WKB_ISO
Definition liblwgeom.h:2121
#define WKB_NO_NPOINTS
Definition liblwgeom.h:2127
#define FLAGS_NDIMS(flags)
Definition liblwgeom.h:193
#define WKB_EXTENDED
Definition liblwgeom.h:2123
#define WKB_INT_SIZE
#define WKB_DOUBLE_SIZE
Well-Known Binary (WKB) Output Variant Types.
lwflags_t flags
Definition liblwgeom.h:417
uint32_t npoints
Definition liblwgeom.h:413

References POINTARRAY::flags, FLAGS_NDIMS, POINTARRAY::npoints, variant, WKB_DOUBLE_SIZE, WKB_EXTENDED, WKB_INT_SIZE, WKB_ISO, and WKB_NO_NPOINTS.

Referenced by lwline_to_wkb_size(), lwpoint_to_wkb_size(), lwpoly_to_wkb_size(), and lwtriangle_to_wkb_size().

Here is the caller graph for this function: