Namespace Elements.Spatial.AdaptiveGrid
Classes
AdaptiveGraphRouting
Class for routing through an AdaptiveGrid.
AdaptiveGrid
A graph like edge-vertex structure with planar spaces connected by vertical edges. The grid doesn't do any intersections when new sections are added, they are stitched only by common vertices. Make sure that regions that are added into the graph are aligned with respect to boundaries and split points.
ConnectVertexStrategy
Connect strategy creates edges between new vertex created from base position and any number of given vertices.
ConnectVertexWithAngleStrategy
ConnectWithAngle strategy that connects two points in a way so incoming edge of other vertex has certain angle with given direction. Creates one middle vertex to achieve this but it can be skipped if two points are already aligned.
Edge
A unique edge in a adaptive grid, connecting two vertices. Don't have a particular direction. Class is forked from CellComplex.Edge.
Obstacle
AdaptiveGrid obstacle represented by a set of points with extra parameters. Points are used to created bounding box that is aligned with transformation parameter with extra offset. Since offset is applied on the box, distance on corners is even larger. Can be constructed from different objects.
RoutingHintLine
Structure that holds information about polylines that are used to guide routing.
TreeNode
Node that represents a vertex in a routed tree.
Vertex
A unique vertex in a adaptive grid. Class is forked from CellComplex.Vertex.
WeightModifier
Object that lets you apply an edge weight factor to edges that meet a Condition filter function. If an edge meets the condition of several WeightModifier objects they will be grouped by group name and factor aggregator function will be applied to WeightModifiers SetWeightModifiersGroupAggregator(String, Func<Double, Double, Double>). By default - the lowest factor of group is chosen. Factors of all groups will be multiplied.
Structs
EdgeInfo
Precalculated information about the edge.
RoutingConfiguration
Object that holds common parameters that affect routing.
RoutingVertex
Structure that holds additional information about inlet vertex
Interfaces
IAddVertexStrategy
Interface for adding new vertices based on chosen strategy.
Enums
AdaptiveGrid.VerticesInsertionMethod
Execution style for AddVertices function. Each option performs more operations than the previous one.
BranchSide
Enumeration that indicates one of two possible paths in routing. There are cases when we need to collect more than one path and only after some time we can decide which one is better.
EdgeFlags
Bit set of flags storing information about edge. Each flag is set to it's own number - power of 2, so they can be safely combined. Use | or |= to combine flags: flag = Hint2D | HasVerticalChange = 1 + 4 = 001 + 100 = 101 = 5. Use & or &= to check of one or more flags: flags & Hint3D == 101 & 010 == 0 == None, but flags & Hint2D == 101 & 001 == 001 == Hint2D.
TreeOrder
Order at which leaf terminal are connected into the tree.
Delegates
AdaptiveGraphRouting.RoutingFilter
Filter function definition.