Ignore:
Timestamp:
Sep 21, 2010, 9:04:00 PM (11 years ago)
Author:
matkovic
Message:

-changed data structures, should improve the performance

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/CrypPlugins/WorkspaceManager/View/VisualComponents/CryptoLineView/CryptoLineView.cs

    r1928 r1931  
    1515using WorkspaceManager.View.Container;
    1616using System.Collections;
     17using WorkspaceManager.View.VisualComponents.StackFrameDijkstra;
    1718
    1819namespace WorkspaceManager.View.VisualComponents
     
    379380        }
    380381
    381         internal class Node : StackFrameDijkstra.Node<Node>
    382         {
    383             public Point Point { get; set; }
    384             public HashSet<Node> Vertices { get; private set; }
    385             public Node()
    386             {
    387                 Vertices = new HashSet<Node>();
    388             }
    389 
    390             public double traverseCost(Node dest)
    391             {
    392                 if (!Vertices.Contains(dest))
    393                     return Double.PositiveInfinity;
    394 
    395                 if (dest.Point.X == Point.X)
    396                     return Math.Abs(dest.Point.Y - Point.Y);
    397                 return Math.Abs(dest.Point.X - Point.X);
    398             }
    399 
    400             public IEnumerable<Node> neighbors()
    401             {
    402                 return Vertices;
    403             }
    404 
    405  
    406         }
    407 
    408382        private bool performOrthogonalPointConnection(Node n1, Point p2, Node n3, List<Node> nodeList, QuadTreeLib.QuadTree<FakeNode> quadTree)
    409383        {
     
    447421            nodeList.Add(endNode);
    448422
    449             QuadTreeLib.QuadTree<FakeNode> quadTree = new QuadTreeLib.QuadTree<FakeNode>(new System.Drawing.RectangleF(0,0,(float)parent.ActualWidth,(float) parent.ActualHeight));
     423            float actualWidth =(float) parent.ActualWidth, actualHeight =(float) parent.ActualWidth;
     424            //Consider zoom factor
     425            QuadTreeLib.QuadTree<FakeNode> quadTree = new QuadTreeLib.QuadTree<FakeNode>
     426                (new System.Drawing.RectangleF(-actualWidth, -actualHeight, actualWidth*5, actualHeight*5));
    450427
    451428            //foreach (var element in parent.Children)
Note: See TracChangeset for help on using the changeset viewer.