template<class T, int D, typename uiter>
class gismo::gsTensorDomainBoundaryIterator< T, D, uiter >
Re-implements gsDomainIterator for iteration over all elements of the boundary of a tensor product parameter domain.
See gsDomainIterator for more detailed documentation and an example of the typical use!!!
|
virtual void | adjacent (const gsVector< bool > &, gsDomainIterator &) |
|
const gsVector< T > & | centerPoint () const |
| Returns the center of the current element.
|
|
short_t | dim () const |
| Return dimension of the elements.
|
|
T | getCellSize () const |
| Return the diagonal of the element.
|
|
T | getMaxCellLength () const |
| Return the length of the largest edge of the element.
|
|
T | getMinCellLength () const |
| Return the length of the smallest edge of the element.
|
|
const T | getPerpendicularCellSize () const |
| Returns the perpendicular cell size of boundary iterator.
|
|
bool | good () const |
| Is the iterator still pointing to a valid element?
|
|
| gsTensorDomainBoundaryIterator (const gsBasis< T > &b, const boxSide &s) |
| Constructs a new instance.
|
|
| gsTensorDomainBoundaryIterator (const std::vector< std::vector< T > > &breaks_, const boxSide &s) |
| Constructor using explicitly defined breaks.
|
|
size_t | id () const |
| Returns the element id.
|
|
gsVector< unsigned, D > | index () const |
| Return the tensor index of the current element.
|
|
const gsVector< T > & | lowerCorner () const |
| Returns the lower corner of the current element.
|
|
bool | next () |
| Proceeds to the next element.
|
|
bool | next (index_t increment) |
| Proceeds to the next element (skipping increment elements).
|
|
size_t | numElements () const |
| Returns the number of elements.
|
|
void | reset () |
|
void | setBreaks (std::vector< T > newBreaks, index_t i) |
| Function to set the breakpoints in direction i manually.
|
|
const gsVector< T > & | upperCorner () const |
| Returns the upper corner of the current element.
|
|
T | volume () const |
| Return the volume of the element.
|
|
template<class T >
const gsVector< T > & centerPoint |
( |
| ) |
const |
|
inlineinherited |
Returns the center of the current element.
The current element is a d-dimensional hypercube. The coordinates of its upper corner is returned as a gsVector of length d.
E.g., if the current two-dimensional element is defined by [a,b]x[c,d], then [b,d] is returned (see also lowerCorner()).
template<class T , int D, typename uiter >
const T getPerpendicularCellSize |
( |
| ) |
const |
|
inlinevirtual |
Returns the perpendicular cell size of boundary iterator.
Only works for boundary iterators. Returns the length from the boundary side to the parallel side not on the boundary.
Reimplemented from gsDomainIterator< T >.
template<class T , int D, typename uiter >
const gsVector< T > & lowerCorner |
( |
| ) |
const |
|
inlinevirtual |
Returns the lower corner of the current element.
The current element is a d-dimensional hypercube. The coordinates of its lower corner is returned as a gsVector of length d.
E.g., if the current two-dimensional element is defined by [a,b]x[c,d], then [a,c] is returned (see also upperCorner()).
Reimplemented from gsDomainIterator< T >.
template<class T , int D, typename uiter >
Proceeds to the next element.
The function returns true if there are still elements remaining that have not been treated.
For the typical usage of this function, see the example in the documentation of gsDomainIterator.
Implements gsDomainIterator< T >.
template<class T , int D, typename uiter >
Computes lower, upper and center point of the current element, maps the reference quadrature nodes and weights to the current element, and computes the active functions. Plus some additional, boundary-iterator-specific things.
template<class T , int D, typename uiter >
const gsVector< T > & upperCorner |
( |
| ) |
const |
|
inlinevirtual |
Returns the upper corner of the current element.
The current element is a d-dimensional hypercube. The coordinates of its upper corner is returned as a gsVector of length d.
E.g., if the current two-dimensional element is defined by [a,b]x[c,d], then [b,d] is returned (see also lowerCorner()).
Reimplemented from gsDomainIterator< T >.