PostGIS  3.0.6dev-r@@SVN_REVISION@@

◆ lw_dist2d_check_overlap()

int lw_dist2d_check_overlap ( LWGEOM lwg1,
LWGEOM lwg2 
)

Definition at line 517 of file measures.c.

518 {
519  LWDEBUG(2, "lw_dist2d_check_overlap is called");
520  if (!lwg1->bbox)
521  lwgeom_calculate_gbox(lwg1, lwg1->bbox);
522  if (!lwg2->bbox)
523  lwgeom_calculate_gbox(lwg2, lwg2->bbox);
524 
525  /* Check if the geometries intersect. */
526  if ((lwg1->bbox->xmax < lwg2->bbox->xmin || lwg1->bbox->xmin > lwg2->bbox->xmax ||
527  lwg1->bbox->ymax < lwg2->bbox->ymin || lwg1->bbox->ymin > lwg2->bbox->ymax))
528  {
529  LWDEBUG(3, "geometries bboxes did not overlap");
530  return LW_FALSE;
531  }
532  LWDEBUG(3, "geometries bboxes overlap");
533  return LW_TRUE;
534 }
#define LW_FALSE
Definition: liblwgeom.h:108
int lwgeom_calculate_gbox(const LWGEOM *lwgeom, GBOX *gbox)
Calculate bounding box of a geometry, automatically taking into account whether it is cartesian or ge...
Definition: lwgeom.c:737
#define LW_TRUE
Return types for functions with status returns.
Definition: liblwgeom.h:107
#define LWDEBUG(level, msg)
Definition: lwgeom_log.h:83
double ymax
Definition: liblwgeom.h:343
double xmax
Definition: liblwgeom.h:341
double ymin
Definition: liblwgeom.h:342
double xmin
Definition: liblwgeom.h:340
GBOX * bbox
Definition: liblwgeom.h:444

References LWGEOM::bbox, LW_FALSE, LW_TRUE, LWDEBUG, lwgeom_calculate_gbox(), GBOX::xmax, GBOX::xmin, GBOX::ymax, and GBOX::ymin.

Referenced by lw_dist2d_recursive().

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