Code
Code
Utilities
Utilities
AABBTree
AABBTree
OverlappingBBoxes
OverlappingBBoxes
Example
Example
In[]:=
randomBBox[n_]:=With[{llcorners=RandomReal[{-10,10},{n,3}]},Transpose[{llcorners,llcorners+RandomReal[{1,1},{n,3}]},{3,1,2}]]
In[]:=
SeedRandom[1];bboxes=randomBBox[100000];testbboxes=randomBBox[100000];
In[]:=
aabbtree=AABBTree[bboxes];//RepeatedTiming
Out[]=
{0.149604,Null}
In[]:=
OverlappingBBoxes[aabbtree,testbboxes[[1]]]//Length//RepeatedTiming
Out[]=
{5.65947×,88}
-6
10
In[]:=
OverlappingBBoxes[aabbtree,#]&/@testbboxes;//RepeatedTiming
Out[]=
{0.686218,Null}