PostGIS  2.3.8dev-r@@SVN_REVISION@@

◆ ptarray_is_closed_2d()

int ptarray_is_closed_2d ( const POINTARRAY in)

Definition at line 694 of file ptarray.c.

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

Referenced by lwcircstring_is_closed(), lwline_is_closed(), lwpoly_from_lwlines(), lwpoly_from_twkb_state(), lwpoly_from_wkb_state(), lwpoly_is_closed(), lwtriangle_from_lwline(), parse_gml_linearring(), parse_gml_patch(), parse_gml_polygon(), parse_gml_triangle(), parse_kml_polygon(), ptarray_close2d(), ptarray_is_closed_z(), ptarray_to_GEOSLinearRing(), and wkt_parser_polygon_add_ring().

695 {
696  if (!in)
697  {
698  lwerror("ptarray_is_closed_2d: called with null point array");
699  return 0;
700  }
701  if (in->npoints <= 1 ) return in->npoints; /* single-point are closed, empty not closed */
702 
703  return 0 == memcmp(getPoint_internal(in, 0), getPoint_internal(in, in->npoints-1), sizeof(POINT2D) );
704 }
int npoints
Definition: liblwgeom.h:370
uint8_t * getPoint_internal(const POINTARRAY *pa, int n)
Definition: ptarray.c:1706
void lwerror(const char *fmt,...)
Write a notice out to the error handler.
Definition: lwutil.c:102
Here is the call graph for this function:
Here is the caller graph for this function: