PostGIS  2.5.0beta2dev-r@@SVN_REVISION@@

◆ lwpoint_inside_circle()

int lwpoint_inside_circle ( const LWPOINT p,
double  cx,
double  cy,
double  rad 
)

Definition at line 653 of file lwgeom.c.

References circ_node::center, distance2d_pt_pt(), getPoint2d_cp(), LW_FALSE, LW_TRUE, LWPOINT::point, POINT2D::x, and POINT2D::y.

Referenced by LWGEOM_inside_circle_point().

654 {
655  const POINT2D *pt;
656  POINT2D center;
657 
658  if ( ! p || ! p->point )
659  return LW_FALSE;
660 
661  pt = getPoint2d_cp(p->point, 0);
662 
663  center.x = cx;
664  center.y = cy;
665 
666  if ( distance2d_pt_pt(pt, &center) < rad )
667  return LW_TRUE;
668 
669  return LW_FALSE;
670 }
double distance2d_pt_pt(const POINT2D *p1, const POINT2D *p2)
Definition: measures.c:2313
POINTARRAY * point
Definition: liblwgeom.h:413
double x
Definition: liblwgeom.h:330
#define LW_FALSE
Definition: liblwgeom.h:76
#define LW_TRUE
Return types for functions with status returns.
Definition: liblwgeom.h:75
double y
Definition: liblwgeom.h:330
const POINT2D * getPoint2d_cp(const POINTARRAY *pa, uint32_t n)
Returns a POINT2D pointer into the POINTARRAY serialized_ptlist, suitable for reading from...
Definition: lwgeom_api.c:364
Here is the call graph for this function:
Here is the caller graph for this function: