Subdivision strategy for quadrilaterals which generates four children. More...
#include <quadsubdiv.hh>


Public Member Functions | |
| virtual void | createChildren (Quad &q) const |
| If no children of q exist, they are created. | |
| virtual Edge * | newEdge (const Quad &q, uint i) const |
| Returns the ith edge which has been newly created by the subdivision. | |
| virtual Vertex * | newVertex (const Quad &q, uint i) const |
| Return the ith vertex which has been newly created by the subdivision. | |
| virtual void | removeChildren (Quad &q) const |
| If there are children, they are removed. | |
| virtual | ~QuadSubdiv4 () |
Static Public Member Functions | |
| static const QuadSubdiv4 * | instance () |
Protected Member Functions | |
| virtual std::ostream & | info (std::ostream &os) const |
| Returns information in an output stream. | |
Static Private Attributes | |
| static std::auto_ptr< QuadSubdiv4 > | instance_ |
Subdivision strategy for quadrilaterals which generates four children.
This is the default subdivision strategy.
The children are generated by subdividing the four edges and introducing four new edges meeting in the middle of the parent quad.
Definition at line 71 of file quadsubdiv.hh.
| virtual concepts::QuadSubdiv4::~QuadSubdiv4 | ( | ) | [virtual] |
| virtual void concepts::QuadSubdiv4::createChildren | ( | Quad & | q | ) | const [virtual] |
If no children of q exist, they are created.
Implements concepts::QuadSubdivision.
| virtual std::ostream& concepts::QuadSubdiv4::info | ( | std::ostream & | os | ) | const [protected, virtual] |
Returns information in an output stream.
Reimplemented from concepts::OutputOperator.
| static const QuadSubdiv4* concepts::QuadSubdiv4::instance | ( | ) | [static] |
Returns the ith edge which has been newly created by the subdivision.
An edge which is the result of a refinement is not newly created.
Implements concepts::QuadSubdivision.
Return the ith vertex which has been newly created by the subdivision.
An vertex which is the result of a refinement (ie. of an edge) is not newly created.
Implements concepts::QuadSubdivision.
| virtual void concepts::QuadSubdiv4::removeChildren | ( | Quad & | q | ) | const [virtual] |
If there are children, they are removed.
The additional edges and vertices are removed as well.
Implements concepts::QuadSubdivision.
std::auto_ptr<QuadSubdiv4> concepts::QuadSubdiv4::instance_ [static, private] |
Definition at line 82 of file quadsubdiv.hh.