MeshImpl is a Mesquite implementation of the Mesh interface. Applications can also provide their own implementation of the interface. More...
#include <MeshImpl.hpp>
Public Member Functions | |
MeshImpl () | |
virtual | ~MeshImpl () |
void | read_vtk (const char *in_filename, Mesquite::MsqError &err) |
void | write_vtk (const char *out_filename, Mesquite::MsqError &err) |
void | read_exodus (const char *in_filename, Mesquite::MsqError &err) |
void | write_exodus (const char *out_filename, Mesquite::MsqError &err) |
Writes an exodus file of the mesh. More... | |
virtual int | get_geometric_dimension (MsqError &err) |
Returns whether this mesh lies in a 2D or 3D coordinate system. More... | |
virtual void | get_all_sizes (size_t &vertex_count, size_t &element_count, size_t &vertex_use_count, MsqError &err) |
get sizes for calling get_all_mesh More... | |
virtual void | get_all_mesh (VertexHandle *vert_array, size_t vert_len, ElementHandle *elem_array, size_t elem_len, size_t *elem_conn_offsets, size_t offset_len, size_t *elem_conn_indices, size_t index_len, MsqError &err) |
Get entities and connectivity. More... | |
virtual size_t | get_vertex_use_count (ElementHandle *elem_array, size_t elem_array_length, MsqError &err) |
Get sum of number of vertices in each element. More... | |
virtual VertexIterator * | vertex_iterator (MsqError &err) |
Returns a pointer to an iterator that iterates over the set of all vertices in this mesh. More... | |
virtual ElementIterator * | element_iterator (MsqError &err) |
Returns a pointer to an iterator that iterates over the set of all top-level elements in this mesh. More... | |
virtual bool | vertex_is_fixed (VertexHandle vertex, MsqError &err) |
Returns true or false, indicating whether the vertex is allowed to be repositioned. More... | |
virtual void | vertices_are_on_boundary (VertexHandle vert_array[], bool on_bnd[], size_t num_vtx, MsqError &err) |
Returns true or false, indicating whether the vertex is on the boundary. More... | |
virtual void | vertices_get_coordinates (const Mesh::VertexHandle vert_array[], Mesquite::MsqVertex *coordinates, size_t num_vtx, MsqError &err) |
Get/set location of a vertex. More... | |
virtual void | vertex_set_coordinates (VertexHandle vertex, const Vector3D &coordinates, MsqError &err) |
virtual void | vertex_set_byte (VertexHandle vertex, unsigned char byte, MsqError &err) |
Each vertex has a byte-sized flag that can be used to store flags. More... | |
virtual void | vertices_set_byte (VertexHandle *vert_array, unsigned char *byte_array, size_t array_size, MsqError &err) |
virtual void | vertex_get_byte (VertexHandle vertex, unsigned char *byte, MsqError &err) |
Retrieve the byte value for the specified vertex or vertices. More... | |
virtual void | vertices_get_byte (VertexHandle *vertex, unsigned char *byte_array, size_t array_size, MsqError &err) |
virtual size_t | vertex_get_attached_element_count (VertexHandle vertex, MsqError &err) |
Gets the number of elements attached to this vertex. More... | |
virtual void | vertex_get_attached_elements (VertexHandle vertex, ElementHandle *elem_array, size_t sizeof_elem_array, MsqError &err) |
Gets the elements attached to this vertex. More... | |
virtual size_t | element_get_attached_vertex_count (ElementHandle elem, MsqError &err) |
Gets the number of vertices in this element. More... | |
virtual void | elements_get_attached_vertices (ElementHandle *elem_handles, size_t num_elems, VertexHandle *vert_handles, size_t &sizeof_vert_handles, size_t *csr_data, size_t &sizeof_csr_data, size_t *csr_offsets, MsqError &err) |
Returns the vertices that are part of the topological definition of each element in the "elem_handles" array. More... | |
void | element_get_connectivity (ElementHandle element, VertexHandle *vert_handles, size_t sizeof_vert_handles, MsqError &err) |
virtual EntityTopology | element_get_topology (ElementHandle entity_handle, MsqError &err) |
Returns the topology of the given entity. More... | |
virtual void | elements_get_topologies (ElementHandle *element_handle_array, EntityTopology *element_topologies, size_t num_elements, MsqError &err) |
Returns the topologies of the given entities. More... | |
virtual TagHandle | tag_create (const msq_std::string &tag_name, TagType type, unsigned length, const void *default_value, MsqError &err) |
Create a tag. More... | |
virtual void | tag_delete (TagHandle handle, MsqError &err) |
Remove a tag and all corresponding data. More... | |
virtual TagHandle | tag_get (const msq_std::string &name, MsqError &err) |
Get handle for existing tag, by name. More... | |
virtual void | tag_properties (TagHandle handle, msq_std::string &name_out, TagType &type_out, unsigned &length_out, MsqError &err) |
Get properites of tag. More... | |
virtual void | tag_set_element_data (TagHandle handle, size_t num_elems, const ElementHandle *elem_array, const void *tag_data, MsqError &err) |
Set tag values on elements. More... | |
virtual void | tag_set_vertex_data (TagHandle handle, size_t num_elems, const VertexHandle *node_array, const void *tag_data, MsqError &err) |
Set tag values on vertices. More... | |
virtual void | tag_get_element_data (TagHandle handle, size_t num_elems, const ElementHandle *elem_array, void *tag_data, MsqError &err) |
Get tag values on elements. More... | |
virtual void | tag_get_vertex_data (TagHandle handle, size_t num_elems, const VertexHandle *node_array, void *tag_data, MsqError &err) |
Get tag values on vertices. More... | |
virtual void | release_entity_handles (EntityHandle *handle_array, size_t num_handles, MsqError &err) |
Tells the mesh that the client is finished with a given entity handle. More... | |
virtual void | release () |
Instead of deleting a Mesh when you think you are done, call release(). More... | |
void | clear () |
MeshImpl () | |
virtual | ~MeshImpl () |
void | read_vtk (const char *in_filename, Mesquite::MsqError &err) |
void | write_vtk (const char *out_filename, Mesquite::MsqError &err) |
void | read_exodus (const char *in_filename, Mesquite::MsqError &err) |
void | write_exodus (const char *out_filename, Mesquite::MsqError &err) |
virtual int | get_geometric_dimension (MsqError &err) |
Returns whether this mesh lies in a 2D or 3D coordinate system. More... | |
virtual void | get_all_sizes (size_t &vertex_count, size_t &element_count, size_t &vertex_use_count, MsqError &err) |
get sizes for calling get_all_mesh More... | |
virtual void | get_all_mesh (VertexHandle *vert_array, size_t vert_len, ElementHandle *elem_array, size_t elem_len, size_t *elem_conn_offsets, size_t offset_len, size_t *elem_conn_indices, size_t index_len, MsqError &err) |
Get entities and connectivity. More... | |
virtual size_t | get_vertex_use_count (ElementHandle *elem_array, size_t elem_array_length, MsqError &err) |
Get sum of number of vertices in each element. More... | |
virtual VertexIterator * | vertex_iterator (MsqError &err) |
Returns a pointer to an iterator that iterates over the set of all vertices in this mesh. More... | |
virtual ElementIterator * | element_iterator (MsqError &err) |
Returns a pointer to an iterator that iterates over the set of all top-level elements in this mesh. More... | |
virtual bool | vertex_is_fixed (VertexHandle vertex, MsqError &err) |
Returns true or false, indicating whether the vertex is allowed to be repositioned. More... | |
virtual void | vertices_are_on_boundary (VertexHandle vert_array[], bool on_bnd[], size_t num_vtx, MsqError &err) |
Returns true or false, indicating whether the vertex is on the boundary. More... | |
virtual void | vertices_get_coordinates (const Mesh::VertexHandle vert_array[], Mesquite::MsqVertex *coordinates, size_t num_vtx, MsqError &err) |
Get/set location of a vertex. More... | |
virtual void | vertex_set_coordinates (VertexHandle vertex, const Vector3D &coordinates, MsqError &err) |
virtual void | vertex_set_byte (VertexHandle vertex, unsigned char byte, MsqError &err) |
Each vertex has a byte-sized flag that can be used to store flags. More... | |
virtual void | vertices_set_byte (VertexHandle *vert_array, unsigned char *byte_array, size_t array_size, MsqError &err) |
virtual void | vertex_get_byte (VertexHandle vertex, unsigned char *byte, MsqError &err) |
Retrieve the byte value for the specified vertex or vertices. More... | |
virtual void | vertices_get_byte (VertexHandle *vertex, unsigned char *byte_array, size_t array_size, MsqError &err) |
virtual size_t | vertex_get_attached_element_count (VertexHandle vertex, MsqError &err) |
Gets the number of elements attached to this vertex. More... | |
virtual void | vertex_get_attached_elements (VertexHandle vertex, ElementHandle *elem_array, size_t sizeof_elem_array, MsqError &err) |
Gets the elements attached to this vertex. More... | |
virtual size_t | element_get_attached_vertex_count (ElementHandle elem, MsqError &err) |
Gets the number of vertices in this element. More... | |
virtual void | elements_get_attached_vertices (ElementHandle *elem_handles, size_t num_elems, VertexHandle *vert_handles, size_t &sizeof_vert_handles, size_t *csr_data, size_t &sizeof_csr_data, size_t *csr_offsets, MsqError &err) |
Returns the vertices that are part of the topological definition of each element in the "elem_handles" array. More... | |
void | element_get_connectivity (ElementHandle element, VertexHandle *vert_handles, size_t sizeof_vert_handles, MsqError &err) |
virtual EntityTopology | element_get_topology (ElementHandle entity_handle, MsqError &err) |
Returns the topology of the given entity. More... | |
virtual void | elements_get_topologies (ElementHandle *element_handle_array, EntityTopology *element_topologies, size_t num_elements, MsqError &err) |
Returns the topologies of the given entities. More... | |
virtual TagHandle | tag_create (const msq_std::string &tag_name, TagType type, unsigned length, const void *default_value, MsqError &err) |
Create a tag. More... | |
virtual void | tag_delete (TagHandle handle, MsqError &err) |
Remove a tag and all corresponding data. More... | |
virtual TagHandle | tag_get (const msq_std::string &name, MsqError &err) |
Get handle for existing tag, by name. More... | |
virtual void | tag_properties (TagHandle handle, msq_std::string &name_out, TagType &type_out, unsigned &length_out, MsqError &err) |
Get properites of tag. More... | |
virtual void | tag_set_element_data (TagHandle handle, size_t num_elems, const ElementHandle *elem_array, const void *tag_data, MsqError &err) |
Set tag values on elements. More... | |
virtual void | tag_set_vertex_data (TagHandle handle, size_t num_elems, const VertexHandle *node_array, const void *tag_data, MsqError &err) |
Set tag values on vertices. More... | |
virtual void | tag_get_element_data (TagHandle handle, size_t num_elems, const ElementHandle *elem_array, void *tag_data, MsqError &err) |
Get tag values on elements. More... | |
virtual void | tag_get_vertex_data (TagHandle handle, size_t num_elems, const VertexHandle *node_array, void *tag_data, MsqError &err) |
Get tag values on vertices. More... | |
virtual void | release_entity_handles (EntityHandle *handle_array, size_t num_handles, MsqError &err) |
Tells the mesh that the client is finished with a given entity handle. More... | |
virtual void | release () |
Instead of deleting a Mesh when you think you are done, call release(). More... | |
void | clear () |
Private Member Functions | |
void | vtk_read_dataset (FileTokenizer &file, MsqError &err) |
Read a data block from the file. More... | |
void | vtk_read_structured_points (FileTokenizer &file, MsqError &err) |
Read structured point mesh. More... | |
void | vtk_read_structured_grid (FileTokenizer &file, MsqError &err) |
Read structured grid mesh. More... | |
void | vtk_read_rectilinear_grid (FileTokenizer &file, MsqError &err) |
Read rectilinear grid structured mesh. More... | |
void | vtk_read_polydata (FileTokenizer &file, MsqError &err) |
Read polydata mesh. More... | |
void | vtk_read_unstructured_grid (FileTokenizer &file, MsqError &err) |
Read unstructured mesh. More... | |
void | vtk_read_field (FileTokenizer &file, MsqError &err) |
Read file-level field data. More... | |
void | vtk_read_polygons (FileTokenizer &file, MsqError &err) |
Helper function for vtk_read_polydata - reads polygon subsection. More... | |
void | vtk_create_structured_elems (const long *dims, MsqError &err) |
Helper function for readers of structured mesh - create elements. More... | |
void | vtk_read_point_data (FileTokenizer &file, MsqError &err) |
Read attribute data for vertices. More... | |
void | vtk_read_cell_data (FileTokenizer &file, MsqError &err) |
Read attribute data for elements. More... | |
void * | vtk_read_attrib_data (FileTokenizer &file, long num_data_to_read, TagDescription &tag_out, MsqError &err) |
Read actual data for both vtk_read_point_data and vtk_read_cell_data Initializes all fields of passed TagDescription. More... | |
void * | vtk_read_typed_data (FileTokenizer &file, int type, size_t per_elem, size_t num_elem, TagDescription &tag_out, MsqError &err) |
Read a 2-D array of data of the specified type from the file Initializes size and type fields of passed TagDescroption. More... | |
void * | vtk_read_scalar_attrib (FileTokenizer &file, long count, TagDescription &tag_out, MsqError &err) |
Read scalar attribute data Initializes size and type fields of passed TagDescroption. More... | |
void * | vtk_read_color_attrib (FileTokenizer &file, long count, TagDescription &tag_out, MsqError &err) |
Read color attribute data Initializes size and type fields of passed TagDescroption. More... | |
void * | vtk_read_vector_attrib (FileTokenizer &file, long count, TagDescription &tag_out, MsqError &err) |
Read vector or normal attribute data Initializes size and type fields of passed TagDescroption. More... | |
void * | vtk_read_texture_attrib (FileTokenizer &file, long count, TagDescription &tag_out, MsqError &err) |
Read texture attribute data Initializes size and type fields of passed TagDescroption. More... | |
void * | vtk_read_tensor_attrib (FileTokenizer &file, long count, TagDescription &tag_out, MsqError &err) |
Read tensor (3x3 matrix) data Initializes size and type fields of passed TagDescroption. More... | |
void | vtk_write_attrib_data (msq_stdio::ostream &file, const TagDescription &desc, const void *data, size_t count, MsqError &err) const |
Write tag data to VTK attributes. More... | |
void | vtk_read_dataset (FileTokenizer &file, MsqError &err) |
Read a data block from the file. More... | |
void | vtk_read_structured_points (FileTokenizer &file, MsqError &err) |
Read structured point mesh. More... | |
void | vtk_read_structured_grid (FileTokenizer &file, MsqError &err) |
Read structured grid mesh. More... | |
void | vtk_read_rectilinear_grid (FileTokenizer &file, MsqError &err) |
Read rectilinear grid structured mesh. More... | |
void | vtk_read_polydata (FileTokenizer &file, MsqError &err) |
Read polydata mesh. More... | |
void | vtk_read_unstructured_grid (FileTokenizer &file, MsqError &err) |
Read unstructured mesh. More... | |
void | vtk_read_field (FileTokenizer &file, MsqError &err) |
Read file-level field data. More... | |
void | vtk_read_polygons (FileTokenizer &file, MsqError &err) |
Helper function for vtk_read_polydata - reads polygon subsection. More... | |
void | vtk_create_structured_elems (const long *dims, MsqError &err) |
Helper function for readers of structured mesh - create elements. More... | |
void | vtk_read_point_data (FileTokenizer &file, MsqError &err) |
Read attribute data for vertices. More... | |
void | vtk_read_cell_data (FileTokenizer &file, MsqError &err) |
Read attribute data for elements. More... | |
void * | vtk_read_attrib_data (FileTokenizer &file, long num_data_to_read, TagDescription &tag_out, MsqError &err) |
Read actual data for both vtk_read_point_data and vtk_read_cell_data Initializes all fields of passed TagDescription. More... | |
void * | vtk_read_typed_data (FileTokenizer &file, int type, size_t per_elem, size_t num_elem, TagDescription &tag_out, MsqError &err) |
Read a 2-D array of data of the specified type from the file Initializes size and type fields of passed TagDescroption. More... | |
void * | vtk_read_scalar_attrib (FileTokenizer &file, long count, TagDescription &tag_out, MsqError &err) |
Read scalar attribute data Initializes size and type fields of passed TagDescroption. More... | |
void * | vtk_read_color_attrib (FileTokenizer &file, long count, TagDescription &tag_out, MsqError &err) |
Read color attribute data Initializes size and type fields of passed TagDescroption. More... | |
void * | vtk_read_vector_attrib (FileTokenizer &file, long count, TagDescription &tag_out, MsqError &err) |
Read vector or normal attribute data Initializes size and type fields of passed TagDescroption. More... | |
void * | vtk_read_texture_attrib (FileTokenizer &file, long count, TagDescription &tag_out, MsqError &err) |
Read texture attribute data Initializes size and type fields of passed TagDescroption. More... | |
void * | vtk_read_tensor_attrib (FileTokenizer &file, long count, TagDescription &tag_out, MsqError &err) |
Read tensor (3x3 matrix) data Initializes size and type fields of passed TagDescroption. More... | |
void | vtk_write_attrib_data (msq_stdio::ostream &file, const TagDescription &desc, const void *data, size_t count, MsqError &err) const |
Write tag data to VTK attributes. More... | |
Private Attributes | |
int | numCoords |
Coordinate values per vertex. More... | |
MeshImplData * | myMesh |
MeshImplTags * | myTags |
Additional Inherited Members | |
Public Types inherited from Mesh | |
enum | TagType { BYTE, BOOL, INT, DOUBLE, HANDLE } |
The type of a tag. More... | |
typedef void * | EntityHandle |
Opaque EntityHandle type and tag type. More... | |
typedef EntityHandle | VertexHandle |
typedef EntityHandle | ElementHandle |
Protected Member Functions inherited from Mesh | |
virtual | ~Mesh () |
Don't allow a Mesh to be deleted directly. More... | |
MeshImpl is a Mesquite implementation of the Mesh interface. Applications can also provide their own implementation of the interface.
MeshImpl can read in mesh files in VTK format and ExodusII format.
Definition at line 63 of file includeLinks/MeshImpl.hpp.
MeshImpl | ( | ) |
Definition at line 87 of file Mesh/MeshImpl.cpp.
|
virtual |
MeshImpl | ( | ) |
|
virtual |
void clear | ( | ) |
Definition at line 99 of file Mesh/MeshImpl.cpp.
References MeshImplData::clear(), MeshImplTags::clear(), MeshImpl::myMesh, and MeshImpl::myTags.
Referenced by MeshImpl::read_exodus(), and MeshImpl::read_vtk().
void clear | ( | ) |
|
virtual |
Gets the number of vertices in this element.
This data can also be found by querying the element's topology and getting the number of vertices per element for that topology type.
Implements Mesh.
|
virtual |
Gets the number of vertices in this element.
This data can also be found by querying the element's topology and getting the number of vertices per element for that topology type.
Implements Mesh.
Definition at line 966 of file Mesh/MeshImpl.cpp.
References MeshImplData::element_connectivity(), MSQ_CHKERR, and MeshImpl::myMesh.
Referenced by MeshImpl::write_vtk().
void element_get_connectivity | ( | ElementHandle | element, |
VertexHandle * | vert_handles, | ||
size_t | sizeof_vert_handles, | ||
MsqError & | err | ||
) |
Definition at line 1090 of file Mesh/MeshImpl.cpp.
References MeshImplData::element_connectivity(), MsqError::INVALID_ARG, MSQ_ERRRTN, MSQ_SETERR, and MeshImpl::myMesh.
Referenced by MeshImpl::write_vtk().
void element_get_connectivity | ( | ElementHandle | element, |
VertexHandle * | vert_handles, | ||
size_t | sizeof_vert_handles, | ||
MsqError & | err | ||
) |
|
virtual |
Returns the topology of the given entity.
Implements Mesh.
|
virtual |
Returns the topology of the given entity.
Implements Mesh.
Definition at line 1107 of file Mesh/MeshImpl.cpp.
References MeshImpl::elements_get_topologies(), and MSQ_CHKERR.
Referenced by MeshImpl::write_vtk().
|
virtual |
Returns a pointer to an iterator that iterates over the set of all top-level elements in this mesh.
The calling code should delete the returned iterator when it is finished with it. If elements are added or removed from the Mesh after obtaining an iterator, the behavior of that iterator is undefined.
Implements Mesh.
|
virtual |
Returns a pointer to an iterator that iterates over the set of all top-level elements in this mesh.
The calling code should delete the returned iterator when it is finished with it. If elements are added or removed from the Mesh after obtaining an iterator, the behavior of that iterator is undefined.
Implements Mesh.
Definition at line 830 of file Mesh/MeshImpl.cpp.
References MeshImpl::myMesh.
Referenced by MeshImpl::write_vtk().
|
virtual |
Returns the vertices that are part of the topological definition of each element in the "elem_handles" array.
When this function is called, the following must be true:
When this function returns, adjacency information will be stored in csr format:
As an example of how to use this data, you can get the handle of the first vertex in element #3 like this:
and the second vertex of element #3 like this:
Implements Mesh.
|
virtual |
Returns the vertices that are part of the topological definition of each element in the "elem_handles" array.
When this function is called, the following must be true:
When this function returns, adjacency information will be stored in csr format:
As an example of how to use this data, you can get the handle of the first vertex in element #3 like this:
and the second vertex of element #3 like this:
Implements Mesh.
Definition at line 1007 of file Mesh/MeshImpl.cpp.
References MeshImplData::element_connectivity(), i, MsqError::INVALID_ARG, j, MSQ_ERRRTN, MSQ_SETERR, and MeshImpl::myMesh.
|
virtual |
Returns the topologies of the given entities.
The "entity_topologies" array must be at least "num_elements" in size.
Implements Mesh.
|
virtual |
Returns the topologies of the given entities.
The "entity_topologies" array must be at least "num_elements" in size.
Implements Mesh.
Referenced by MeshImpl::element_get_topology().
|
virtual |
Get entities and connectivity.
Get vertex handles, element handles, and connectivty for active mesh. Use get_all_sizes to determine required array sizes.
vert_array | Array to store vertex handles in |
vert_len | Length of vert_array |
elem_array | Array to store element handles in |
elem_len | Length of elem_array |
elem_conn_offsets | Offsets into elem_conn_indices at which the connectivity data for each element begins. |
offset_len | Length of elem_conn_offsets. Should be telem_len + 1. |
elem_conn_indices | Indices into vert_array |
index_len | Length of elem_conn_indices. |
Implements Mesh.
Definition at line 782 of file Mesh/MeshImpl.cpp.
References MeshImplData::copy_mesh(), MsqError::INVALID_ARG, MSQ_SETERR, and MeshImpl::myMesh.
|
virtual |
Get entities and connectivity.
Get vertex handles, element handles, and connectivty for active mesh. Use get_all_sizes to determine required array sizes.
vert_array | Array to store vertex handles in |
vert_len | Length of vert_array |
elem_array | Array to store element handles in |
elem_len | Length of elem_array |
elem_conn_offsets | Offsets into elem_conn_indices at which the connectivity data for each element begins. |
offset_len | Length of elem_conn_offsets. Should be telem_len + 1. |
elem_conn_indices | Indices into vert_array |
index_len | Length of elem_conn_indices. |
Implements Mesh.
|
virtual |
get sizes for calling get_all_mesh
Get counts of entities in mesh.
vertex_count | - Number of vertices connected to active mesh |
element_count | - Number of elements in active mesh |
vertex_use_count | - Number of vertex uses (sum of the length of the connectivity list for all elements in active.) |
Implements Mesh.
Definition at line 772 of file Mesh/MeshImpl.cpp.
References MeshImpl::myMesh, MeshImplData::num_elements(), MeshImplData::num_vertex_uses(), and MeshImplData::num_vertices().
|
virtual |
get sizes for calling get_all_mesh
Get counts of entities in mesh.
vertex_count | - Number of vertices connected to active mesh |
element_count | - Number of elements in active mesh |
vertex_use_count | - Number of vertex uses (sum of the length of the connectivity list for all elements in active.) |
Implements Mesh.
|
virtual |
Returns whether this mesh lies in a 2D or 3D coordinate system.
Implements Mesh.
|
virtual |
Returns whether this mesh lies in a 2D or 3D coordinate system.
Implements Mesh.
Definition at line 766 of file Mesh/MeshImpl.cpp.
References MeshImpl::numCoords.
|
virtual |
Get sum of number of vertices in each element.
Implements Mesh.
Definition at line 802 of file Mesh/MeshImpl.cpp.
References MeshImplData::element_connectivity(), i, MSQ_ERRZERO, and MeshImpl::myMesh.
|
virtual |
Get sum of number of vertices in each element.
Implements Mesh.
void read_exodus | ( | const char * | in_filename, |
Mesquite::MsqError & | err | ||
) |
Definition at line 289 of file Mesh/MeshImpl.cpp.
References MeshImplData::allocate_elements(), MeshImplData::allocate_vertices(), MeshImpl::clear(), MsqError::FILE_ACCESS, MeshImplData::fix_vertex(), Mesquite::HEXAHEDRON, i, MsqError::IO_ERROR, j, MSQ_CHKERR, MSQ_DBGOUT, MSQ_ERRRTN, MSQ_PRINT, MSQ_SETERR, MeshImpl::myMesh, MsqError::NOT_IMPLEMENTED, MeshImpl::numCoords, MsqError::PARSE_ERROR, Mesquite::QUADRILATERAL, MeshImplData::reset_element(), MeshImplData::reset_vertex(), Mesquite::TETRAHEDRON, and Mesquite::TRIANGLE.
void read_exodus | ( | const char * | in_filename, |
Mesquite::MsqError & | err | ||
) |
void read_vtk | ( | const char * | in_filename, |
Mesquite::MsqError & | err | ||
) |
Definition at line 1169 of file Mesh/MeshImpl.cpp.
References Mesh::BOOL, Mesh::BYTE, MsqError::clear(), MeshImpl::clear(), Mesh::DOUBLE, FileTokenizer::eof(), cimg_library::cimg::fclose(), MsqError::FILE_ACCESS, MsqError::FILE_FORMAT, MeshImplData::fix_vertex(), cimg_library::cimg::fopen(), FileTokenizer::get_long_ints(), MeshImplTags::get_vertex_data(), i, Mesh::INT, MsqError::IO_ERROR, FileTokenizer::line_number(), FileTokenizer::match_token(), MeshImplData::max_vertex_index(), MSQ_CHKERR, MSQ_ERRRTN, MSQ_SETERR, MeshImpl::myMesh, MeshImpl::myTags, MsqError::NOT_IMPLEMENTED, MeshImplData::num_elements(), MeshImplData::num_vertices(), MeshImpl::numCoords, MsqError::PARSE_ERROR, MeshImplTags::properties(), MeshImpl::tag_delete(), MeshImpl::tag_get(), MeshImplTags::tag_has_vertex_data(), TagDescription::type, FileTokenizer::unget_token(), MeshImpl::vtk_read_cell_data(), MeshImpl::vtk_read_dataset(), and MeshImpl::vtk_read_point_data().
void read_vtk | ( | const char * | in_filename, |
Mesquite::MsqError & | err | ||
) |
|
virtual |
Instead of deleting a Mesh when you think you are done, call release().
In simple cases, the implementation could just call the destructor. More sophisticated implementations may want to keep the Mesh object to live longer than Mesquite is using it.
Implements Mesh.
Definition at line 1149 of file Mesh/MeshImpl.cpp.
|
virtual |
|
virtual |
Tells the mesh that the client is finished with a given entity handle.
Implements Mesh.
Definition at line 1136 of file Mesh/MeshImpl.cpp.
|
virtual |
Tells the mesh that the client is finished with a given entity handle.
Implements Mesh.
|
virtual |
Create a tag.
Create a user-defined data type that can be attached to any element or vertex in the mesh. For an opaque or undefined type, use type=BYTE and length=sizeof(..).
tag_name | A unique name for the data object |
type | The type of the data |
length | Number of values per entity (1->scalar, >1 ->vector) |
default_value | Default value to assign to all entities - may be NULL |
Implements Mesh.
|
virtual |
Create a tag.
Create a user-defined data type that can be attached to any element or vertex in the mesh. For an opaque or undefined type, use type=BYTE and length=sizeof(..).
tag_name | A unique name for the data object |
type | The type of the data |
length | Number of values per entity (1->scalar, >1 ->vector) |
default_value | Default value to assign to all entities - may be NULL |
Implements Mesh.
Remove a tag and all corresponding data.
Delete a tag.
Implements Mesh.
Definition at line 2348 of file Mesh/MeshImpl.cpp.
References MeshImplTags::destroy(), MSQ_CHKERR, and MeshImpl::myTags.
Referenced by MeshImpl::read_vtk().
Get handle for existing tag, by name.
Implements Mesh.
Get handle for existing tag, by name.
Implements Mesh.
Definition at line 2353 of file Mesh/MeshImpl.cpp.
References MeshImplTags::handle(), MSQ_ERRZERO, and MeshImpl::myTags.
Referenced by MeshImpl::read_vtk().
|
virtual |
Get tag values on elements.
Get the value of a tag for a list of mesh elements.
handle | The tag |
num_elems | Length of elem_array |
elem_array | Array of elements for which to get the tag value. |
tag_data | Return buffer in which to copy tag data, contiguous in memory. This data is expected to be num_elems*tag_length*sizeof(tag_type) bytes. |
Implements Mesh.
Definition at line 2387 of file Mesh/MeshImpl.cpp.
References MeshImplTags::get_element_data(), MSQ_CHKERR, and MeshImpl::myTags.
|
virtual |
Get tag values on elements.
Get the value of a tag for a list of mesh elements.
handle | The tag |
num_elems | Length of elem_array |
elem_array | Array of elements for which to get the tag value. |
tag_data | Return buffer in which to copy tag data, contiguous in memory. This data is expected to be num_elems*tag_length*sizeof(tag_type) bytes. |
Implements Mesh.
|
virtual |
Get tag values on vertices.
Get the value of a tag for a list of mesh vertices.
handle | The tag |
num_elems | Length of elem_array |
elem_array | Array of vertices for which to get the tag value. |
tag_data | Return buffer in which to copy tag data, contiguous in memory. This data is expected to be num_elems*tag_length*sizeof(tag_type) bytes. |
Implements Mesh.
Definition at line 2413 of file Mesh/MeshImpl.cpp.
References MeshImplTags::get_vertex_data(), MSQ_CHKERR, and MeshImpl::myTags.
|
virtual |
Get tag values on vertices.
Get the value of a tag for a list of mesh vertices.
handle | The tag |
num_elems | Length of elem_array |
elem_array | Array of vertices for which to get the tag value. |
tag_data | Return buffer in which to copy tag data, contiguous in memory. This data is expected to be num_elems*tag_length*sizeof(tag_type) bytes. |
Implements Mesh.
|
virtual |
Get properites of tag.
Get data type and number of values per entity for tag.
handle | Tag to get properties of. |
name_out | Passed back tag name. |
type_out | Passed back tag type. |
length_out | Passed back number of values per entity. |
Implements Mesh.
|
virtual |
Get properites of tag.
Get data type and number of values per entity for tag.
handle | Tag to get properties of. |
name_out | Passed back tag name. |
type_out | Passed back tag type. |
length_out | Passed back number of values per entity. |
Implements Mesh.
Definition at line 2359 of file Mesh/MeshImpl.cpp.
References MSQ_ERRRTN, MeshImpl::myTags, TagDescription::name, MeshImplTags::properties(), TagDescription::size, MeshImplTags::size_from_tag_type(), and TagDescription::type.
|
virtual |
Set tag values on elements.
Set the value of a tag for a list of mesh elements.
handle | The tag |
num_elems | Length of elem_array |
elem_array | Array of elements for which to set the tag value. |
tag_data | Tag data for each element, contiguous in memory. This data is expected to be num_elems*tag_length*sizeof(tag_type) bytes. |
Implements Mesh.
|
virtual |
Set tag values on elements.
Set the value of a tag for a list of mesh elements.
handle | The tag |
num_elems | Length of elem_array |
elem_array | Array of elements for which to set the tag value. |
tag_data | Tag data for each element, contiguous in memory. This data is expected to be num_elems*tag_length*sizeof(tag_type) bytes. |
Implements Mesh.
Definition at line 2374 of file Mesh/MeshImpl.cpp.
References MSQ_CHKERR, MeshImpl::myTags, and MeshImplTags::set_element_data().
|
virtual |
Set tag values on vertices.
Set the value of a tag for a list of mesh vertices.
handle | The tag |
num_elems | Length of node_array |
node_array | Array of vertices for which to set the tag value. |
tag_data | Tag data for each element, contiguous in memory. This data is expected to be num_elems*tag_length*sizeof(tag_type) bytes. |
Implements Mesh.
|
virtual |
Set tag values on vertices.
Set the value of a tag for a list of mesh vertices.
handle | The tag |
num_elems | Length of node_array |
node_array | Array of vertices for which to set the tag value. |
tag_data | Tag data for each element, contiguous in memory. This data is expected to be num_elems*tag_length*sizeof(tag_type) bytes. |
Implements Mesh.
Definition at line 2400 of file Mesh/MeshImpl.cpp.
References MSQ_CHKERR, MeshImpl::myTags, and MeshImplTags::set_vertex_data().
|
virtual |
Gets the number of elements attached to this vertex.
Useful to determine how large the "elem_array" parameter of the vertex_get_attached_elements() function must be.
Implements Mesh.
Definition at line 935 of file Mesh/MeshImpl.cpp.
References MSQ_CHKERR, MeshImpl::myMesh, and MeshImplData::vertex_adjacencies().
|
virtual |
Gets the number of elements attached to this vertex.
Useful to determine how large the "elem_array" parameter of the vertex_get_attached_elements() function must be.
Implements Mesh.
|
virtual |
Gets the elements attached to this vertex.
Implements Mesh.
|
virtual |
Gets the elements attached to this vertex.
Implements Mesh.
Definition at line 944 of file Mesh/MeshImpl.cpp.
References MsqError::INVALID_ARG, MSQ_ERRRTN, MSQ_SETERR, MeshImpl::myMesh, and MeshImplData::vertex_adjacencies().
|
virtual |
Retrieve the byte value for the specified vertex or vertices.
The byte value is 0 if it has not yet been set via one of the *_set_byte() functions.
Implements Mesh.
Definition at line 912 of file Mesh/MeshImpl.cpp.
References MSQ_CHKERR, and MeshImpl::vertices_get_byte().
|
virtual |
Retrieve the byte value for the specified vertex or vertices.
The byte value is 0 if it has not yet been set via one of the *_set_byte() functions.
Implements Mesh.
|
virtual |
Returns true or false, indicating whether the vertex is allowed to be repositioned.
True indicates that the vertex is fixed and cannot be moved. Note that this is a read-only property; this flag can't be modified by users of the Mesquite::Mesh interface.
Implements Mesh.
|
virtual |
Returns true or false, indicating whether the vertex is allowed to be repositioned.
True indicates that the vertex is fixed and cannot be moved. Note that this is a read-only property; this flag can't be modified by users of the Mesquite::Mesh interface.
Implements Mesh.
Definition at line 841 of file Mesh/MeshImpl.cpp.
|
virtual |
Returns a pointer to an iterator that iterates over the set of all vertices in this mesh.
The calling code should delete the returned iterator when it is finished with it. If vertices are added or removed from the Mesh after obtaining an iterator, the behavior of that iterator is undefined.
Implements Mesh.
|
virtual |
Returns a pointer to an iterator that iterates over the set of all vertices in this mesh.
The calling code should delete the returned iterator when it is finished with it. If vertices are added or removed from the Mesh after obtaining an iterator, the behavior of that iterator is undefined.
Implements Mesh.
Definition at line 820 of file Mesh/MeshImpl.cpp.
References MeshImpl::myMesh.
|
virtual |
|
virtual |
Each vertex has a byte-sized flag that can be used to store flags.
This byte's value is neither set nor used by the mesh implementation. It is intended to be used by Mesquite algorithms. Until a vertex's byte has been explicitly set, its value is 0.
Implements Mesh.
Definition at line 890 of file Mesh/MeshImpl.cpp.
References MSQ_CHKERR.
|
virtual |
Implements Mesh.
|
virtual |
Implements Mesh.
Definition at line 878 of file Mesh/MeshImpl.cpp.
References MSQ_CHKERR, MeshImpl::myMesh, and MeshImplData::set_vertex_coords().
|
virtual |
Returns true or false, indicating whether the vertex is on the boundary.
Boundary nodes may be treated as a special case by some algorithms or culling methods. Note that this is a read-only property; this flag can't be modified by users of the Mesquite::Mesh interface.
Implements Mesh.
|
virtual |
Returns true or false, indicating whether the vertex is on the boundary.
Boundary nodes may be treated as a special case by some algorithms or culling methods. Note that this is a read-only property; this flag can't be modified by users of the Mesquite::Mesh interface.
Implements Mesh.
Definition at line 852 of file Mesh/MeshImpl.cpp.
References i, MSQ_ERRRTN, MeshImpl::myMesh, and MeshImplData::vertex_is_fixed().
|
virtual |
Implements Mesh.
Definition at line 897 of file Mesh/MeshImpl.cpp.
References MeshImplData::get_vertex_byte(), i, MSQ_ERRRTN, and MeshImpl::myMesh.
Referenced by MeshImpl::vertex_get_byte().
|
virtual |
Implements Mesh.
|
virtual |
Get/set location of a vertex.
Implements Mesh.
|
virtual |
Get/set location of a vertex.
Implements Mesh.
Definition at line 864 of file Mesh/MeshImpl.cpp.
References MeshImplData::get_vertex_coords(), i, MSQ_ERRRTN, and MeshImpl::myMesh.
|
virtual |
Implements Mesh.
|
virtual |
Implements Mesh.
Definition at line 919 of file Mesh/MeshImpl.cpp.
References i, MSQ_ERRRTN, MeshImpl::myMesh, and MeshImplData::set_vertex_byte().
|
private |
Helper function for readers of structured mesh - create elements.
Definition at line 1730 of file Mesh/MeshImpl.cpp.
References MeshImplData::allocate_elements(), d, Mesquite::HEXAHEDRON, j, k, MSQ_ERRRTN, MSQ_SETERR, MeshImpl::myMesh, MsqError::NOT_IMPLEMENTED, Mesquite::QUADRILATERAL, MeshImplData::reset_element(), x, y, and z.
Referenced by MeshImpl::vtk_read_rectilinear_grid(), MeshImpl::vtk_read_structured_grid(), and MeshImpl::vtk_read_structured_points().
|
private |
Helper function for readers of structured mesh - create elements.
|
private |
Read actual data for both vtk_read_point_data and vtk_read_cell_data Initializes all fields of passed TagDescription.
Definition at line 1823 of file Mesh/MeshImpl.cpp.
References TagDescription::COLOR, FileTokenizer::get_string(), FileTokenizer::line_number(), FileTokenizer::match_token(), MSQ_ERRZERO, MSQ_SETERR, TagDescription::name, TagDescription::NORMAL, MsqError::NOT_IMPLEMENTED, TagDescription::SCALAR, TagDescription::TENSOR, TagDescription::TEXTURE, TagDescription::VECTOR, MeshImpl::vtk_read_color_attrib(), MeshImpl::vtk_read_scalar_attrib(), MeshImpl::vtk_read_tensor_attrib(), MeshImpl::vtk_read_texture_attrib(), MeshImpl::vtk_read_vector_attrib(), and TagDescription::vtkType.
Referenced by MeshImpl::vtk_read_cell_data(), and MeshImpl::vtk_read_point_data().
|
private |
Read actual data for both vtk_read_point_data and vtk_read_cell_data Initializes all fields of passed TagDescription.
|
private |
Read attribute data for elements.
|
private |
Read attribute data for elements.
Definition at line 1925 of file Mesh/MeshImpl.cpp.
References MeshImplData::all_elements(), MeshImplTags::create(), MeshImplTags::handle(), FileTokenizer::line_number(), MSQ_CHKERR, MSQ_ERRRTN, MSQ_SETERR, MeshImpl::myMesh, MeshImpl::myTags, TagDescription::name, MeshImplData::num_elements(), MsqError::PARSE_ERROR, MeshImplTags::properties(), MeshImplTags::set_element_data(), and MeshImpl::vtk_read_attrib_data().
Referenced by MeshImpl::read_vtk().
|
private |
Read color attribute data Initializes size and type fields of passed TagDescroption.
Definition at line 2135 of file Mesh/MeshImpl.cpp.
References Mesh::DOUBLE, FileTokenizer::get_floats(), FileTokenizer::get_long_ints(), FileTokenizer::line_number(), MSQ_CHKERR, MSQ_ERRZERO, MSQ_SETERR, MsqError::PARSE_ERROR, TagDescription::size, and TagDescription::type.
Referenced by MeshImpl::vtk_read_attrib_data().
|
private |
Read color attribute data Initializes size and type fields of passed TagDescroption.
|
private |
Read a data block from the file.
Definition at line 1362 of file Mesh/MeshImpl.cpp.
References FileTokenizer::match_token(), MSQ_ERRRTN, MeshImpl::vtk_read_field(), MeshImpl::vtk_read_polydata(), MeshImpl::vtk_read_rectilinear_grid(), MeshImpl::vtk_read_structured_grid(), MeshImpl::vtk_read_structured_points(), and MeshImpl::vtk_read_unstructured_grid().
Referenced by MeshImpl::read_vtk().
|
private |
Read a data block from the file.
|
private |
Read file-level field data.
Definition at line 1788 of file Mesh/MeshImpl.cpp.
References FileTokenizer::get_doubles(), FileTokenizer::get_long_ints(), FileTokenizer::get_string(), i, j, FileTokenizer::match_token(), MSQ_ERRRTN, and Mesquite::vtk_type_names.
Referenced by MeshImpl::vtk_read_dataset().
|
private |
Read file-level field data.
|
private |
Read attribute data for vertices.
|
private |
Read attribute data for vertices.
Definition at line 1871 of file Mesh/MeshImpl.cpp.
References MeshImplData::all_vertices(), MeshImplTags::create(), MeshImplTags::handle(), FileTokenizer::line_number(), MSQ_CHKERR, MSQ_ERRRTN, MSQ_SETERR, MeshImpl::myMesh, MeshImpl::myTags, TagDescription::name, MeshImplData::num_vertices(), MsqError::PARSE_ERROR, MeshImplTags::properties(), MeshImplTags::set_vertex_data(), and MeshImpl::vtk_read_attrib_data().
Referenced by MeshImpl::read_vtk().
|
private |
Read polydata mesh.
|
private |
Read polydata mesh.
Definition at line 1518 of file Mesh/MeshImpl.cpp.
References MeshImplData::allocate_vertices(), FileTokenizer::get_doubles(), FileTokenizer::get_long_ints(), FileTokenizer::get_newline(), FileTokenizer::line_number(), FileTokenizer::match_token(), MSQ_ERRRTN, MSQ_SETERR, MeshImpl::myMesh, MsqError::NOT_IMPLEMENTED, MsqError::PARSE_ERROR, MeshImplData::reset_vertex(), Vector3D::to_array(), MeshImpl::vtk_read_polygons(), and Mesquite::vtk_type_names.
Referenced by MeshImpl::vtk_read_dataset().
|
private |
Helper function for vtk_read_polydata - reads polygon subsection.
|
private |
Helper function for vtk_read_polydata - reads polygon subsection.
Definition at line 1568 of file Mesh/MeshImpl.cpp.
References MeshImplData::allocate_elements(), FileTokenizer::get_long_ints(), FileTokenizer::get_newline(), i, MSQ_ERRRTN, MeshImpl::myMesh, Mesquite::POLYGON, and MeshImplData::reset_element().
Referenced by MeshImpl::vtk_read_polydata().
|
private |
Read rectilinear grid structured mesh.
Definition at line 1465 of file Mesh/MeshImpl.cpp.
References MeshImplData::allocate_vertices(), FileTokenizer::get_doubles(), FileTokenizer::get_long_ints(), FileTokenizer::get_newline(), i, j, k, FileTokenizer::line_number(), FileTokenizer::match_token(), MSQ_ERRRTN, MSQ_SETERR, MeshImpl::myMesh, MsqError::PARSE_ERROR, MeshImplData::reset_vertex(), MeshImpl::vtk_create_structured_elems(), and Mesquite::vtk_type_names.
Referenced by MeshImpl::vtk_read_dataset().
|
private |
Read rectilinear grid structured mesh.
|
private |
Read scalar attribute data Initializes size and type fields of passed TagDescroption.
|
private |
Read scalar attribute data Initializes size and type fields of passed TagDescroption.
Definition at line 2032 of file Mesh/MeshImpl.cpp.
References Mesh::DOUBLE, FileTokenizer::get_doubles(), FileTokenizer::get_floats(), FileTokenizer::get_long_ints(), FileTokenizer::get_string(), i, FileTokenizer::line_number(), FileTokenizer::match_token(), MSQ_ERRZERO, MSQ_SETERR, MsqError::PARSE_ERROR, TagDescription::size, TagDescription::type, FileTokenizer::unget_token(), MeshImpl::vtk_read_typed_data(), and Mesquite::vtk_type_names.
Referenced by MeshImpl::vtk_read_attrib_data().
|
private |
Read structured grid mesh.
|
private |
Read structured grid mesh.
Definition at line 1425 of file Mesh/MeshImpl.cpp.
References MeshImplData::allocate_vertices(), FileTokenizer::get_doubles(), FileTokenizer::get_long_ints(), FileTokenizer::get_newline(), FileTokenizer::line_number(), FileTokenizer::match_token(), MSQ_ERRRTN, MSQ_SETERR, MeshImpl::myMesh, MsqError::PARSE_ERROR, MeshImplData::reset_vertex(), Vector3D::to_array(), MeshImpl::vtk_create_structured_elems(), and Mesquite::vtk_type_names.
Referenced by MeshImpl::vtk_read_dataset().
|
private |
Read structured point mesh.
Definition at line 1384 of file Mesh/MeshImpl.cpp.
References MeshImplData::allocate_vertices(), FileTokenizer::get_doubles(), FileTokenizer::get_long_ints(), FileTokenizer::get_newline(), i, j, k, FileTokenizer::line_number(), FileTokenizer::match_token(), MSQ_ERRRTN, MSQ_SETERR, MeshImpl::myMesh, MsqError::PARSE_ERROR, MeshImplData::reset_vertex(), and MeshImpl::vtk_create_structured_elems().
Referenced by MeshImpl::vtk_read_dataset().
|
private |
Read structured point mesh.
|
private |
Read tensor (3x3 matrix) data Initializes size and type fields of passed TagDescroption.
|
private |
Read tensor (3x3 matrix) data Initializes size and type fields of passed TagDescroption.
Definition at line 2201 of file Mesh/MeshImpl.cpp.
References FileTokenizer::match_token(), MSQ_ERRZERO, MeshImpl::vtk_read_typed_data(), and Mesquite::vtk_type_names.
Referenced by MeshImpl::vtk_read_attrib_data().
|
private |
Read texture attribute data Initializes size and type fields of passed TagDescroption.
Definition at line 2177 of file Mesh/MeshImpl.cpp.
References FileTokenizer::get_integers(), FileTokenizer::line_number(), FileTokenizer::match_token(), MSQ_ERRZERO, MSQ_SETERR, MsqError::PARSE_ERROR, MeshImpl::vtk_read_typed_data(), and Mesquite::vtk_type_names.
Referenced by MeshImpl::vtk_read_attrib_data().
|
private |
Read texture attribute data Initializes size and type fields of passed TagDescroption.
|
private |
Read a 2-D array of data of the specified type from the file Initializes size and type fields of passed TagDescroption.
Definition at line 1978 of file Mesh/MeshImpl.cpp.
References Mesh::BOOL, Mesh::DOUBLE, FileTokenizer::get_booleans(), FileTokenizer::get_doubles(), FileTokenizer::get_integers(), Mesh::INT, MsqError::INVALID_ARG, MSQ_CHKERR, MSQ_SETERR, TagDescription::size, and TagDescription::type.
Referenced by MeshImpl::vtk_read_scalar_attrib(), MeshImpl::vtk_read_tensor_attrib(), MeshImpl::vtk_read_texture_attrib(), and MeshImpl::vtk_read_vector_attrib().
|
private |
Read a 2-D array of data of the specified type from the file Initializes size and type fields of passed TagDescroption.
|
private |
Read unstructured mesh.
Definition at line 1590 of file Mesh/MeshImpl.cpp.
References MeshImplData::allocate_elements(), MeshImplData::allocate_vertices(), MeshImplData::element_connectivity(), MeshImplData::element_topology(), FileTokenizer::get_doubles(), FileTokenizer::get_long_ints(), FileTokenizer::get_newline(), Mesquite::HEXAHEDRON, i, FileTokenizer::line_number(), FileTokenizer::match_token(), Mesquite::MIXED, MSQ_ERRRTN, MSQ_SETERR, MeshImpl::myMesh, MsqError::NOT_IMPLEMENTED, MsqError::PARSE_ERROR, Mesquite::POLYGON, Mesquite::PRISM, Mesquite::PYRAMID, Mesquite::QUADRILATERAL, MeshImplData::reset_element(), MeshImplData::reset_vertex(), swap(), Mesquite::TETRAHEDRON, Vector3D::to_array(), Mesquite::TRIANGLE, and Mesquite::vtk_type_names.
Referenced by MeshImpl::vtk_read_dataset().
|
private |
Read unstructured mesh.
|
private |
Read vector or normal attribute data Initializes size and type fields of passed TagDescroption.
|
private |
Read vector or normal attribute data Initializes size and type fields of passed TagDescroption.
Definition at line 2164 of file Mesh/MeshImpl.cpp.
References FileTokenizer::match_token(), MSQ_ERRZERO, MeshImpl::vtk_read_typed_data(), and Mesquite::vtk_type_names.
Referenced by MeshImpl::vtk_read_attrib_data().
|
private |
Write tag data to VTK attributes.
Definition at line 2214 of file Mesh/MeshImpl.cpp.
References Mesh::BOOL, Mesh::BYTE, TagDescription::COLOR, Mesh::DOUBLE, MsqError::FILE_FORMAT, Mesh::HANDLE, i, Mesh::INT, MsqError::INTERNAL_ERROR, MSQ_SETERR, TagDescription::name, TagDescription::NONE, TagDescription::NORMAL, TagDescription::SCALAR, TagDescription::size, MeshImplTags::size_from_tag_type(), TagDescription::TENSOR, TagDescription::TEXTURE, TagDescription::type, TagDescription::VECTOR, and TagDescription::vtkType.
Referenced by MeshImpl::write_vtk().
|
private |
Write tag data to VTK attributes.
void write_exodus | ( | const char * | out_filename, |
Mesquite::MsqError & | err | ||
) |
Writes an exodus file of the mesh.
Definition at line 477 of file Mesh/MeshImpl.cpp.
References MsqError::FILE_ACCESS, Mesquite::HEXAHEDRON, i, MsqError::INTERNAL_ERROR, MsqError::INVALID_STATE, MsqError::IO_ERROR, j, k, Mesquite::MIXED, MSQ_DBGOUT, MSQ_ERRRTN, MSQ_SETERR, MsqError::NOT_IMPLEMENTED, MsqError::PARSE_ERROR, Mesquite::PRISM, Mesquite::PYRAMID, Mesquite::QUADRILATERAL, Mesquite::TETRAHEDRON, Mesquite::TRIANGLE, x, Vector3D::x(), y, Vector3D::y(), z, and Vector3D::z().
void write_exodus | ( | const char * | out_filename, |
Mesquite::MsqError & | err | ||
) |
void write_vtk | ( | const char * | out_filename, |
Mesquite::MsqError & | err | ||
) |
void write_vtk | ( | const char * | out_filename, |
Mesquite::MsqError & | err | ||
) |
Definition at line 106 of file Mesh/MeshImpl.cpp.
References MeshImpl::element_get_attached_vertex_count(), MeshImpl::element_get_connectivity(), MeshImpl::element_get_topology(), MeshImpl::element_iterator(), MsqError::FILE_ACCESS, MeshImplTags::get_element_data(), MeshImplData::get_vertex_coords(), MeshImplTags::get_vertex_data(), Mesquite::HEXAHEDRON, i, EntityIterator::is_at_end(), MeshImplData::is_element_valid(), MeshImplData::is_vertex_valid(), MeshImplData::max_element_index(), MeshImplData::max_vertex_index(), MSQ_ERRRTN, MSQ_SETERR, MeshImpl::myMesh, MeshImpl::myTags, MsqError::NOT_IMPLEMENTED, MeshImplData::num_elements(), MeshImplData::num_vertex_uses(), MeshImplData::num_vertices(), Mesquite::POLYGON, Mesquite::PRISM, MeshImplTags::properties(), Mesquite::PYRAMID, Mesquite::QUADRILATERAL, EntityIterator::restart(), TagDescription::size, swap(), MeshImplTags::tag_begin(), MeshImplTags::tag_end(), MeshImplTags::tag_has_element_data(), MeshImplTags::tag_has_vertex_data(), Mesquite::TETRAHEDRON, Mesquite::TRIANGLE, MeshImplData::vertex_is_fixed(), and MeshImpl::vtk_write_attrib_data().
|
private |
Definition at line 396 of file includeLinks/MeshImpl.hpp.
Referenced by MeshImpl::clear(), MeshImpl::element_get_attached_vertex_count(), MeshImpl::element_get_connectivity(), MeshImpl::element_iterator(), MeshImpl::elements_get_attached_vertices(), MeshImpl::get_all_mesh(), MeshImpl::get_all_sizes(), MeshImpl::get_vertex_use_count(), MeshImpl::read_exodus(), MeshImpl::read_vtk(), MeshImpl::vertex_get_attached_element_count(), MeshImpl::vertex_get_attached_elements(), MeshImpl::vertex_iterator(), MeshImpl::vertex_set_coordinates(), MeshImpl::vertices_are_on_boundary(), MeshImpl::vertices_get_byte(), MeshImpl::vertices_get_coordinates(), MeshImpl::vertices_set_byte(), MeshImpl::vtk_create_structured_elems(), MeshImpl::vtk_read_cell_data(), MeshImpl::vtk_read_point_data(), MeshImpl::vtk_read_polydata(), MeshImpl::vtk_read_polygons(), MeshImpl::vtk_read_rectilinear_grid(), MeshImpl::vtk_read_structured_grid(), MeshImpl::vtk_read_structured_points(), MeshImpl::vtk_read_unstructured_grid(), MeshImpl::write_vtk(), and MeshImpl::~MeshImpl().
|
private |
Definition at line 397 of file includeLinks/MeshImpl.hpp.
Referenced by MeshImpl::clear(), MeshImpl::read_vtk(), MeshImpl::tag_delete(), MeshImpl::tag_get(), MeshImpl::tag_get_element_data(), MeshImpl::tag_get_vertex_data(), MeshImpl::tag_properties(), MeshImpl::tag_set_element_data(), MeshImpl::tag_set_vertex_data(), MeshImpl::vtk_read_cell_data(), MeshImpl::vtk_read_point_data(), MeshImpl::write_vtk(), and MeshImpl::~MeshImpl().
|
private |
Coordinate values per vertex.
Definition at line 394 of file includeLinks/MeshImpl.hpp.
Referenced by MeshImpl::get_geometric_dimension(), MeshImpl::read_exodus(), and MeshImpl::read_vtk().