コード例 #1
0
ファイル: Front.cs プロジェクト: naszta/MeshGenerator
 public bool RemoveSegment(Segment s)
 {
     bool removed = false;
     double? toRemove = null;
     foreach (var item in this.Segments)
     {
         Segment sToRemove = null;
         foreach (Segment segment in item.Value)
         {
             if (s.Equals(segment))
             {
                 sToRemove = segment;
                 //if (item.Value.Count == 0)
                 //{
                 //    Segments.Remove(item.Key);
                 //}
             }
         }
         if (sToRemove != null)
         {
             item.Value.RemoveAll(seg => seg.Equals(sToRemove));
             removed = true;
         }
         if (item.Value.Count == 0)
         {
             toRemove = item.Key;
         }
     }
     if (toRemove != null)
     {
         this.Segments.Remove((double)toRemove);
     }
     RemoveUnconnectedEndpoints(s);
     s.DisconnectEndpoints();
     return removed;
 }