Regina 7.4 Calculation Engine
|
Angle structures on triangulations. More...
Classes | |
class | regina::AngleStructure |
Represents an angle structure on a triangulation. More... | |
class | regina::AngleStructures |
A collection of angle structures on a 3-manifold triangulation. More... | |
Enumerations | |
enum class | regina::AngleAlg { regina::AngleAlg::Default = 0x0000 , regina::AngleAlg::Tree = 0x0010 , regina::AngleAlg::DD = 0x0020 , regina::AngleAlg::Legacy = 0x4000 , regina::AngleAlg::Custom = 0x8000 } |
Represents options and variants of algorithms for enumerating various types of angle structures on 3-manifold triangulations. More... | |
Functions | |
Flags< AngleAlg > | regina::operator| (AngleAlg lhs, AngleAlg rhs) |
Returns the bitwise OR of the two given flags. | |
void | regina::swap (AngleStructure &a, AngleStructure &b) noexcept |
Swaps the contents of the given angle structures. | |
void | regina::swap (AngleStructures &lhs, AngleStructures &rhs) |
Swaps the contents of the two given lists. | |
MatrixInt | regina::makeAngleEquations (const Triangulation< 3 > &tri) |
Generates the set of angle structure equations for the given triangulation. | |
Angle structures on triangulations.
|
strong |
Represents options and variants of algorithms for enumerating various types of angle structures on 3-manifold triangulations.
This enumeration type is used with angle structure enumeration routines, such as the AngleStructures class constructor.
These values can be combined using the bitwise OR operator (resulting in an object of type Flags<AngleAlg>
). In particular, if a hypersurface enumeration function takes an argument of type Flags<AngleAlg>
, then you can pass a single AngleAlg constant, or a bitwise combination of such constants (flag1 | flag2)
, or empty braces {}
to indicate no flags at all (which is equivalent to passing AngleAlg::Default
).
MatrixInt regina::makeAngleEquations | ( | const Triangulation< 3 > & | tri | ) |
Generates the set of angle structure equations for the given triangulation.
These are the angle equations that will be used when enumerating angle structures on the given triangulation.
Each equation will be represented as a row of the resulting matrix, and each column will represent a coordinate in the underlying coordinate system (which is described in the notes for AngleStructure::vector()).
tri | the triangulation upon which these angle structure equations will be based. |
Returns the bitwise OR of the two given flags.
lhs | the first flag to combine. |
rhs | the second flag to combine. |
|
inlinenoexcept |
Swaps the contents of the given angle structures.
This global routine simply calls AngleStructure::swap(); it is provided so that AngleStructure meets the C++ Swappable requirements.
a | the first angle structure whose contents should be swapped. |
b | the second angle structure whose contents should be swapped. |
|
inline |
Swaps the contents of the two given lists.
This global routine simply calls AngleStructures::swap(); it is provided so that AngleStructures meets the C++ Swappable requirements.
See AngleStructures::swap() for more details.
noexcept
, since it fires change events on both lists which may in turn call arbitrary code via any registered packet listeners.lhs | the list whose contents should be swapped with rhs. |
rhs | the list whose contents should be swapped with lhs. |