ug4
|
Concrete types share this base-type. It is not intended for direct use. More...
#include <grid_objects_2d.h>
Public Member Functions | |
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) |
CustomQuadrilateral () | |
CustomQuadrilateral (const QuadrilateralDescriptor &qd) | |
CustomQuadrilateral (Vertex *v1, Vertex *v2, Vertex *v3, Vertex *v4) | |
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 | get_opposing_side (EdgeVertices *e, EdgeDescriptor &edOut) const |
fills the edge-descriptor with the edge that lies opposed to the specified one | |
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 Quadrilateral by inserting new vertices. | |
virtual Vertex * | vertex (size_t index) const |
virtual Face::ConstVertexArray | vertices () const |
Static Public Attributes | |
static const size_t | NUM_VERTICES = 4 |
Protected Member Functions | |
virtual void | set_vertex (uint index, Vertex *pVrt) |
Protected Attributes | |
Vertex * | m_vertices [4] |
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 ConcreteQuadrilateralType 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.
|
inline |
ug::CustomQuadrilateral< ConcreteQuadrilateralType, BaseClass, RefTriType, RefQuadType >::CustomQuadrilateral | ( | const QuadrilateralDescriptor & | qd | ) |
References ug::QuadrilateralDescriptor::vertex().
ug::CustomQuadrilateral< ConcreteQuadrilateralType, BaseClass, RefTriType, RefQuadType >::CustomQuadrilateral | ( | Vertex * | v1, |
Vertex * | v2, | ||
Vertex * | v3, | ||
Vertex * | v4 | ||
) |
|
virtual |
|
virtual |
References LOG.
|
inlinevirtual |
|
virtual |
|
inlinevirtual |
|
inlinevirtual |
References ug::EdgeDescriptor::set_vertices().
|
virtual |
References UG_THROW, and ug::VERTEX.
|
virtual |
fills the edge-descriptor with the edge that lies opposed to the specified one
If the specified edge is not part of the face, false is returned.
References ug::Face::get_local_side_index().
|
virtual |
|
inlinevirtual |
Referenced by ug::CalculateAspectRatio().
|
inlinevirtual |
References ug::ROID_QUADRILATERAL.
|
virtual |
Refines a Quadrilateral by inserting new vertices.
References ug::ReorderCornersCCW(), ug::rot(), UG_LOG, and UG_THROW.
Referenced by ug::HangingNodeRefinerBase< TSelector >::refine_face_with_hanging_vertex().
|
inlineprotectedvirtual |
|
inlinevirtual |
|
inlinevirtual |
Referenced by ug::CalculateAspectRatio().
|
protected |
|
static |