Просто возьмите максимальную ширину и высоту ограничительной рамки интересующей области в качестве длины стороны четырехугольного дерева.
Другое решение: использует две реализации четырехъядерных деревьев, которые я виделвнутренний прямоугольник, так что он выпал бы из коробки, даже если предоставленные корневые границы не квадратные.Они делят ширину и высоту границ на каждом шаге подразделения.
Но учтите, что существует более 10 различных типов Quadtree.Я говорю о Rectangle Quadtrees.
Одна реализация явно использует длину стороны, которая делится на 2, так что это не будет работать нормально для границ без квадратного корня.
Однако явсе еще рекомендую мое первое предложение, лучше использовать квадрат в качестве корневых границ.Затем это работает для всех типов четырехъядерных деревьев.