Adaptagrams
Public Member Functions | Public Attributes | List of all members
dialect::BendSequence Struct Reference

A data structure for managing sequences of bend types, points at which these bends should occur (in a given Chain), cost of such a sequence of bends (for a given Chain), and incoming and outgoing Compass directions, for non-cycles. More...

#include <chains.h>

Collaboration diagram for dialect::BendSequence:
Collaboration graph

Public Member Functions

 BendSequence (LinkShapes &shapes)
 Basic constructor. More...
 
 BendSequence (LinkShapes &shapes, CardinalDir inDir, CardinalDir outDir)
 Augmented constructor in which incoming and outgoing directions are also set. More...
 
size_t size (void) const
 Report the number of bends in the sequence.
 

Public Attributes

LinkShapes bendTypes
 Under bendTypes we record what shape bend we want.
 
std::vector< size_t > bendPoints
 

Detailed Description

A data structure for managing sequences of bend types, points at which these bends should occur (in a given Chain), cost of such a sequence of bends (for a given Chain), and incoming and outgoing Compass directions, for non-cycles.

Constructor & Destructor Documentation

◆ BendSequence() [1/2]

dialect::BendSequence::BendSequence ( LinkShapes &  shapes)
inline

Basic constructor.

Parameters
[in]shapesThe sequence of LinkShapes describing the desired bends.

◆ BendSequence() [2/2]

dialect::BendSequence::BendSequence ( LinkShapes &  shapes,
CardinalDir  inDir,
CardinalDir  outDir 
)
inline

Augmented constructor in which incoming and outgoing directions are also set.

Parameters
[in]shapesThe sequence of LinkShapes describing the desired bends.
[in]inDirThe incoming direction.
[in]outDirThe outgoing direction.

Member Data Documentation

◆ bendPoints

std::vector<size_t> dialect::BendSequence::bendPoints

Under bendPoints we can record those places in a Chain where we want the bends to occur. The "places" are indices 0, 1, 2, 3, ... which refer to the first node in the chain, then the first edge, next node, next edge, and so on, with even numbers meaning nodes and odd numbers meaning edges.


The documentation for this struct was generated from the following file: