#include <nanglestructure.h>
Inheritance diagram for regina::NAngleStructureVector:
Public Member Functions | |
NAngleStructureVector (unsigned length) | |
Creates a new vector all of whose entries are initialised to zero. | |
NAngleStructureVector (const NVector< NLargeInteger > &cloneMe) | |
Creates a new vector that is a clone of the given vector. | |
virtual NVector< NLargeInteger > * | clone () const |
Makes a newly allocated clone of this vector. |
This vector will contain one member per angle plus a final scaling member; to obtain the actual angle in the angle structure one should divide the corresonding angle member by the scaling member and then multiply by pi.
The reason for using this obfuscated representation is so we can be lazy and use the NVertexEnumerator vertex solution routines to calculate vertex angle structures.
If there are t tetrahedra in the underlying triangulation, there will be precisely 3t+1 elements in this vector. The first three elements will be the angle members for the first tetrahedron, the next three for the second tetrahedron and so on. For each tetraheron, the three individual elements are the angle members for vertex splittings 0, 1 and 2 (see NAngleStructure::getAngle()). The final element of the vector is the scaling member as described above.
|
Creates a new vector all of whose entries are initialised to zero.
|
|
Creates a new vector that is a clone of the given vector.
|
|
Makes a newly allocated clone of this vector. The clone will be of the same subclass of NVector as this vector.
Reimplemented from regina::NRay. |