Пример #1
0
 public bool RemoveByGuid(Guid guid, SceneNode item, BoundableNodeOctree root)
 {
     if (root.OctantDictionary.ContainsKey(guid))
     {
         (OctantDictionary[guid] as BoundableNodeOctree).RemoveSafe(item, root);
         return(true);
     }
     else
     {
         return(false);
     }
 }
Пример #2
0
            private BoundableNodeOctree RebuildOctree(IEnumerable <SceneNode> items)
            {
                Clear();
                if (items == null)
                {
                    return(null);
                }
                var tree = new BoundableNodeOctree(items.ToList(), Parameter);

                tree.BuildTree();
                if (tree.TreeBuilt)
                {
                    foreach (var item in items)
                    {
                        SubscribeBoundChangeEvent(item);
                    }
                }
                return(tree.TreeBuilt ? tree : null);
            }
Пример #3
0
 private void UpdateOctree(BoundableNodeOctree tree)
 {
     Octree  = tree;
     mOctree = tree;
 }