template<class T>
class gismo::gsTemplate< T >
Class gsTemplate object.
A template is a structure defining a topological arrangement of a collection of parameter domains (that map to physical-domain patches). Additionally, the template stores the images of the corner points on physical space (but not the surface patch itself).
For ordering the box vertices:
6---7
/| /|
2---3 |
| 4-|-5
|/ |/
0---1
Sides:
2---3 3---7 7---6 6---2
| | | | | | | |
| | | | | | | |
0---1 1---5 5---4 4---0
Bottom/Top:
0---1 6---7
| | | |
| | | |
4---5 2---3
Then we describe quads or triangle pairs in the right counter-clockwise order:
2---3 3 2--3
| | becomes /| and | /
| | / | |/
0---1 0--1 0
Triangles 0-1-3 and 0-3-2 Quad 0-1-3-2
|
void | addAutoBoundaries () |
| Make all patch sides which are not yet declared as interface or boundary to a boundary.
|
|
void | addBoundary (index_t p, boxSide s, std::string l="") |
| Set side s of box p to a boundary.
|
|
void | addBoundary (const patchSide &ps) |
| Set patch side ps to a boundary.
|
|
void | addBox (index_t i=1) |
| Add i new boxes.
|
|
template<class T > |
gsProperty< T > | addBoxProperty (const std::string &name, T t=T()) |
| Adds a box property. More...
|
|
void | addInterface (index_t p1, boxSide s1, index_t p2, boxSide s2, std::string l="") |
| Add an interface between side s1 of box p1 and side s2 of box p2.
|
|
void | addInterface (const boundaryInterface &bi) |
| Add an interface described by bi.
|
|
std::vector< std::vector
< patchComponent > > | allComponents (bool combineCorners=false) const |
| Returns all components representing the topology. More...
|
|
const_biterator | bBegin () const |
|
biterator | bBegin () |
|
const_biterator | bEnd () const |
|
biterator | bEnd () |
|
const boundaryInterface & | bInterface (int i) const |
| Access i-th boundary interface.
|
|
const bContainer & | boundaries () const |
| Return the vector of boundaries.
|
|
bContainer | boundaries (const std::string l) const |
| Return the vector of boundaries with label l.
|
|
void | checkConsistency () const |
| Check that boundaries and interfaces are consistent.
|
|
void | clearAll () |
| Clear all boxes, boundary and interface data.
|
|
void | clearTopology () |
| Clear all boundary and interface data.
|
|
gsTemplate * | clone () const |
| Clone function. Used to make a copy of the object.
|
|
short_t | dim () const |
| Dimension of the boxes.
|
|
InterfacePtr | findInterface (const index_t b1, const index_t b2) const |
|
BoundaryPtr | getBoundary (const patchSide &ps) |
| Returns a pointer to the boundary stored in this class, given ps.
|
|
template<class T > |
gsProperty< T > | getBoxProperty (const std::string &name) const |
| Adds a box property. More...
|
|
bool | getCornerList (const patchCorner &start, std::vector< patchCorner > &cornerList) const |
|
void | getEVs (std::vector< std::vector< patchCorner > > &cornerLists, bool boundaries=false) const |
|
bool | getInterface (const patchSide &ps, boundaryInterface &result) const |
|
int | getMaxValence () const |
| returns the maximal valence of a vertex of this topology.
|
|
bool | getNeighbour (const patchSide &ps, patchSide &result, int &ii) const |
|
bool | getNeighbour (const patchSide &ps, patchSide &result) const |
|
void | getOVs (std::vector< std::vector< patchCorner > > &cornerLists) const |
|
| gsTemplate () |
| Default empty constructor.
|
|
| gsTemplate (int r, bool) |
| square template constructed providing the 4 corners Bb matrix (2,4) (x and y coord.)
|
|
| gsTemplate (const std::vector< T > &intervalWidths, const gsMatrix< T > &verts, size_t startIdx, size_t endIdx, T curveProportion) |
|
const_iiterator | iBegin () const |
|
iiterator | iBegin () |
|
const_iiterator | iEnd () const |
|
iiterator | iEnd () |
|
const ifContainer & | interfaces () const |
| Return the vector of interfaces.
|
|
ifContainer | interfaces (const std::string l) const |
| Return the vector of interfaces with label l.
|
|
bool | isBoundary (const patchSide &ps) const |
| Is the given patch side ps set to a boundary?
|
|
bool | isBoundary (index_t p, boxSide s) |
| Returns true if side s on patch p is a boundary.
|
|
bool | isInterface (const patchSide &ps) const |
| Is the given patch side ps set to an interface?
|
|
size_t | nBoundary () const |
| Number of boundaries.
|
|
index_t | nBoxes () const |
| Number of boxes.
|
|
size_t | nInterfaces () const |
| Number of interfaces.
|
|
index_t | nPatches () const |
| Number of patches.
|
|
index_t | numBoxProperties () const |
| Returns the number of assigned box properties. More...
|
|
std::ostream & | print (std::ostream &os) const |
| Prints the object as a string.
|
|
void | setDim (short_t i) |
| Set the dimension of the boxes.
|
|
void | swap (gsBoxTopology &other) |
| Swap with another gsBoxTopology.
|
|