PostGIS  3.7.0dev-r@@SVN_REVISION@@

◆ ptarray_is_closed()

int ptarray_is_closed ( const POINTARRAY in)

Check for ring closure using whatever dimensionality is declared on the pointarray.

Definition at line 696 of file ptarray.c.

697 {
698  if (!in)
699  {
700  lwerror("ptarray_is_closed: called with null point array");
701  return 0;
702  }
703  if (in->npoints <= 1 ) return in->npoints; /* single-point are closed, empty not closed */
704 
705  return 0 == memcmp(getPoint_internal(in, 0), getPoint_internal(in, in->npoints-1), ptarray_point_size(in));
706 }
void void lwerror(const char *fmt,...) __attribute__((format(printf
Write a notice out to the error handler.
static size_t ptarray_point_size(const POINTARRAY *pa)
Definition: lwinline.h:56
static uint8_t * getPoint_internal(const POINTARRAY *pa, uint32_t n)
Definition: lwinline.h:75
uint32_t npoints
Definition: liblwgeom.h:427

References getPoint_internal(), lwerror(), POINTARRAY::npoints, and ptarray_point_size().

Here is the call graph for this function: