PostGIS  3.0.6dev-r@@SVN_REVISION@@

◆ lwgeom_mindistance2d_tolerance()

double lwgeom_mindistance2d_tolerance ( const LWGEOM lw1,
const LWGEOM lw2,
double  tolerance 
)

Function handling min distance calculations and dwithin calculations.

The difference is just the tolerance.

Definition at line 207 of file measures.c.

208 {
209  DISTPTS thedl;
210  LWDEBUG(2, "lwgeom_mindistance2d_tolerance is called");
211  thedl.mode = DIST_MIN;
212  thedl.distance = FLT_MAX;
213  thedl.tolerance = tolerance;
214  if (lw_dist2d_comp(lw1, lw2, &thedl))
215  return thedl.distance;
216  /*should never get here. all cases ought to be error handled earlier*/
217  lwerror("Some unspecified error.");
218  return FLT_MAX;
219 }
#define LWDEBUG(level, msg)
Definition: lwgeom_log.h:83
void lwerror(const char *fmt,...)
Write a notice out to the error handler.
Definition: lwutil.c:190
int lw_dist2d_comp(const LWGEOM *lw1, const LWGEOM *lw2, DISTPTS *dl)
This function just deserializes geometries Bboxes is not checked here since it is the subgeometries b...
Definition: measures.c:236
#define DIST_MIN
Definition: measures.h:44
double tolerance
Definition: measures.h:56
int mode
Definition: measures.h:54
double distance
Definition: measures.h:51
Structure used in distance-calculations.
Definition: measures.h:50

References DIST_MIN, DISTPTS::distance, lw_dist2d_comp(), LWDEBUG, lwerror(), DISTPTS::mode, and DISTPTS::tolerance.

Referenced by LWGEOM_dwithin(), lwgeom_mindistance2d(), lwgeom_mindistance3d_tolerance(), lwt_GetEdgeByPoint(), lwt_GetFaceByPoint(), rt_raster_within_distance(), union_dbscan_general(), and union_dbscan_minpoints_1().

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