Table of Contents

Namespace Northwoods.Go.Layouts

Classes

CircularEdge

This holds CircularLayout-specific information about Links.

CircularLayout

This layout positions nodes in a circular arrangement.

CircularNetwork

This class represents an abstract graph of CircularVertexes and CircularEdges that can be constructed based on the Nodes and Links of a Diagram so that the CircularLayout can operate independently of the diagram until it is time to commit any node positioning or link routing.

CircularVertex

This holds CircularLayout-specific information about Nodes.

ForceDirectedEdge

This holds ForceDirectedLayout-specific information about Links.

ForceDirectedLayout

Force-directed layout treats the graph as if it were a system of physical bodies with repulsive electrical, attractional gravitational, and spring forces acting on them and between them.

ForceDirectedNetwork

This class represents an abstract graph of ForceDirectedVertexes and ForceDirectedEdges that can be constructed based on the Nodes and Links of a Diagram so that the ForceDirectedLayout can operate independently of the diagram until it is time to commit any node positioning or link routing.

ForceDirectedVertex

This holds ForceDirectedLayout-specific information about Nodes.

GridLayout

This simple layout places all of the Parts in a grid-like arrangement, ordered, spaced apart, and wrapping as needed. It ignores any Links connecting the Nodes being laid out.

LayeredDigraphEdge

This holds LayeredDigraphLayout-specific information about Links.

LayeredDigraphLayout

This arranges nodes of directed graphs into layers (rows or columns).

LayeredDigraphNetwork

This class represents an abstract graph of LayeredDigraphVertexes and LayeredDigraphEdges that can be constructed based on the Nodes and Links of a Diagram so that the LayeredDigraphLayout can operate independently of the diagram until it is time to commit any node positioning or link routing.

LayeredDigraphVertex

This holds LayeredDigraphLayout-specific information about Nodes.

Layout

This is the base class for all of the predefined diagram layout implementations. They only arrange Parts (primarily Nodes and Links) in a Diagram, not to GraphObjects in Panels (i.e. panel layout).

NetworkLayout<N, V, E, Y>

NetworkLayouts can be used to create more complicated layouts using Network<V, E, Y>s.

Network<V, E, Y>

This provides an abstract view of a diagram as a network (graph) of vertexes and directed edges. The network contains vertexes and edges corresponding to Nodes and Links.

Network<V, E, Y>.Edge

An edge represents a Link in a Network<V, E, Y>, along with its FromVertex and ToVertex.

Network<V, E, Y>.Vertex

A vertex represents a Node in a Network<V, E, Y>, along with its Bounds and Focus and collections of Network<V, E, Y>.Edges that come into and go out of the vertex.

TreeEdge

This holds TreeLayout-specific information about Links.

TreeLayout

This layout positions nodes of a tree-structured graph in layers (rows or columns).

TreeNetwork

This class represents an abstract graph of TreeVertexes and TreeEdges that can be constructed based on the Nodes and Links of a Diagram so that the TreeLayout can operate independently of the diagram until it is time to commit any node positioning or link routing.

TreeVertex

This holds TreeLayout-specific information about Nodes.

Enums

CircularArrangement

This enumeration specifies how nodes should be spaced in the ring. Used for Arrangement.

CircularDirection

This enumeration specifies the direction in which the nodes fill the ring. Used for Direction.

CircularNodeDiameterFormula

This enumeration specifies a method for finding the size of a node. Used for NodeDiameterFormula.

CircularSorting

This enumeration specifies how to sort the nodes. Used for Sorting.

GridAlignment

This enumeration specifies whether to position each part by its location or by its position. Used for Alignment.

GridArrangement

This enumeration specifies how to fill each row. Used for Arrangement.

GridSorting

This enumeration specifies whether to sort the children of a part, and in what order to position them. Used for Sorting.

LayeredDigraphAggressive

This enumeration specifies how much effort Northwoods.Go.Layouts.LayeredDigraphLayout.ReduceCrossings() puts into trying to look for link crossings. Used for AggressiveOption.

LayeredDigraphAlign

These enumerated values can be bitwise combined as values for the AlignOption property, which controls how LayeredDigraphLayout attempts to align nodes during straightening and packing.

LayeredDigraphCycleRemove

This enumeration specifies how Northwoods.Go.Layouts.LayeredDigraphLayout.RemoveCycles() changes the graph to make sure it contains no cycles or loops. Used for CycleRemoveOption.

LayeredDigraphInit

This enumeration specifies how Northwoods.Go.Layouts.LayeredDigraphLayout.InitializeIndices() determines the array of indices for each layer. Used for InitializeOption.

LayeredDigraphLayering

This enumeration specifies how AssignLayers() assigns each node of the graph to a layer. Used for LayeringOption.

LayeredDigraphPack

These enumerated values can be bitwise combined as values for the PackOption property, which controls how much and what kinds of effort Northwoods.Go.Layouts.LayeredDigraphLayout.StraightenAndPack() makes.

TreeAlignment

This enumeration specifies how to position a parent TreeVertex relative to its children, or how to align children in a bus. Used for Alignment or AlternateAlignment.

TreeArrangement

This enumeration specifies how to position the resulting trees in the document. Used for Arrangement.

TreeCompaction

This enumeration specifies how closely packed the children of a node should be. Used for Compaction.

TreeLayerStyle

This enumeration specifies the manner in which nodes are placed into layers. Used for LayerStyle.

TreePath

This enumeration specifies how to build a tree from the TreeNetwork. Used for Path.

TreeSorting

This enumeration specifies whether to sort the children of a node, and in what order to position them. Used for Sorting or AlternateSorting.

TreeStyle

This enumeration specifies the general style in which the nodes are laid out. Used for TreeStyle.