Regina Calculation Engine
|
Describes how a single saturated block forms a part of a larger saturated region. More...
#include <subcomplex/nsatregion.h>
Public Member Functions | |
NSatBlockSpec () | |
Creates a new structure that is completely uninitialised. More... | |
NSatBlockSpec (NSatBlock *useBlock, bool useRefVert, bool useRefHoriz) | |
Creates a new structure that is initialised to the given set of values. More... | |
Public Attributes | |
NSatBlock * | block |
Details of the saturated block structure. More... | |
bool | refVert |
Indicates whether the block is reflected vertically within the larger region. More... | |
bool | refHoriz |
Indicates whether the block is reflected horizontally within the larger region. More... | |
Describes how a single saturated block forms a part of a larger saturated region.
A saturated region consists of several saturated blocks joined together along their boundary annuli. This is a helper structure containing a single saturated block along with details of its orientation within a larger region.
The ring of saturated annuli around the boundary of the block gives a natural orientation to the block within the context of the base orbifold, just as the ring of edges around a polygon would give a natural orientation to that polygon within the context of a surrounding surface. Again drawing an analogy with the orientation of polygons within a surface, each block can be considered to have a correct or reflected orientation according to whether this ring of annuli runs clockwise or anticlockwise in the base orbifold.
The precise orientation of a block is described using two booleans. A block may be reflected horizontally, which preserves the directions of Seifert fibres but which reverses the clockwise/anticlockwise orientation as discussed above. A block may also be reflected vertically, which preserves the clockwise/anticlockwise orientation but which reverses the directions of the Seifert fibres. A block may of course be reflected both horizontally and vertically, or it may not be reflected at all.
This helper structure is small, and can be copied by value if necessary. Be aware that when this structure is destroyed, the internal block structure of type NSatBlock is not destroyed.
|
inline |
Creates a new structure that is completely uninitialised.
|
inline |
Creates a new structure that is initialised to the given set of values.
useBlock | details of the saturated block structure. |
useRefVert | true if the block is reflected vertically within the larger region, or false otherwise. |
useRefHoriz | true if the block is reflected horizontally within the larger region, or false otherwise. |
NSatBlock* regina::NSatBlockSpec::block |
Details of the saturated block structure.
bool regina::NSatBlockSpec::refHoriz |
Indicates whether the block is reflected horizontally within the larger region.
See the class notes for details.
bool regina::NSatBlockSpec::refVert |
Indicates whether the block is reflected vertically within the larger region.
See the class notes for details.