|
virtual bool | collapse_edge (std::vector< Face * > &vNewFacesOut, int edgeIndex, Vertex *newVertex, Vertex **pSubstituteVertices=NULL) |
|
virtual bool | collapse_edges (std::vector< Face * > &vNewFacesOut, std::vector< Vertex * > &vNewEdgeVertices, Vertex **pSubstituteVertices=NULL) |
|
virtual GridObject * | create_empty_instance () const |
|
virtual void | create_faces_by_edge_split (int splitEdgeIndex, Vertex *newVertex, std::vector< Face * > &vNewFacesOut, Vertex **pSubstituteVertices=NULL) |
|
| CustomTriangle () |
|
| CustomTriangle (const TriangleDescriptor &td) |
|
| CustomTriangle (Vertex *v1, Vertex *v2, Vertex *v3) |
|
virtual EdgeDescriptor | edge_desc (int index) const |
|
virtual void | edge_desc (int index, EdgeDescriptor &edOut) const |
|
virtual std::pair< GridBaseObjectId, int > | get_opposing_object (Vertex *vrt) const |
|
virtual bool | is_regular_ref_rule (int edgeMarks) const |
|
virtual size_t | num_vertices () const |
|
virtual ReferenceObjectID | reference_object_id () const |
|
virtual bool | refine (std::vector< Face * > &vNewFacesOut, Vertex **newFaceVertexOut, Vertex **newEdgeVertices, Vertex *newFaceVertex=NULL, Vertex **pSubstituteVertices=NULL, int snapPointIndex=-1) |
| Refines a Triangle by inserting new vertices. More...
|
|
virtual Vertex * | vertex (size_t index) const |
|
virtual Face::ConstVertexArray | vertices () const |
|
template<class ConcreteTriangleType, class BaseClass, class RefTriType, class RefQuadType>
class ug::CustomTriangle< ConcreteTriangleType, BaseClass, RefTriType, RefQuadType >
Concrete types share this base-type. It is not intended for direct use.
BaseClass has to be derived from Face (or simply should be Face). The ConcreteTriangleType is used in methods like refine, etc. as the type of newly created objects.
RefTriType and RefQuadType are used to create new elements during refinement operations.