public void ConstraintWithTransformation() { Random random = new Random(999); GeometryGraph graph = GraphGenerator.GenerateOneSimpleGraph(); GraphGenerator.SetRandomNodeShapes(graph, random); SugiyamaLayoutSettings settings = new SugiyamaLayoutSettings(); //layer direction to be left to right settings.Transformation = PlaneTransformation.Rotation(Math.PI / 2); List <Node> nodes = graph.Nodes.ToList(); settings.AddUpDownConstraint(nodes[0], nodes[1]); settings.AddLeftRightConstraint(nodes[3], nodes[4]); settings.AddUpDownVerticalConstraint(nodes[0], nodes[3]); settings.AddSameLayerNeighbors(nodes[2], nodes[4]); LayeredLayout layeredLayout = new LayeredLayout(graph, settings); layeredLayout.Run(); ShowGraphInDebugViewer(graph); SugiyamaValidation.ValidateUpDownConstraint(nodes[0], nodes[1]); SugiyamaValidation.ValidateLeftRightConstraint(nodes[3], nodes[4]); SugiyamaValidation.ValidateUpDownVerticalConstraint(nodes[0], nodes[3]); SugiyamaValidation.ValidateNeighborConstraint(graph, nodes[2], nodes[4], settings); }
public override void Initialize() { EnableDebugViewer(); base.Initialize(); graph = GraphGenerator.GenerateOneSimpleGraph(); GraphGenerator.SetRandomNodeShapes(graph, random); allNodes = graph.Nodes.ToList(); settings = new FastIncrementalLayoutSettings(); settings.AvoidOverlaps = true; }
public void SimpleGraphTests() { GeometryGraph graph = GraphGenerator.GenerateOneSimpleGraph(); SugiyamaLayoutSettings settings = new SugiyamaLayoutSettings(); GraphGenerator.SetRandomNodeShapes(graph, random); WriteLine("Trying Simple Graph with Top to Down layer direction"); LayoutAndValidate(graph, settings); GraphGenerator.SetRandomNodeShapes(graph, random); WriteLine("Trying Simple Graph with Left to Right layer direction"); LayoutAndValidate(graph, settings, LayerDirection.LeftToRight); }