PostGIS  3.3.9dev-r@@SVN_REVISION@@

◆ lw_curvering_getfirstpoint2d_cp()

static const POINT2D* lw_curvering_getfirstpoint2d_cp ( LWGEOM geom)
static

Definition at line 891 of file measures.c.

892 {
893  switch (geom->type)
894  {
895  case LINETYPE:
896  return getPoint2d_cp(((LWLINE *)geom)->points, 0);
897  case CIRCSTRINGTYPE:
898  return getPoint2d_cp(((LWCIRCSTRING *)geom)->points, 0);
899  case COMPOUNDTYPE:
900  {
901  LWCOMPOUND *comp = (LWCOMPOUND *)geom;
902  LWLINE *line = (LWLINE *)(comp->geoms[0]);
903  return getPoint2d_cp(line->points, 0);
904  }
905  default:
906  lwerror("lw_curvering_getfirstpoint2d_cp: unknown type");
907  }
908  return NULL;
909 }
#define COMPOUNDTYPE
Definition: liblwgeom.h:125
#define LINETYPE
Definition: liblwgeom.h:118
#define CIRCSTRINGTYPE
Definition: liblwgeom.h:124
void lwerror(const char *fmt,...)
Write a notice out to the error handler.
Definition: lwutil.c:190
static const POINT2D * getPoint2d_cp(const POINTARRAY *pa, uint32_t n)
Returns a POINT2D pointer into the POINTARRAY serialized_ptlist, suitable for reading from.
Definition: lwinline.h:101
LWGEOM ** geoms
Definition: liblwgeom.h:604
uint8_t type
Definition: liblwgeom.h:477
POINTARRAY * points
Definition: liblwgeom.h:498

References CIRCSTRINGTYPE, COMPOUNDTYPE, LWCOMPOUND::geoms, getPoint2d_cp(), LINETYPE, lwerror(), LWLINE::points, and LWGEOM::type.

Referenced by lw_dist2d_curvepoly_curvepoly(), lw_dist2d_tri_circstring(), and lw_dist2d_tri_curvepoly().

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