PostGIS  3.4.0dev-r@@SVN_REVISION@@

◆ getPoint2d_p()

int getPoint2d_p ( const POINTARRAY pa,
uint32_t  n,
POINT2D point 
)

Definition at line 342 of file lwgeom_api.c.

343 {
344  if ( ! pa )
345  {
346  lwerror("%s [%d] NULL POINTARRAY input", __FILE__, __LINE__);
347  return 0;
348  }
349 
350  if ( n>=pa->npoints )
351  {
352  lwnotice("%s [%d] called with n=%d and npoints=%d", __FILE__, __LINE__, n, pa->npoints);
353  return 0;
354  }
355 
356  /* this does x,y */
357  memcpy(point, getPoint_internal(pa, n), sizeof(POINT2D));
358  return 1;
359 }
void lwerror(const char *fmt,...)
Write a notice out to the error handler.
Definition: lwutil.c:190
void lwnotice(const char *fmt,...)
Write a notice out to the notice handler.
Definition: lwutil.c:177
static uint8_t * getPoint_internal(const POINTARRAY *pa, uint32_t n)
Definition: lwinline.h:77
uint32_t npoints
Definition: liblwgeom.h:427

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

Referenced by _lwt_AddEdge(), _lwt_EdgeRingIterator_next(), _lwt_FindAdjacentEdges(), _lwt_FindFaceContainingRing(), _lwt_FindNextRingEdge(), _lwt_FirstDistinctVertex2D(), _lwt_GetInteriorEdgePoint(), line2pts(), LWGEOM_angle(), LWGEOM_azimuth(), lwgeom_covers_lwgeom_sphere(), lwpoint_getPoint2d_p(), lwt_AddIsoEdge(), lwt_ChangeEdgeGeom(), lwt_GetNodeByPoint(), lwtriangle_area(), point_in_multipolygon(), point_in_multipolygon_rtree(), point_in_polygon(), point_in_polygon_rtree(), ptarray_append_ptarray(), ptarray_area_spheroid(), ptarray_check_geodetic(), ptarray_contains_point_sphere(), ptarray_to_x3d3_sb(), RASTER_nearestValue(), RASTER_setPixelValuesGeomval(), and test_lwgeom_split().

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