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

◆ BOX3D_distance_internal()

double BOX3D_distance_internal ( BOX3D box1,
BOX3D box2 
)

Definition at line 919 of file lwgeom_box3d.c.

920{
921 double sqrDist = 0;
922 double d;
923
924 if (BOX3D_overlaps_internal(box1, box2))
925 return 0.0;
926
927 /* X axis */
928 if (box1->xmax < box2->xmin)
929 {
930 d = box1->xmax - box2->xmin;
931 sqrDist += d * d;
932 }
933 else if (box1->xmin > box2->xmax)
934 {
935 d = box1->xmin - box2->xmax;
936 sqrDist += d * d;
937 }
938 /* Y axis */
939 if (box1->ymax < box2->ymin)
940 {
941 d = box1->ymax - box2->ymin;
942 sqrDist += d * d;
943 }
944 else if (box1->ymin > box2->ymax)
945 {
946 d = box1->ymin - box2->ymax;
947 sqrDist += d * d;
948 }
949 /* Z axis */
950 if (box1->zmax < box2->zmin)
951 {
952 d = box1->zmax - box2->zmin;
953 sqrDist += d * d;
954 }
955 else if (box1->zmin > box2->zmax)
956 {
957 d = box1->zmin - box2->zmax;
958 sqrDist += d * d;
959 }
960
961 return sqrt(sqrDist);
962}
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: