1
var intersect = function (quadTree1, quadTree2) {2
if (!quadTree1.isLeaf && !quadTree2.isLeaf) {3
const tl = intersect(quadTree1.topLeft, quadTree2.topLeft);4
const tr = intersect(quadTree1.topRight, quadTree2.topRight);5
const bl = intersect(quadTree1.bottomLeft, quadTree2.bottomLeft);6
const br = intersect(quadTree1.bottomRight, quadTree2.bottomRight);18
return new Node(true, false, tl, tr, bl, br);21
(quadTree2.isLeaf && quadTree2.val) ||22
(quadTree1.isLeaf && !quadTree1.val)26
(quadTree1.isLeaf && quadTree1.val) ||27
(quadTree2.isLeaf && !quadTree2.val)31
throw new Error("it's not possible");