Class ForceDirectedNetwork

GoDiagram®
v10.0.12
by Northwoods Software®

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.

Namespace: Northwoods.Go.Layouts
Assembly: Northwoods.GoDiagram.Avalonia.ForceDirectedLayout.dll
Syntax
public class ForceDirectedNetwork : Network<ForceDirectedVertex, ForceDirectedEdge, ForceDirectedLayout>
Remarks

This class inherits from Network<V, E, Y>.

Constructors

ForceDirectedNetwork(ForceDirectedLayout)

This constructs an empty network associated with a given layout.

Declaration
public ForceDirectedNetwork(ForceDirectedLayout layout)
Parameters
Type Name Description
ForceDirectedLayout layout
Remarks

It is commonplace to call AddParts(IEnumerable<Part>, bool, Predicate<Part>) to build up the network to have the same structure as a Diagram's or Group's nodes and links.

Methods

CreateEdge()

Allocate a new instance of Network<V, E, Y>.Edge.

Declaration
public override ForceDirectedEdge CreateEdge()
Returns
Type Description
ForceDirectedEdge
Overrides
Northwoods.Go.Layouts.Network<Northwoods.Go.Layouts.ForceDirectedVertex, Northwoods.Go.Layouts.ForceDirectedEdge, Northwoods.Go.Layouts.ForceDirectedLayout>.CreateEdge()
Remarks

This is overridden in Network subclasses to create instances of subclasses of Network<V, E, Y>.Edge. Please read the Introduction page on Extensions for how to override methods and how to call this base method.

CreateVertex()

Allocate a new instance of Network<V, E, Y>.Vertex.

Declaration
public override ForceDirectedVertex CreateVertex()
Returns
Type Description
ForceDirectedVertex
Overrides
Northwoods.Go.Layouts.Network<Northwoods.Go.Layouts.ForceDirectedVertex, Northwoods.Go.Layouts.ForceDirectedEdge, Northwoods.Go.Layouts.ForceDirectedLayout>.CreateVertex()
Remarks

This is overridden in Network subclasses to create instances of subclasses of Network<V, E, Y>.Vertex. Please read the Introduction page on Extensions for how to override methods and how to call this base method.