PostGIS 3.6.2dev-r@@SVN_REVISION@@
Loading...
Searching...
No Matches

◆ BOX3D_distance_internal()

double BOX3D_distance_internal ( BOX3D box1,
BOX3D box2 
)

Definition at line 884 of file lwgeom_box3d.c.

885{
886 double sqrDist = 0;
887 double d;
888
889 if (BOX3D_overlaps_internal(box1, box2))
890 return 0.0;
891
892 /* X axis */
893 if (box1->xmax < box2->xmin)
894 {
895 d = box1->xmax - box2->xmin;
896 sqrDist += d * d;
897 }
898 else if (box1->xmin > box2->xmax)
899 {
900 d = box1->xmin - box2->xmax;
901 sqrDist += d * d;
902 }
903 /* Y axis */
904 if (box1->ymax < box2->ymin)
905 {
906 d = box1->ymax - box2->ymin;
907 sqrDist += d * d;
908 }
909 else if (box1->ymin > box2->ymax)
910 {
911 d = box1->ymin - box2->ymax;
912 sqrDist += d * d;
913 }
914 /* Z axis */
915 if (box1->zmax < box2->zmin)
916 {
917 d = box1->zmax - box2->zmin;
918 sqrDist += d * d;
919 }
920 else if (box1->zmin > box2->zmax)
921 {
922 d = box1->zmin - box2->zmax;
923 sqrDist += d * d;
924 }
925
926 return sqrt(sqrDist);
927}
bool BOX3D_overlaps_internal(BOX3D *box1, BOX3D *box2)
double xmax
Definition liblwgeom.h:340
double zmin
Definition liblwgeom.h:339
double ymax
Definition liblwgeom.h:340
double ymin
Definition liblwgeom.h:339
double zmax
Definition liblwgeom.h:340
double xmin
Definition liblwgeom.h:339

References BOX3D_overlaps_internal(), BOX3D::xmax, BOX3D::xmin, BOX3D::ymax, BOX3D::ymin, BOX3D::zmax, and BOX3D::zmin.

Referenced by BOX3D_distance().

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