Regina Calculation Engine
|
Provides core functionality for dim-dimensional triangulations. More...
#include <triangulation/detail/triangulation.h>
Classes | |
class | TopologyLock |
Creates a temporary lock on the topological properties of the given triangulation. More... | |
Public Types | |
typedef std::vector< Simplex< dim > * >::const_iterator | SimplexIterator |
Used to iterate through top-dimensional simplices. More... | |
typedef std::vector< Component< dim > * >::const_iterator | ComponentIterator |
Used to iterate through connected components. More... | |
typedef std::vector< BoundaryComponent< dim > * >::const_iterator | BoundaryComponentIterator |
Used to iterate through boundary components. More... | |
Public Member Functions | |
Constructors and Destructors | |
TriangulationBase () | |
Default constructor. More... | |
TriangulationBase (const TriangulationBase< dim > ©) | |
Creates a new copy of the given triangulation. More... | |
TriangulationBase (const TriangulationBase< dim > ©, bool cloneProps) | |
Creates a new copy of the given triangulation, with the option of whether or not to clone its computed properties also. More... | |
~TriangulationBase () | |
Destroys this triangulation. More... | |
Static Public Attributes | |
static constexpr int | dimension = dim |
A compile-time constant that gives the dimension of the triangulation. More... | |
Protected Attributes | |
MarkedVector< Simplex< dim > > | simplices_ |
The top-dimensional simplices that form the triangulation. More... | |
MarkedVector< BoundaryComponent< dim > > | boundaryComponents_ |
The components that form the boundary of the triangulation. More... | |
bool | valid_ |
Is this triangulation valid? See isValid() for details on what this means. More... | |
int | topologyLock_ |
If non-zero, this will cause Triangulation<dim>::clearAllProperties() to preserve any computed properties that related to the manifold (as opposed to the specific triangulation). More... | |
Importing Triangulations | |
template<int , int , int > | |
struct | FaceCalculator |
template<int , int > | |
struct | BoundaryComponentCalculator |
template<int , int > | |
struct | PachnerHelper |
template<int , int > | |
class | WeakFaceList |
class | regina::detail::XMLTriangulationReaderBase< dim > |
TriangulationBase & | operator= (const TriangulationBase &)=delete |
static Triangulation< dim > * | fromIsoSig (const std::string &sig) |
Recovers a full triangulation from an isomorphism signature. More... | |
static size_t | isoSigComponentSize (const std::string &sig) |
Deduces the number of top-dimensional simplices in a connected triangulation from its isomorphism signature. More... | |
void | ensureSkeleton () const |
Ensures that all "on demand" skeletal objects have been calculated. More... | |
bool | calculatedSkeleton () const |
Determines whether the skeletal objects and properties of this triangulation have been calculated. More... | |
void | calculateSkeleton () |
Calculates all skeletal objects for this triangulation. More... | |
void | clearBaseProperties () |
Clears all properties that are managed by this base class. More... | |
void | swapBaseProperties (TriangulationBase< dim > &other) |
Swaps all properties that are managed by this base class, including skeletal data, with the given triangulation. More... | |
void | writeXMLBaseProperties (std::ostream &out) const |
Writes a chunk of XML containing properties of this triangulation. More... | |
Provides core functionality for dim-dimensional triangulations.
Such a triangulation is represented by the class Triangulation<dim>, which uses this as a base class. End users should not need to refer to TriangulationBase directly.
See the Triangulation class notes for further information.
Note that this class does not derive from Output. This is to avoid clashes with the output code inherited from Packet. Specifically:
dim | the dimension of the triangulation. This must be between 2 and 15 inclusive. |