#include <rf_mesh_interface.h>
Inheritance diagram for rf_mesh_interface:

Public Methods | |
| rf_mesh_interface (RFConnOrder iOrd=connect_no_order) | |
| Sets connectivity order maps for all known orders. More... | |
| rf_mesh_interface (const RFConnectivityMap *iMap) | |
| Defines the connectivity using given connectivity map. More... | |
| rf_mesh_interface (const rf_mesh_interface &i) | |
| Invoke base_interface constructor and equality operator. | |
| rf_mesh_interface& | operator= (const rf_mesh_interface &i) |
| No action beyond invoking base_interface equality operator. | |
| ~rf_mesh_interface () | |
| Release user specified connectivity maps if specified. More... | |
| virtual const RFConnectivityMap* | GetConnectivityMap () const |
| Return the current connectivity map. | |
| virtual void | SetConnectivityMap (const RFConnectivityMap *iMap) |
| Set the connectivity map. More... | |
| virtual void | InitConnectivityMap () |
| Initialize the connectivity map data structure. | |
| rf_mesh_newnum | copy_str_from (const rf_mesh_interface *mi) |
| Copy the structured mesh. More... | |
| size_t | copy_unstr_vertices (const rf_mesh_interface *mi, RFLongestSignedList& mapVerts) |
| Copy just the unstructured vertices from one mesh rep to another. More... | |
| size_t | copy_unstr_elements (const rf_mesh_interface *mi, const RFLongestSignedList& mapVerts, RFLongestSignedList& mapEles, int eltype, const RFLongestSignedList& famstocopy, int dohint=1) |
| Copy just the unstructured elements from one mesh rep to another. More... | |
| rf_mesh_newnum | copy_unstr_from (const rf_mesh_interface *mi, RFLongestSignedList& mapVerts, RFLongestSignedList& mapEles) |
| Copy the unstructured mesh. More... | |
| rf_two_newnum | copy_mesh_from (const rf_mesh_interface *mi, RFLongestSignedList& mapVerts, RFLongestSignedList& mapEles) |
| Copy both the structured and unstrucured meshes from given mesh. More... | |
| size_t | NodesPerElement (int iType) const |
| int | ElementDimension (int iType) const |
| int | FacesPerElement (int iType) const |
| int | EdgesPerElement (int iType) const |
| virtual rf_mesh_interface* | newImpl () const = 0 |
| Create an empty copy of current implementation. More... | |
| virtual size_t | NumberElementTypes () const |
| Return the number of element types for this rep. More... | |
| virtual int | is_empty () const |
| If the mesh is empty, implementations should return 0. More... | |
| virtual int | create_mesh () |
| Implemenations generally need only concern themselves with create_unstrmesh() and create_strmesh(). More... | |
| virtual int | create_unstrmesh () = 0 |
| Create new unstructured mesh. More... | |
| virtual int | delete_mesh () |
| Delete mesh. More... | |
| virtual int | create_strmesh () = 0 |
| Create new structured mesh. More... | |
| virtual int | delete_unstrmesh () = 0 |
| Delete unstructured mesh. More... | |
| virtual int | delete_strmesh () = 0 |
| Create new structured mesh. More... | |
| virtual int | clear_mesh () |
| Empty mesh. More... | |
| virtual int | suspend_undo () |
| Suspend undo action for those mesh reps that have such a concept. More... | |
| virtual int | resume_undo () |
| Resume undo action for those mesh reps that have such a concept. More... | |
| virtual RFPrecType | get_prec () const |
| If representation can handle both double and float precisions for vertex coordinates, then this method can be implemented. More... | |
| virtual int | set_prec (RFPrecType prec) |
| If representation can handle both double and float precisions for vertex coordinates, then this method must be implemented. More... | |
| virtual int | allocate_vertex_memory (size_t nverts, RFPrecType prec) |
| Can only be called before loading all vertices (unstruct first followed by struct). More... | |
| virtual int | allocate_strvertex_memory (size_t dom=0) |
| Allocate memory for coordinates of specified structured domain. More... | |
| virtual RFConnOrder | GetInternalOrder () const = 0 |
| Return the internal connection order of the mesh representation. More... | |
| RFConnOrder | get_conn_order () const |
| |
| virtual int | SetInternalOrder (RFConnOrder order) |
| Set order of storage (if can change the order). More... | |
| int | set_conn_order (RFConnOrder iOrder) |
| |
| int | SetKnownOrder (RFConnOrder iOrd) |
| Set a known order. More... | |
| int | SetICEMCFDOrder () |
| Set connectivity, face and edge orders for ICEMCFD. More... | |
| int | SetNASTRANOrder () |
| Set connectivity, face and edge orders for NASTRAN. More... | |
| int | SetVisual3Order () |
| Set connectivity, face and edge orders for Visual3. More... | |
| virtual int | SetUserOrder () |
| Set the connectivity and face information for the subclass. More... | |
| const int* | GetConnectivityNASTRANOrder (int iType) const |
| Return the internal numbering to NASTRAN map for the specified element type. More... | |
| const int* | GetConnectivityICEMCFDOrder (int iType) const |
| Mapping to ICEMCFD. More... | |
| const int* | GetInvConnectivityNASTRANOrder (int iType) const |
| Return the map of NASTRAN to internal numbering for specified type. More... | |
| const int* | GetInvConnectivityICEMCFDOrder (int iType) const |
| Mapping from ICEMCFD. More... | |
| int | SetConnectivityNASTRANOrder (int iType, ...) |
| Set the map of user element connectivity to internal mesh connectivity for specified type. More... | |
| int | SetConnectivityNASTRANOrder (int iType, va_list iAP) |
| int | SetConnectivityNASTRANOrder (int iType, const int *iConn) |
| Specify the type and the map. More... | |
| virtual int | set_vtxconn_offset (RF_SIGNED_LONG vtx_offset) |
| Set current vertex offset. More... | |
| virtual int | allocate_element_memory (const size_t *nele) |
| Hint of how many elements of each type to allocate. More... | |
| virtual const void* | vertex_coords (RFPrecType *prec) const |
| Return the pointer to the start of the vertex memory if mesh representation holds coordinate memory in contiguious block. More... | |
| virtual const int* | connectivity (int t, RFConnOrder *ord, int *vo) const |
| Return the element connectivity memory if mesh representation can hold element connectivity in a contiguious block of memory. More... | |
| virtual RF_SIGNED_LONG | get_vtxconn_offset () const |
| Return current vertex offset. More... | |
| virtual size_t | add_domain (const int *dmax) = 0 |
| Add structured domain with node range (1, 1, 1) to dmax. More... | |
| virtual size_t | add_domain (str_domain_handle& dom) = 0 |
| Add structured domain specified by given domain interface. More... | |
| virtual vertex_handle | new_vertex () = 0 |
| Create a new vertex of specified type. More... | |
| virtual int | legal_element (int type) const |
| Is the element type legal? More... | |
| virtual element_handle | new_element (int type) = 0 |
| Create a new element of specified type. More... | |
| virtual element_handle | propose_connect (int eltype, const int *connect, size_t nid, int famid) |
| Only connect if some criteria is specified. More... | |
| virtual int | ConnectIntOrder (element_handle& ele, const int *connect, size_t nid, int famid) = 0 |
| Specify newly created element ele (new_element()) has connectivity specified by connect. More... | |
| virtual int | ConnectIntOrder_l (element_handle& ele, const RF_SIGNED_LONG *connect, size_t nid, int famid) |
| virtual int | ConnectSpecifiedOrder (element_handle& ele, const int *connect, size_t nid, int famid, RFConnOrder iOrder) |
| Specify the connection order. More... | |
| virtual int | ConnectSpecifiedOrder_l (element_handle& ele, const RF_SIGNED_LONG *connect, size_t nid, int famid, RFConnOrder iOrder) |
| virtual int | ConnectNASTRANOrder (element_handle& ele, const int *connect, size_t nid, int famid) |
| element connectivity array in NASTRAN order. More... | |
| virtual int | ConnectNASTRANOrder_l (element_handle& ele, const RF_SIGNED_LONG *connect, size_t nid, int famid) |
| virtual int | ConnectICEMCFDOrder (element_handle& ele, const int *connect, size_t nid, int famid) |
| element connectivity array in ICEMCFD order. More... | |
| virtual int | ConnectICEMCFDOrder_l (element_handle& ele, const RF_SIGNED_LONG *connect, size_t nid, int famid) |
| int | connect (element_handle& ele, const int *connect, size_t nid, int famid) |
| |
| int | connect (element_handle& ele, const RF_SIGNED_LONG *connect, size_t nid, int famid) |
| |
| virtual int | disconnect (element_handle& ele) = 0 |
| Disconnect element ele from the mesh. More... | |
| virtual int | reconnect_vid (element_handle& ele, const int *newv) |
| Change the connectivity of element ele to the connectivity specified in the array newv. More... | |
| virtual int | reconnect_vid (element_handle& ele, const RF_SIGNED_LONG *newv) |
| virtual int | reconnect (element_handle& ele, vertex_handle *nvv) = 0 |
| Change the connectivity of element ele to the connectivity specified in the array of vertex handles newv. More... | |
| virtual int | replace_vid (element_handle& ele, RF_SIGNED_LONG oldv, RF_SIGNED_LONG newv) |
| Change node number oldv to newv in element. More... | |
| virtual int | replace (element_handle& ele, vertex_handle& oldv, vertex_handle& newv) = 0 |
| Change node oldv to newv in element. More... | |
| virtual int | merge_unstr_nodes (const RFMergeVtxList& list) |
| Merge the nodes specified by the list. More... | |
| virtual int | must_remove_degeneracy () const |
| Each mesh representation must return whether or not it can tolerate degenerate elements. More... | |
| virtual int | stored_vertex_dimension () const |
| Does the mesh representation store the vertex dimension? By default the answer is no (0). More... | |
| virtual int | delete_vertex (RF_SIGNED_LONG vid) |
| Delete specified vertex id. More... | |
| virtual int | delete_vertex (vertex_handle& vtx) = 0 |
| Delete the specified vertex. More... | |
| virtual int | delete_element (element_handle& ele) |
| Delete the element specified. More... | |
| virtual int | compress_mesh () |
| Mesh representations that can return vertex coordinates and/or element connectivity in a block, should try and implement this method. More... | |
| const int* | GetFaceInfoInt (int iType) const |
| Retrieve the face using user definition in internally defined order. More... | |
| const int* | GetFaceInfoICEMCFD (int iType) const |
| Retrieve the face using user definition but using ICEMCFD connectivity order. More... | |
| int | DecodeFaceIntOrder (int iType, int& oNFaces, const int **oFaces, int *oNVtxFace) const |
| Decode the inernal face order for the internally defined faces into number of faces, faces and nvertex per face arrays. More... | |
| int | DecodeFaceICEMCFDOrder (int iType, int& oNFaces, const int **oFaces, int *oNVtxFace) const |
| Decode the ICEMCFD face order. More... | |
| int | decode_face_order (int type, int *nfaces, const int **faces, int *nvtxface) const |
| |
| const int* | get_face_order (int iType) const |
| |
| const int* | GetOppfaceInfoInt (int iType) const |
| Get opposite face definition for specified element type. More... | |
| int | DecodeOppfaceIntOrder (int iType, int& oNfaces, int *oOppositeFaces, const int **oOppFIdx, int *oNVtxface) const |
| Decode opposite face order information. More... | |
| int | GetOppositeFaceInt (int iType, unsigned int iFaceNum, int& oNvtxface, const int *& oOppFIdx) const |
| Return the face number opposite of given face number for given element type. More... | |
| const int* | get_oppface_order (int type) const |
| |
| int | get_opposite_face (int iType, unsigned int iFaceNum) const |
| Use GetOppositeFaceInt() instead. | |
| const int* | GetEdgeInfoInt (int iType) const |
| Retrieve the edge using user definition in internally defined order. More... | |
| const int* | GetEdgeInfoICEMCFD (int iType) const |
| Retrieve the edge using user definition but using ICEMCFD order. More... | |
| int | DecodeEdgeIntOrder (int iType, int& oNEdges, const int **oEdges, int *oNVtxEdge) const |
| Decode the inernal edge order for the internally defined edges into number of edges, edges and nvertex per edge arrays. More... | |
| int | DecodeEdgeICEMCFDOrder (int iType, int& oNEdges, const int **oEdges, int *oNVtxEdge) const |
| Decode the ICEMCFD edge order. More... | |
| int | decode_edge_order (int type, int *nedges, const int **edges, int *nvtxedge) const |
| |
| const int* | get_edge_order (int type) const |
| |
| int | set_face_order (int iType, ...) |
| |
| int | set_face_order (int iType, va_list ap) |
| int | set_face_order (int iType, const int *iOrder) |
| int | SetFaceIntOrder (int iType, ...) |
| Change face definition for specified element types. More... | |
| int | SetFaceIntOrder (int iType, va_list ap) |
| int | SetFaceIntOrder (int iType, const int *iOrder) |
| Set the face order for a specified element type. More... | |
| int | set_oppface_order (int iType, ...) |
| Change opposite face definition for specified element types. More... | |
| int | set_oppface_order (int iType, va_list ap) |
| int | set_oppface_order (int iType, const int *iOrder) |
| Set the opposite face order for a specified element type. More... | |
| int | set_edge_order (int iType, ...) |
| |
| int | set_edge_order (int iType, va_list ap) |
| int | set_edge_order (int iType, const int *iOrder) |
| int | SetEdgeIntOrder (int iType, ...) |
| Change edge definition for specified element types. More... | |
| int | SetEdgeIntOrder (int iType, va_list ap) |
| int | SetEdgeIntOrder (int iType, const int *iOrder) |
| Set the edge order for a specified element type. More... | |
| virtual vertex_handle | first_vertex (void **cur) = 0 |
| Enumerate vertices but use iterator style. More... | |
| vertex_handle | first_vertex (void **cur) const |
| virtual vertex_handle | next_vertex (void **cur) = 0 |
| Enumerate elements but use iterator style. More... | |
| vertex_handle | next_vertex (void **cur) const |
| virtual int | enumerate_vertices (enum_vertex_int_func f, void *data) |
| Loop over all vertices in the mesh and invoke function f on each one. More... | |
| virtual element_handle | first_el (void **cur, int eltype=0) = 0 |
| Enumerate elements but use iterator style. More... | |
| element_handle | first_el (void **cur, int eltype=0) const |
| virtual element_handle | next_el (void **cur, int eltype=0) = 0 |
| Enumerate elements but use iterator style. More... | |
| element_handle | next_el (void **cur, int eltype=0) const |
| virtual int | enumerate_elements (int eltype, enum_element_int_func f, void *data) |
| Loop over all elements of type eltype in the mesh and invoke function f on each one. More... | |
| virtual element_handle | init_element_iterator (const vertex_handle& v, RF_SIGNED_LONG *next_idx) const = 0 |
| Initialize the element loop when looping over all elements on a node. More... | |
| virtual element_handle | next_element (const vertex_handle& v, RF_SIGNED_LONG *next_idx, const element_handle& cur_el) const = 0 |
| Go to next element in link list of elements on a node. More... | |
| virtual int | enumerate_faces (const element_handle& el, enum_face_int_func func, void *data) |
| Enumerate the faces of element. More... | |
| virtual int | enumerate_faces (const element_handle& el, enum_face_int_func func, void *data) const |
| virtual int | enumerate_faces_vtx (const element_handle& el, enum_face_int_vtx_func func, void *data) |
| Callback function gets vertex indices instead of handles. More... | |
| virtual int | enumerate_faces_vtx (const element_handle& el, enum_face_int_vtx_func func, void *data) const |
| virtual int | enumerate_edges (const element_handle& el, enum_edge_int_func func, void *data) |
| Enumerate the edges of this function. More... | |
| virtual int | enumerate_edges (const element_handle& el, enum_edge_int_func func, void *data) const |
| virtual int | match_face (const element_handle& el, int nvf, const int *face, int ordf, int *ele_face) const |
| Try to match given face in this element. More... | |
| virtual int | match_face (const element_handle& el, int nvf, const RF_SIGNED_LONG *face, int ordf, RF_SIGNED_LONG *ele_face) const |
| size_t | celloffset_on_node (unsigned int **offset) const |
| Create offset array for cells on node. More... | |
| size_t | celloffset_on_node (unsigned int *offset) const |
| Fill offset array for cells on node. More... | |
| virtual size_t | cellcount_on_node (unsigned int *offset) const |
| virtual const FacesOnNode* | getFaceConn () const |
| Representations that can build the FaceConn structure should return a pointer to it. More... | |
| size_t | nfaces_on_vertex (const vertex_handle& v) const |
| Return the number of faces on a vertex for those representations that create FaceConn data structure. More... | |
| virtual size_t | nfaces_on_vertex (int vidx) const |
| size_t | neles_on_face (const vertex_handle& v, size_t fidx) const |
| Return the number of elements on a face specified by the vertex and index of the face on the vertex. More... | |
| virtual size_t | neles_on_face (int vidx, size_t fidx) const |
| size_t | ndim_on_face (const vertex_handle& v, size_t fidx, int dim) const |
| Return the number of elements matching specified dimension on the face specified by vertex and face index of vertex. More... | |
| virtual size_t | ndim_on_face (int vidx, size_t fidx, int dim) const |
| size_t | face_on_vertex (const vertex_handle& v, size_t fidx, int *fvtxs) const |
| Return the vertices of face specified by the vertex and index of the face on the vertex. More... | |
| virtual size_t | face_on_vertex (int vi, size_t fi, int *fvtxs) const |
| element_handle | ele_on_face (const vertex_handle& v, size_t fidx, size_t elidx) const |
| Return the element specified by the vertex, index of the face and the index of the element. More... | |
| virtual element_handle | ele_on_face (int vi, size_t fi, size_t ei) const |
| virtual int | incident_elements_face (int nvf, const int *fverts, int ordf, int max_return, element_handle *elements, int *face_numbers) const |
| Return all elements on face specified by the face vertices. More... | |
| virtual int | incident_elements_face (int nvf, const int *fverts, int ordf, element_handle_list& elements, int *face_numbers) const |
| Return can be artitrary number of elements on a face. More... | |
| virtual int | incident_elements (int nvf, vertex_handle *fverts, int ordf, int max_return, element_handle *elements, int *face_numbers) const = 0 |
| All representations should implement this method. More... | |
| virtual int | incident_elements (int nvf, vertex_handle *fverts, int ordf, element_handle_list& elements, int *face_numbers) const |
| Default method invokes array method. More... | |
| int | has_edge (const element_handle& eh, const vertex_handle& v0, const vertex_handle& v1) const |
| Does this element hold this edge? More... | |
| int | elements_adjacent_to_edge (const vertex_handle& v0, const vertex_handle& v1, element_handle *els, int maxret) const |
| Find all elements that share this edge up to maxret. More... | |
| int | is_external_shell (const element_handle& eh) const |
| Is this shell element an internal shell (2 or more volume elements connected to it? More... | |
| int | is_on_boundary (const vertex_handle& v) const |
| Is this vertex on a boundary? More... | |
| int | is_on_boundary (const element_handle& eh) const |
| Is this element on a boundary? More... | |
| int | is_boundary_shell (const element_handle& eh) const |
| Is this element a shell element on a boundary? More... | |
| virtual int | release_connectivity_info () |
| Release the connectivity information (if it can be safely released). More... | |
| virtual size_t | n_unstr_vertices () const = 0 |
| Return number of unstructured vertices created. More... | |
| virtual size_t | n_unstr_elements (int type) const = 0 |
| Return number of unstructured elements of specified type created. More... | |
| virtual size_t | n_unstr_vertices_actual () const |
| Return current number of vertices in mesh. More... | |
| virtual size_t | n_unstr_elements_actual (int type) const |
| Return current number of unstructured elements of specified type in mesh. More... | |
| virtual size_t | count_unstr_elements (int type, size_t *start) const |
| Return current number of unstructured elements of specified type in mesh. More... | |
| size_t | ntot_unstr_elements () const |
| Return total number of unstructured elements in mesh that have been created. More... | |
| size_t | ntot_unstr_elements_actual () const |
| Return current total number of unstructured elements in mesh. More... | |
| int | elements_exist_dim (int dim) const |
| Do any elements exist of specified dimension? More... | |
| int | volume_elements_exist () const |
| Any dimension 3 elements exist or not? More... | |
| int | shell_elements_exist () const |
| Any dimension 2 elements exist or not? More... | |
| int | bar_elements_exist () const |
| Any dimension 1 elements exist or not? More... | |
| int | node_elements_exist () const |
| Any dimension 0 elements exist or not? More... | |
| int | is_volume_mesh () const |
| Synonym for volume_elements_exist. | |
| int | is_surface_mesh () const |
| Mesh with surface elements and no volume elements. More... | |
| int | is_quad_dominant_surface_mesh () const |
| Is mesh QUAD dominant over tri's?. More... | |
| virtual RF_SIGNED_LONG | getNumber (const vertex_handle& v) const = 0 |
| Return invariant id number of specified vertex. More... | |
| int | isEqual (const vertex_handle& v0, const vertex_handle& v1) const |
| Return if two vertices are equal. More... | |
| virtual vertex_handle | lookup_vertex (RF_SIGNED_LONG vid) const = 0 |
| Return vertex given invariant id number. More... | |
| virtual int | get_location (const vertex_handle& v, float loc[3]) const = 0 |
| Return the location of specified vertex. More... | |
| virtual int | get_location (const vertex_handle& v, double loc[3]) const = 0 |
| virtual int | get_dimension (const vertex_handle& iVtx) const = 0 |
| Get the dimension of the vertex. More... | |
| virtual int | get_dimension (RF_SIGNED_LONG iVtx) const |
| virtual int | get_ptwin (const vertex_handle& iVtx) const = 0 |
| Get the periodic twin of the specified vertex. More... | |
| virtual int | get_ptwin (RF_SIGNED_LONG iVtx) const |
| virtual int | propose_move (vertex_handle& v, const float loc[3]) |
| Set the vertex location only if location obeys some criteria. More... | |
| virtual int | propose_move (vertex_handle& v, const double loc[3]) |
| virtual int | set_location (vertex_handle& v, const float loc[3]) = 0 |
| Set the location of specified vertex. More... | |
| virtual int | set_location (vertex_handle& v, const double loc[3]) = 0 |
| Set the location of specified vertex. More... | |
| virtual int | set_dimension (vertex_handle& iVtx, int iDim) = 0 |
| Set the dimension of the vertex. More... | |
| virtual int | set_dimension (RF_SIGNED_LONG iVtx, int iDim) |
| virtual int | set_ptwin (const vertex_handle& iVtx, RF_SIGNED_LONG iPtwin) = 0 |
| Get the periodic twin of the specified vertex. More... | |
| virtual int | set_ptwin (RF_SIGNED_LONG iVtx, RF_SIGNED_LONG iPtwin) |
| virtual int | has_element_on (RF_SIGNED_LONG vid) const |
| Does specified vertex have an element on it? More... | |
| virtual int | has_element_on (const vertex_handle& v) const = 0 |
| virtual RF_SIGNED_LONG | getNumber (const element_handle& ele) const |
| Return the invariant element number. More... | |
| virtual element_handle | lookup_element (RF_SIGNED_LONG iEid) const = 0 |
| Return element given invariant id number. More... | |
| virtual int | isEqual (const element_handle& e0, const element_handle& e1) const |
| Return if two elements are equal. More... | |
| virtual int | BaseVerticesIntOrder (const element_handle& ele, vertex_handle *vv) const |
| Return the vertex handles for the element in user specified order. More... | |
| virtual int | BaseVerticesSpecifiedOrder (const element_handle& ele, vertex_handle *vv, RFConnOrder iOrder) const |
| Return vertices in specified order. More... | |
| virtual int | BaseVerticesNASTRANOrder (const element_handle& ele, vertex_handle *vv) const |
| Return vertices in NASTRAN order. More... | |
| virtual int | BaseVerticesICEMCFDOrder (const element_handle& ele, vertex_handle *vv) const |
| Return vertices in ICEMCFD order. More... | |
| int | base_vertices (const element_handle& ele, vertex_handle *vv) const |
| |
| virtual int | GetConnectivityIntOrder (const element_handle& iEle, int *oVtxs) const = 0 |
| Return the connectivity of the element as vertex indices in the internal order of the mesh representation. More... | |
| virtual int | GetConnectivityIntOrder_l (const element_handle& iEle, RF_SIGNED_LONG *oVtxs) const |
| int | GetConnectivitySpecifiedOrder (const element_handle& iEle, int *oVtxs, RFConnOrder iOrder) const |
| Specify the return order of elements. More... | |
| int | GetConnectivitySpecifiedOrder_l (const element_handle& iEle, RF_SIGNED_LONG *oVtxs, RFConnOrder iOrder) const |
| virtual int | GetConnectivityNASTRANOrder (const element_handle& iEle, int *oVtxs) const |
| Return NASTRAN order. More... | |
| virtual int | GetConnectivityNASTRANOrder_l (const element_handle& iEle, RF_SIGNED_LONG *oVtxs) const |
| virtual int | GetConnectivityICEMCFDOrder (const element_handle& iEle, int *oVtxs) const |
| Return ICEMCFD order. More... | |
| virtual int | GetConnectivityICEMCFDOrder_l (const element_handle& iEle, RF_SIGNED_LONG *oVtxs) const |
| int | get_connectivity (const element_handle& iEle, int *oVtxs) const |
| |
| int | get_connectivity (const element_handle& iEle, RF_SIGNED_LONG *oVtxs) const |
| |
| virtual int | GetPtwinIntOrder (const element_handle& ele, int *vv) const |
| Return the vertex indices of the periodic twins of the element in internal connectivity order. More... | |
| virtual int | GetPtwinIntOrder_l (const element_handle& ele, RF_SIGNED_LONG *vv) const |
| virtual int | GetPtwinSpecifiedOrder (const element_handle& ele, int *vv, RFConnOrder iOrd) const |
| Specify the order. More... | |
| virtual int | GetPtwinSpecifiedOrder_l (const element_handle& ele, RF_SIGNED_LONG *vv, RFConnOrder iOrd) const |
| virtual int | GetPtwinICEMCFDOrder (const element_handle& ele, int *vv) const |
| Retrun in ICEMCFD order. More... | |
| virtual int | GetPtwinICEMCFDOrder_l (const element_handle& ele, RF_SIGNED_LONG *vv) const |
| int | get_ptwin (const element_handle& ele, int *vv) const |
| |
| int | get_ptwin (const element_handle& ele, RF_SIGNED_LONG *vv) const |
| |
| size_t | hash (const element_handle& ele) const |
| Default hash value carries out an algorithm similar to the string algorithm from the Dragon book. More... | |
| element_handle | existing_duplicate (int type, int nv, vertex_handle *vv) const |
| See if there is a duplicate element of specified type and the specified vertices in the mesh. More... | |
| int | index_of_vert_on_element (const vertex_handle& v, const element_handle& e) const |
| Return the index of vertex v in element e using internal mesh element ordering. More... | |
| vertex_handle | first_unshared_vert (const element_handle& el1, const element_handle& el2) const |
| Return first unshared vertex between elements el1 and el2. More... | |
| vertex_handle | first_shared_vert (const element_handle& el1, const element_handle& el2) const |
| Return first shared vertex between elements el1 and el2. More... | |
| virtual int | connectivity_coords (const element_handle& ele, float vv[][3]) const |
| Return the location of all vertices on element of the element as vertex indices. More... | |
| virtual int | connectivity_coords (const element_handle& ele, double vv[][3]) const |
| double | min_coords_sum (const element_handle& el) const |
| Return the minimum sum of the vertex coords for an element. More... | |
| double | sphere (const element_handle& el, double cent[3]) const |
| Return the maximum radius and centroid of the element. More... | |
| vertex_handle | closest_vert (const element_handle& eh, const float loc[3], int *index, float *distance, int min_dim) const |
| Find the closest vertex on el to the specified location. More... | |
| vertex_handle | closest_vert (const element_handle& eh, const double loc[3], int *index, double *distance, int min_dim) const |
| int | opposite_quad_edge (int indv[4], int nv, const vertex_handle *vv, const vertex_handle& v1, const vertex_handle& v2) const |
| Fill the indv array with the indices of the quads on opposite edge of given edge. More... | |
| int | two_tri_coords (const element_handle& el, float tri1[3][3], float tri2[3][3]) const |
| Get two triangles representing a QUAD element el. More... | |
| int | two_tri_coords (const element_handle& el, double tri1[3][3], double tri2[3][3]) const |
| float | normal (const vertex_handle *vv, int nv, float norm[3]) const |
| Find the normal of the element specified by the vertex handles. More... | |
| double | normal (const vertex_handle *vv, int nv, double norm[3]) const |
| double | normal (const element_handle& e, double norm[3]) const |
| Find the normal of the element specified by the vertex handles. More... | |
| int | normal (const vertex_handle& v, double norm[3]) const |
| Determine the normal of the vertex. More... | |
| int | normal (const vertex_handle& v, int pid, double norm[3]) const |
| virtual int | geometric_edges (const element_handle& ele, float edgev[][2][3]) const |
| Return the geometric edges of the element. More... | |
| virtual int | geometric_edges (const element_handle& ele, double edgev[][2][3]) const |
| int | falls_on_edge (const element_handle& ele, const float loc[3], float tol) const |
| Does the specified location fall within tolerance of an edge? More... | |
| int | falls_on_edge (const element_handle& ele, const double loc[3], double tol) const |
| virtual int | falls_on_edge (const float loc[3], const float edge[2][3], const char *family, float tol) const |
| If not within tolerance of edge, see if projecting to the specified family lies within specified tolerance. More... | |
| virtual int | falls_on_edge (const double loc[3], const double edge[2][3], const char *family, double tol) const |
| double | edge_length (const vertex_handle& loc0, const vertex_handle& loc1) const |
| Length of edge. More... | |
| virtual int | intersect_triangles (const float tri1[3][3], const float tri2[3][3]) const |
| Intersect two triangles given by coordinates. More... | |
| virtual int | intersect_triangles (const double tri1[3][3], const double tri2[3][3]) const |
| Base class method invokes floating point method. More... | |
| int | intersect_elements (const element_handle& el1, const element_handle& el2) const |
| Intersect 2 quads, 2 tris or 1 quad and 1 tri. More... | |
| int | intersect_two_tris (const element_handle& tri1, const element_handle& tri2) const |
| Intersect 2 tris. More... | |
| int | intersect_quad_tri (const element_handle& quad, const element_handle& tri) const |
| Intersect a quad and a tri. More... | |
| int | intersect_two_quads (const element_handle& quad1, const element_handle& quad2) const |
| Intersect 2 quads. More... | |
| int | centroid_crosses_edge (const element_handle& el, const float loc[3]) const |
| Compute whether or not the line between the centroid and the specified location crosses an edge of the element. More... | |
| int | centroid_crosses_edge (const element_handle& el, const double loc[3]) const |
| element_handle | nearest_element (const float loc[3], const char *family, int dimension, int check_edge_crossing=1) const |
| Determine the nearest element to specified location. More... | |
| element_handle | nearest_element (const double loc[3], const char *family, int dimension, int check_edge_crossing=1) const |
| virtual double | aspect_ratio_quad (const float locs[][3]) const |
| Compute aspect ratio for a quad element. More... | |
| virtual double | aspect_ratio_quad (const double locs[][3]) const |
| Base class method invokes floating method. More... | |
| double | aspect_ratio_quad (const element_handle& el) const |
| virtual double | aspect_ratio_tri (const float locs[][3]) const |
| Compute aspect ratio for a tri element. More... | |
| virtual double | aspect_ratio_tri (const double locs[][3]) const |
| double | aspect_ratio_tri (const element_handle& el) const |
| Base class method invokes floating method. More... | |
| virtual double | aspect_ratio (const element_handle& el) const |
| Compute aspect ratio of element. More... | |
| virtual int | project_to_curves (const float loc[3], float proj[3], float tangent[3], int *famid) const |
| Project the point to the curves in the CAD model. More... | |
| virtual int | project_to_curves (const double loc[3], double proj[3], double tangent[3], int *famid) const |
| virtual int | can_collapse_edge (int nv, vertex_handle& v1, vertex_handle& v2) const |
| Can collapse the specified edge. More... | |
| virtual int | max_pid () const = 0 |
| Return the maximum family id in the mesh. More... | |
| virtual int | family_pid (const char *name) const = 0 |
| Return the family id for given name. More... | |
| virtual const char* | family_name (int famid) const = 0 |
| Return the family name for given family id. More... | |
| virtual int | delete_family (const char *name) = 0 |
| Delete family. More... | |
| virtual int | set_family (int famid, const char *name) |
| Set the family name for given family id. More... | |
| virtual int | set_family_by_name (int famid, const char *name) |
| Reset the family id for given name. More... | |
| virtual int | get_centroid (const element_handle& ele, double loc[3]) const |
| Compute the centroid of the element. More... | |
| virtual int | get_centroid (const element_handle& ele, float loc[3]) const |
| int | get_centroid_vertices (unsigned int iNverts, const vertex_handle *iVerts, double oLoc[3]) const |
| Get the centroid of a number of vertices. | |
| int | get_centroid_vertices_f (unsigned int iNverts, const vertex_handle *iVerts, float oLoc[3]) const |
| virtual int | bounding_box (double bbox_min[3], double bbox_max[3]) const |
| Compute the bounding box of all vertices. | |
| virtual int | bounding_box_f (float bbox_min[3], float bbox_max[3]) const |
| virtual int | get_bbox (const element_handle& ele, double bbox_min[3], double bbox_max[3]) const |
| Compute the bounding box of the element. More... | |
| virtual int | get_bbox (const element_handle& ele, float bbox_min[3], float bbox_max[3]) const |
| virtual size_t | n_domains () const = 0 |
| Return number of structured domains. More... | |
| virtual str_domain_handle | get_domain (size_t i) = 0 |
| Return the ith structured domain. More... | |
| virtual str_domain_handle | get_domain (size_t i) const = 0 |
| virtual int | ijk_of_domain (size_t i, int ijk[3]) const |
| Return the ijk range (1-n) for ith structured domain. More... | |
| virtual size_t | n_str_vertices () const |
| Return the number of structured vertices in the mesh. More... | |
| virtual size_t | n_str_volelements () const |
| Return the number of structured volume elements in the mesh. More... | |
| virtual size_t | n_str_faceelements () const |
| Return the number of structured face elements in the mesh. More... | |
| virtual int | set_basic_topo () = 0 |
| Set the basic topology of a set of structured domains. More... | |
| virtual int | setDegree (int degree) = 0 |
| Set the degree of the structured mesh (2 or 3D). More... | |
| virtual int | getDegree () const = 0 |
| Return the degree of the structured mesh (2 or 3D). More... | |
| virtual int | set_strdomain_name (size_t i, const char *name) |
| Set the name of the ith structured domain. More... | |
| virtual int | set_strdomain_family (size_t i, const char *fam) |
| Set the family name of the ith structured domain. More... | |
Static Public Methods | |
| void | SortElement (unsigned int iNV, int *ioVV) |
| Sort specified element. More... | |
| void | SortElement (unsigned int iNV, RF_SIGNED_LONG *ioVV) |
| void | SortElement (unsigned int iNV, const int *iVV, int *oSVV) |
| Input remains fixed and emit sorted output. More... | |
| void | SortElement (unsigned int iNV, const RF_SIGNED_LONG *iVV, RF_SIGNED_LONG *oSVV) |
| unsigned int | SortAndRemove (unsigned int iNV, int *ioVV) |
| Sort specified element and remove all degenerate nodes and nodes < 0. More... | |
| unsigned int | SortAndRemove (unsigned int iNV, RF_SIGNED_LONG *ioVV) |
| unsigned int | SortAndRemove (unsigned int iNV, const int *iVV, int *oSVV) |
| Input remains fixed and emit sorted output. More... | |
| unsigned int | SortAndRemove (unsigned int iNV, const RF_SIGNED_LONG *iVV, RF_SIGNED_LONG *oSVV) |
| const int* | GetFaceInfoNASTRAN (int iType) |
| Return NASTRAN face definition. More... | |
| int | DecodeFaceNASTRANOrder (int iType, int& oNFaces, const int **oFaces, int *oNVtxFace) |
| Return NASTRAN face definition. More... | |
| const int* | GetOppfaceInfoNASTRAN (int iType) |
| Get the NASTRAN definition. More... | |
| int | DecodeOppfaceNASTRANOrder (int iType, int& oNfaces, int *oOppositeFaces, const int **oOppFIdx, int *oNVtxface) |
| Decode NASTRAN information. More... | |
| int | GetOppositeFaceNASTRAN (int iType, unsigned int iFaceNum, int& oNvtxface, const int *& oOppFIdx) |
| Return opposite face information for NASTRAN. More... | |
| const int* | GetEdgeInfoNASTRAN (int iType) |
| Return NASTRAN edge definition. More... | |
| int | DecodeEdgeNASTRANOrder (int iType, int& oNEdges, const int **oEdges, int *oNVtxEdge) |
| Return NASTRAN edge definition. More... | |
| size_t | hash (size_t nv, const int *vv) |
| All applications that can include rf_mesh_interface have access to this function. More... | |
| size_t | hash (size_t nv, const RF_SIGNED_LONG *vv) |
Protected Methods | |
| void | ReleaseConnectivityMap () |
| Release the element connectivity order maps. More... | |
Protected Attributes | |
| RFConnectivityMap* | _map |
| Connectivity map for mesh. | |
They also should define their connectivity information on construction.
exmesh_impl.cxx, exuns_impl.h, iteration_com.cxx, iteration_exmesh.cxx, med_impl.C, OpenGateway.C, and rf_exuns_impl.cxx.
|
|
Sets connectivity order maps for all known orders. If order specified as a user order, Uses the user specified method SetUserOrder. If no order is specified (default), invoker must manually set the order. Uses default connectivity map implementation.
|
|
|
Defines the connectivity using given connectivity map.
|
|
|
Release user specified connectivity maps if specified.
|
|
|
Release the element connectivity order maps. Decrement the ownership count. |
|
|
Set the connectivity map. Mesh interface takes ownership by incrementing ownership count. Reimplemented in OpenGateway, and blockingExtMesh_impl.
|
|
|
Copy the structured mesh.
|
|
|
Copy just the unstructured vertices from one mesh rep to another. Broke this out of copy_unstr_from() for CATIA V5.
|
|
|
Copy just the unstructured elements from one mesh rep to another. Broke this out of copy_unstr_from() for CATIA V5. If eltype is MIXED (0), copy all element types. If list of families to copy is empty, copy all families. |