![]() |
Shapeworks Studio
2.1
Shape analysis software suite
|
Inheritance diagram for FEMesh:
Collaboration diagram for FEMesh:Public Member Functions | |
| FEMesh (FEMesh &m) | |
| void | Create (int nodes, int elems, int faces=0, int edges=0) |
| allocate space for mesh | |
| void | ShallowCopy (FEMesh *pm) |
| void | Clear () |
| — C L E A N U P — | |
| void | DeleteEdges () |
| int | Elements () const |
| return number of elements | |
| FEElement & | Element (int n) |
| return element | |
| FEElement_ & | ElementRef (int n) |
| return reference to element | |
| FEElement * | ElementPtr (int n=0) |
| return pointer to element | |
| int | FindFace (FEElement *pe, FEFace &f, FEFace &fe) |
| void | FindNodesFromPart (int gid, vector< int > &node) |
| std::vector< FENode > & | NodeArray () |
| std::vector< FEFace > & | FaceArray () |
| std::vector< FEElement > & | ElementArray () |
| double | GetElementValue (int n) |
| void | SetElementValue (int n, double v) |
| void | UpdateValueRange () |
| void | GetValueRange (double &vmin, double &vmax) |
| vec3d | ProjectToSurface (vec3d r, vec3d t) |
| vec3d | ProjectToFace (vec3d p, FEFace &f, double &r, double &s) |
| vec3d | ProjectToEdge (vec3d e1, vec3d e2, vec3d p, double &r) |
| bool | FindIntersection (FEFace &f, vec3d x, vec3d n, vec3d &q, double &g) |
| void | Update () |
| void | UpdateElementNeighbors () |
| void | UpdateFaces () |
| void | UpdateEdges () |
| void | UpdateNodes () |
| void | AutoSmooth (double w) |
| void | UpdateNormals () |
| void | PartitionSelection () |
| void | RemoveIsolatedNodes () |
| void | AddNode (FENode &n) |
| FEMesh * | DetachSelectedMesh () |
| void | DetachSelectedPart () |
| FEMesh * | ExtractSelectedFaces () |
| void | DeleteTaggedElements (int tag) |
| void | DeleteTaggedFaces (int tag) |
| void | DeleteTaggedEdges (int tag) |
| void | FindDuplicateFaces (vector< int > &l) |
| This function identifies duplicate faces and returns a list with the duplicates. | |
| void | FindDuplicateEdges (vector< int > &l) |
| This function identifies duplicate edges and returns a list with the duplicates. | |
| void | DeleteSelectedElements () |
| void | DeleteSelectedFaces () |
| void | DeleteSelectedNodes () |
| void | InvertTaggedElements (int ntag) |
| void | InvertSelectedElements () |
| double | ShellJacobian (FEElement &el) |
| void | RemoveDuplicateElements () |
| void | FixinvertedElements () |
| void | FixReferenceSurface () |
| void | InterpolateShellThickness (double) |
| void | RemoveNonManifoldElements () |
| void | FixElementWinding () |
| void | FixElementWinding2 () |
| void | TagAllElements (int ntag) |
| int | DataFields () |
| FEElementData * | AddDataField (const char *szname, double v=0.0) |
| FEElementData & | GetDataField (int i) |
| double | ShortestEdge () |
| void | BuildNodeElementTable (vector< vector< int > > &NET) |
| void | BuildNodeFaceTable (vector< vector< int > > &NFT) |
| void | BuildNodeEdgeTable (vector< vector< int > > &NET) |
| void | BuildEdgeTable (vector< pair< int, int > > &ET) |
| void | BuildNodeNodeTable (vector< set< int > > &NNT) |
| void | BuildSurfaceNodeNodeTable (vector< set< int > > &NNT) |
| void | BuildElementEdgeTable (vector< vector< int > > &EET, vector< pair< int, int > > &ET) |
| void | BuildFaceTable (vector< FEFace > &FT) |
| void | BuildElementFaceTable (vector< vector< int > > &EFT, vector< FEFace > &FT) |
| void | BuildFaceEdgeTable (vector< vector< int > > &FET, vector< pair< int, int > > &ET) |
| void | BuildFaceFaceTable (vector< int > &FFT, vector< FEFace > &FT) |
| void | BuildEdgeEdgeTable (vector< int > &EET, vector< pair< int, int > > &ET) |
Public Member Functions inherited from FECoreMesh | |
| FECoreMesh () | |
| constructor | |
| virtual | ~FECoreMesh () |
| destructor | |
| bool | IsType (int ntype) |
| check the type of the mesh More... | |
| int | Nodes () const |
| int | Edges () const |
| int | Faces () const |
| FENode & | Node (int n) |
| FEEdge & | Edge (int n) |
| FEFace & | Face (int n) |
| FENode * | NodePtr (int n=0) |
| FEEdge * | EdgePtr (int n=0) |
| FEFace * | FacePtr (int n=0) |
Protected Member Functions | |
| bool | IntersectTri (vec3d *y, vec3d x, vec3d n, vec3d &q, double &g) |
| bool | IntersectQuad (vec3d *y, vec3d x, vec3d n, vec3d &q, double &g) |
Protected Attributes | |
| std::vector< FEElement > | m_Elem |
| FE elements. | |
| std::vector< double > | m_data |
| element values | |
| double | m_min |
| double | m_max |
| value range of element data | |
| vector< FEElementData > | m_map |
Protected Attributes inherited from FECoreMesh | |
| std::vector< FENode > | m_Node |
| FE nodes. | |
| std::vector< FEEdge > | m_Edge |
| FE edges. | |
| std::vector< FEFace > | m_Face |
| FE faces. | |
| FEMesh * FEMesh::DetachSelectedMesh | ( | ) |
Update();
Definition at line 272 of file FEMesh.cpp.
This function calculates the intersection of a ray with a quad and returns true if the ray intersected.
Definition at line 2729 of file FEMesh.cpp.
|
inline |
| void FEMesh::UpdateFaces | ( | ) |
This function finds the face neighbours. Note that internal faces cannot be neighbours of external faces.
Definition at line 1853 of file FEMesh.cpp.
1.8.11