private bool AddPositionForCreate(QuadNode node) { if (!CreatedNodes.ContainsKey(node.Id)) { ReadOnlyCollection <Vector3Int> positions = node.Points; for (int i = 0; i < positions.Count; i++) { WaitForCreate.Add(positions[i]); } CreatedNodes.Add(node.Id, node); return(true); } return(false); }
private void ReleaseRssOutside() { ReleaseNodes.Clear(); //Debugger.Log("Current overlap node: "); //currentOverlapNodeId.Log(" "); foreach (int key in CreatedNodes.Keys) { if (!currentOverlapNodeId.IsContaint(key)) { ReleaseNodes.Add(CreatedNodes[key]); //Debugger.Log("add to ReleaseNodes: " + key); } } for (int i = 0; i < ReleaseNodes.Count; i++) { CreatedNodes.Remove(ReleaseNodes[i].Id); ReleaseQuadNode(ReleaseNodes[i]); } }