public bool ContainsDoor(IntVector A, IntVector B)
 {
     if (!DoorMap.ContainsKey(A))
     {
         return(false);
     }
     return(DoorMap[A].Contains(B));
 }
        public void RegisterDoor(IntVector A, IntVector B)
        {
            if (!DoorMap.ContainsKey(A))
            {
                DoorMap.Add(A, new HashSet <IntVector>());
            }
            DoorMap[A].Add(B);

            if (!DoorMap.ContainsKey(B))
            {
                DoorMap.Add(B, new HashSet <IntVector>());
            }
            DoorMap[B].Add(A);
        }
 public void Clear()
 {
     DoorMap.Clear();
 }