Exemplo n.º 1
0
        private void Divide(IQuadTreeNode <T> node, int maxLevels, QuadtreeNodeDelegate onNode, int level)
        {
            if (maxLevels <= 0)
            {
                return;
            }

            onNode(node.Position, node.Height, node.Width, level);
            DivideNode(node);
            foreach (var quarter in node.Quarters)
            {
                Divide(quarter, maxLevels - 1, onNode, level + 1);
            }
        }
Exemplo n.º 2
0
 public void Divide(int maxLevels, QuadtreeNodeDelegate onNode)
 {
     Divide(_root, maxLevels, onNode, 1);
 }