MeshKit  1.0
Face Class Reference

#include <Mesh.hpp>

Inheritance diagram for Face:

List of all members.

Public Member Functions

 Face ()
 Face (const Vertex *v0, const Vertex *v1, const Vertex *v2)
 Face (const Vertex *v0, const Vertex *v1, const Vertex *v2, const Vertex *v3)
VertexgetHashNode () const
int getType () const
int concaveAt () const
bool isSimple () const
bool isSameAs (const Face *rhs) const
bool hasNode (const PNode &vertex) const
int getPosOf (const Vertex *vertex) const
void reverse ()
int getOrientation (const Vertex *ev0, const Vertex *ev1) const
int replaceNode (Vertex *oldvertex, Vertex *newvertex)
int getSize (int etype) const
int setNodes (const NodeSequence &v)
const NodeSequencegetNodes () const
const PNodegetNodeAt (size_t id) const
void getAvgPos (Point3D &p) const
bool hasBoundaryNode () const
bool has_all_bound_nodes () const
bool has_boundary_edge () const
int getRelations02 (FaceSequence &seq)
int getRelations12 (FaceSequence &seq)
int getRelations (NodeSequence &seq)
bool isConvex () const
double getAngleAt (const Vertex *v) const
int get_interior_angles (vector< double > &angles) const
double getAspectRatio ()
double getArea ()
int triangulate (vector< Face > &f) const
bool isValid () const
int refine_quad14 (NodeSequence &newnodes, FaceSequence &newfaces)
int refine_quad15 (NodeSequence &newnodes, FaceSequence &newfaces)
void start_from_concave_corner ()
FacegetClone () const

Static Public Member Functions

static PFace newObject ()
static PFace create_quad (const PFace t1, const PFace t2, int replace=0)
static int quad_tessalate (const NodeSequence &orgNodes, NodeSequence &rotatedNodes)
static int hexagon_2_quads (const NodeSequence &hexnodes, FaceSequence &quads, int start_from)
static int is_3_sided_convex_loop_quad_meshable (const int *s, int *sdiv)
static int is_5_sided_convex_loop_quad_meshable (const int *s, int *sdiv)
static int is_cyclic_quad (const Point3D &p0, const Point3D &p1, const Point3D &p2, const Point3D &p3)
static Vertexcentroid (const Vertex *v0, const Vertex *v1, const Vertex *v2)
static Vertexcentroid (const Vertex *v0, const Vertex *v1, const Vertex *v2, const Vertex *v3, const Vertex *v4)
static double distortion (const Vertex *v0, const Vertex *v1, const Vertex *v2)
static double distortion (const Vertex *v0, const Vertex *v1, const Vertex *v2, const Vertex *v3, const Vertex *v4)
static double tri_area (const Point3D &p0, const Point3D &p1, const Point3D &p2)
static Vec3D normal (const Vertex *v0, const Vertex *v1, const Vertex *v2)
static Vec3D normal (const Point3D &p0, const Point3D &p1, const Point3D &v2)
static void bilinear_weights (double xi, double eta, vector< double > &weight)
static double linear_interpolation (const vector< double > &x, const vector< double > &w)
static double quad_area (const Point3D &p0, const Point3D &p1, const Point3D &p2, const Point3D &p3)
static bool is_convex_quad (const Point3D &p0, const Point3D &p1, const Point3D &p2, const Point3D &p3)
static PNode opposite_node (const PFace quad, const PNode n1)
static PNode opposite_node (const PFace tri, PNode n1, PNode n2)
static void opposite_nodes (const PFace quad, PNode n1, PNode n2, PNode &n3, PNode &n4)
static int check_on_boundary (const PFace tri)

Static Public Attributes

static const int POLYGON = 0
static const int TRIANGLE = 3
static const int QUADRILATERAL = 4

Private Member Functions

int refine_convex_quad15 (NodeSequence &newnodes, FaceSequence &newfaces)
int refine_concave_quad15 (NodeSequence &newnodes, FaceSequence &newfaces)

Private Attributes

NodeSequence connect

Detailed Description

Definition at line 586 of file Mesh.hpp.


Constructor & Destructor Documentation

Face ( ) [inline]

Definition at line 653 of file Mesh.hpp.

Face ( const Vertex v0,
const Vertex v1,
const Vertex v2 
) [inline]

Definition at line 659 of file Mesh.hpp.

Face ( const Vertex v0,
const Vertex v1,
const Vertex v2,
const Vertex v3 
) [inline]

Definition at line 667 of file Mesh.hpp.


Member Function Documentation

void bilinear_weights ( double  xi,
double  eta,
vector< double > &  weight 
) [static]

Definition at line 634 of file Mesh.cpp.

Vertex * centroid ( const Vertex v0,
const Vertex v1,
const Vertex v2 
) [static]

Definition at line 942 of file Mesh.cpp.

Vertex * centroid ( const Vertex v0,
const Vertex v1,
const Vertex v2,
const Vertex v3,
const Vertex v4 
) [static]

Definition at line 977 of file Mesh.cpp.

static int check_on_boundary ( const PFace  tri) [static]
int concaveAt ( ) const

Definition at line 668 of file Mesh.cpp.

PFace create_quad ( const PFace  t1,
const PFace  t2,
int  replace = 0 
) [static]

Definition at line 273 of file Mesh.cpp.

static double distortion ( const Vertex v0,
const Vertex v1,
const Vertex v2 
) [static]
static double distortion ( const Vertex v0,
const Vertex v1,
const Vertex v2,
const Vertex v3,
const Vertex v4 
) [static]
int get_interior_angles ( vector< double > &  angles) const

Definition at line 129 of file Mesh.cpp.

double getAngleAt ( const Vertex v) const [inline]

Definition at line 909 of file Mesh.hpp.

double getArea ( ) [inline]

Definition at line 800 of file Mesh.hpp.

double getAspectRatio ( )

Definition at line 527 of file Mesh.cpp.

void getAvgPos ( Point3D p) const

Definition at line 356 of file Mesh.cpp.

Face* getClone ( ) const [inline]

Definition at line 825 of file Mesh.hpp.

Vertex* getHashNode ( ) const [inline]

Definition at line 676 of file Mesh.hpp.

const PNode& getNodeAt ( size_t  id) const [inline]

Definition at line 761 of file Mesh.hpp.

const NodeSequence& getNodes ( ) const [inline]

Definition at line 757 of file Mesh.hpp.

int getOrientation ( const Vertex ev0,
const Vertex ev1 
) const [inline]

Definition at line 715 of file Mesh.hpp.

int getPosOf ( const Vertex vertex) const [inline]

Definition at line 703 of file Mesh.hpp.

int getRelations ( NodeSequence seq)

Definition at line 496 of file Mesh.cpp.

int getRelations02 ( FaceSequence seq)

Definition at line 548 of file Mesh.cpp.

int getRelations12 ( FaceSequence seq)

Definition at line 572 of file Mesh.cpp.

int getSize ( int  etype) const [inline]

Definition at line 739 of file Mesh.hpp.

int getType ( ) const [inline]

Definition at line 680 of file Mesh.hpp.

bool has_all_bound_nodes ( ) const

Definition at line 4548 of file Mesh.cpp.

bool has_boundary_edge ( ) const

Definition at line 617 of file Mesh.cpp.

bool hasBoundaryNode ( ) const [inline]

Definition at line 767 of file Mesh.hpp.

bool hasNode ( const PNode vertex) const [inline]

Definition at line 698 of file Mesh.hpp.

int hexagon_2_quads ( const NodeSequence hexnodes,
FaceSequence quads,
int  start_from 
) [static]

Definition at line 314 of file Mesh.cpp.

int is_3_sided_convex_loop_quad_meshable ( const int *  s,
int *  sdiv 
) [static]

Definition at line 1023 of file Mesh.cpp.

int is_5_sided_convex_loop_quad_meshable ( const int *  s,
int *  sdiv 
) [static]

Definition at line 1142 of file Mesh.cpp.

bool is_convex_quad ( const Point3D p0,
const Point3D p1,
const Point3D p2,
const Point3D p3 
) [static]

Definition at line 476 of file Mesh.cpp.

int is_cyclic_quad ( const Point3D p0,
const Point3D p1,
const Point3D p2,
const Point3D p3 
) [static]

Definition at line 209 of file Mesh.cpp.

bool isConvex ( ) const [inline]

Definition at line 781 of file Mesh.hpp.

bool isSameAs ( const Face rhs) const [inline]

Definition at line 689 of file Mesh.hpp.

bool isSimple ( ) const

Definition at line 723 of file Mesh.cpp.

bool isValid ( ) const

Definition at line 597 of file Mesh.cpp.

double linear_interpolation ( const vector< double > &  x,
const vector< double > &  w 
) [static]

Definition at line 654 of file Mesh.cpp.

PFace newObject ( ) [inline, static]

Definition at line 901 of file Mesh.hpp.

Vec3D normal ( const Vertex v0,
const Vertex v1,
const Vertex v2 
) [static]

Definition at line 398 of file Mesh.cpp.

Vec3D normal ( const Point3D p0,
const Point3D p1,
const Point3D v2 
) [static]

Definition at line 380 of file Mesh.cpp.

PNode opposite_node ( const PFace  quad,
const PNode  n1 
) [static]

Definition at line 196 of file Mesh.cpp.

PNode opposite_node ( const PFace  tri,
PNode  n1,
PNode  n2 
) [static]

Definition at line 166 of file Mesh.cpp.

void opposite_nodes ( const PFace  quad,
PNode  n1,
PNode  n2,
PNode n3,
PNode n4 
) [static]

Definition at line 234 of file Mesh.cpp.

double quad_area ( const Point3D p0,
const Point3D p1,
const Point3D p2,
const Point3D p3 
) [static]

Definition at line 440 of file Mesh.cpp.

int quad_tessalate ( const NodeSequence orgNodes,
NodeSequence rotatedNodes 
) [static]

Definition at line 72 of file Mesh.cpp.

int refine_concave_quad15 ( NodeSequence newnodes,
FaceSequence newfaces 
) [private]

Definition at line 774 of file Mesh.cpp.

int refine_convex_quad15 ( NodeSequence newnodes,
FaceSequence newfaces 
) [private]

Definition at line 852 of file Mesh.cpp.

int refine_quad14 ( NodeSequence newnodes,
FaceSequence newfaces 
)

Definition at line 3651 of file Mesh.cpp.

int refine_quad15 ( NodeSequence newnodes,
FaceSequence newfaces 
)

Definition at line 763 of file Mesh.cpp.

int replaceNode ( Vertex oldvertex,
Vertex newvertex 
) [inline]

Definition at line 727 of file Mesh.hpp.

void reverse ( ) [inline]

Definition at line 711 of file Mesh.hpp.

int setNodes ( const NodeSequence v) [inline]

Definition at line 744 of file Mesh.hpp.

void start_from_concave_corner ( ) [inline]

Definition at line 1737 of file Mesh.hpp.

double tri_area ( const Point3D p0,
const Point3D p1,
const Point3D p2 
) [static]

Definition at line 408 of file Mesh.cpp.

int triangulate ( vector< Face > &  f) const

Definition at line 107 of file Mesh.cpp.


Member Data Documentation

NodeSequence connect [private]

Definition at line 832 of file Mesh.hpp.

const int POLYGON = 0 [static]

Definition at line 588 of file Mesh.hpp.

const int QUADRILATERAL = 4 [static]

Definition at line 590 of file Mesh.hpp.

const int TRIANGLE = 3 [static]

Definition at line 589 of file Mesh.hpp.


The documentation for this class was generated from the following files:
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Defines