Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/algorithm/12.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 计算具有最小-最大点的智能盒组_Java_Algorithm_Bounding Box - Fatal编程技术网

Java 计算具有最小-最大点的智能盒组

Java 计算具有最小-最大点的智能盒组,java,algorithm,bounding-box,Java,Algorithm,Bounding Box,我有最小最大点的边界框列表,例如: public class BoundaryVolume { public Point3D min; public Point3D max; } BoundaryVolume Box1 = new BoundaryVolume ( new Point3D (5,10,15), new Point3D (30,50,100)); BoundaryVolume Box2 = new BoundaryVo

我有最小最大点的边界框列表,例如:

    public class BoundaryVolume {
    
        public Point3D min;
        public Point3D max;
    }

BoundaryVolume  Box1 = new BoundaryVolume ( new Point3D (5,10,15), new Point3D (30,50,100));
BoundaryVolume  Box2 = new BoundaryVolume ( new Point3D (-30,-10,-15), new Point3D (30,50,100));
BoundaryVolume  Box3 = new BoundaryVolume ( new Point3D (225,-50, -15), new Point3D (1000,0 , 0));
BoundaryVolume  Box4 = new BoundaryVolume ( new Point3D (0,0,0), new Point3D (1,1,1));
List<BoundaryVolume> = new List<BoundaryVolume>().add(Box1).add(Box2).add(Box3).add(Box4)

另一个盒子旁边的盒子使它们在同一个盒子里。 我该怎么做

我需要的是得到一个盒子的列表,并制作一个列表。我需要的演示在附件图片中


“旁边的盒子使它们在同一个盒子里”——你这是什么意思?什么是
几何体
类,有哪些字段?你对哪一部分有问题?在检查某个东西是否包含在其他东西中时,Geomeries只是框的列表,我编辑了这个问题,也许它会更清楚,你需要提出一些条件来定义两个矩形是否在同一组中。最有可能的情况是,您可以使用距离-计算两个矩形之间的距离应该不会太难。然后,您只需检查所有对矩形并将其分配给同一组。但是,可能有一些奇怪的边缘情况,我不知道你想怎么处理,比如大的方形的环和中间的一个小的方块-是这两个组还是一个?
Geometries geos2 = new Geometries(A, B, C);
Geometries geos3 = new Geometries(D, E);
Geometries geos1 = new Geometries(geos2, F, geos3);