|
PolyFEM
|
Format-independent input used to construct a runtime Mesh. More...
#include <MeshData.hpp>
Public Member Functions | |
| MeshData (Eigen::MatrixXd vertices, Eigen::MatrixXi elements) | |
| void | validate () const |
| int | dimension () const |
| bool | has_polyhedral_topology () const |
Public Attributes | |
| Eigen::MatrixXd | vertices |
| Eigen::MatrixXi | elements |
| bool | elements_are_ordered = true |
| Whether each element row carries a format-defined local vertex order. | |
| std::vector< int > | body_ids |
| std::vector< int > | geometry_ids |
| std::vector< int > | node_ids |
| std::vector< std::vector< int > > | boundary_elements |
| std::vector< int > | boundary_ids |
| Eigen::MatrixXd | higher_order_nodes |
| std::vector< std::vector< int > > | higher_order_connectivity |
| std::vector< std::vector< double > > | higher_order_weights |
| std::vector< std::vector< int > > | faces |
| Optional topology for arbitrary polyhedral cells. | |
| std::vector< std::vector< int > > | cell_faces |
| std::vector< std::vector< int > > | cell_face_orientations |
| std::vector< bool > | cell_is_hex |
| Eigen::MatrixXd | cell_kernel_points |
Format-independent input used to construct a runtime Mesh.
Definition at line 11 of file MeshData.hpp.
|
inline |
Definition at line 14 of file MeshData.hpp.
|
inline |
Definition at line 18 of file MeshData.hpp.
References vertices.
Referenced by polyfem::mesh::Mesh::create(), polyfem::mesh::MeshReader::read_msh(), validate(), and polyfem::io::CheckpointWriter::write_mesh().
|
inline |
Definition at line 19 of file MeshData.hpp.
References faces.
Referenced by polyfem::mesh::Mesh::build_from_data(), polyfem::mesh::CMesh3D::build_topology(), polyfem::mesh::NCMesh3D::build_topology(), validate(), and polyfem::io::CheckpointWriter::write_mesh().
| void polyfem::mesh::MeshData::validate | ( | ) | const |
Definition at line 7 of file MeshData.cpp.
References body_ids, boundary_elements, boundary_ids, cell_face_orientations, cell_faces, cell_is_hex, cell_kernel_points, dimension(), elements, faces, geometry_ids, has_polyhedral_topology(), higher_order_connectivity, higher_order_nodes, higher_order_weights, polyfem::log_and_throw_error(), node_ids, and vertices.
Referenced by polyfem::mesh::Mesh::create(), polyfem::mesh::Mesh::to_mesh_data(), and polyfem::io::CheckpointWriter::write_mesh().
| std::vector<int> polyfem::mesh::MeshData::body_ids |
Definition at line 27 of file MeshData.hpp.
Referenced by polyfem::mesh::Mesh::build_from_data(), polyfem::mesh::MeshReader::read_msh(), polyfem::mesh::Mesh::to_mesh_data(), validate(), and polyfem::io::CheckpointWriter::write_mesh().
| std::vector<std::vector<int> > polyfem::mesh::MeshData::boundary_elements |
Definition at line 30 of file MeshData.hpp.
Referenced by polyfem::mesh::Mesh::build_from_data(), polyfem::mesh::MeshReader::read_msh(), polyfem::mesh::Mesh::to_mesh_data(), validate(), and polyfem::io::CheckpointWriter::write_mesh().
| std::vector<int> polyfem::mesh::MeshData::boundary_ids |
Definition at line 31 of file MeshData.hpp.
Referenced by polyfem::mesh::Mesh::build_from_data(), polyfem::mesh::MeshReader::read_msh(), polyfem::mesh::Mesh::to_mesh_data(), validate(), and polyfem::io::CheckpointWriter::write_mesh().
| std::vector<std::vector<int> > polyfem::mesh::MeshData::cell_face_orientations |
Definition at line 40 of file MeshData.hpp.
Referenced by polyfem::mesh::CMesh3D::build_topology(), polyfem::mesh::MeshReader::from_geogram(), polyfem::mesh::MeshReader::read_hybrid(), polyfem::mesh::Mesh::to_mesh_data(), validate(), and polyfem::io::CheckpointWriter::write_mesh().
| std::vector<std::vector<int> > polyfem::mesh::MeshData::cell_faces |
Definition at line 39 of file MeshData.hpp.
Referenced by polyfem::mesh::CMesh3D::build_topology(), polyfem::mesh::MeshReader::from_geogram(), polyfem::mesh::MeshReader::read_hybrid(), polyfem::mesh::Mesh::to_mesh_data(), validate(), and polyfem::io::CheckpointWriter::write_mesh().
| std::vector<bool> polyfem::mesh::MeshData::cell_is_hex |
Definition at line 41 of file MeshData.hpp.
Referenced by polyfem::mesh::CMesh3D::build_topology(), polyfem::mesh::MeshReader::from_geogram(), polyfem::mesh::MeshReader::read_hybrid(), polyfem::mesh::Mesh::to_mesh_data(), validate(), and polyfem::io::CheckpointWriter::write_mesh().
| Eigen::MatrixXd polyfem::mesh::MeshData::cell_kernel_points |
Definition at line 42 of file MeshData.hpp.
Referenced by polyfem::mesh::CMesh3D::build_topology(), polyfem::mesh::MeshReader::from_geogram(), polyfem::mesh::MeshReader::read_hybrid(), polyfem::mesh::Mesh::to_mesh_data(), validate(), and polyfem::io::CheckpointWriter::write_mesh().
| Eigen::MatrixXi polyfem::mesh::MeshData::elements |
Definition at line 22 of file MeshData.hpp.
Referenced by polyfem::mesh::Mesh::build_from_data(), polyfem::mesh::CMesh2D::build_topology(), polyfem::mesh::NCMesh2D::build_topology(), polyfem::mesh::CMesh3D::build_topology(), polyfem::mesh::NCMesh3D::build_topology(), polyfem::mesh::MeshReader::read_msh(), validate(), and polyfem::io::CheckpointWriter::write_mesh().
| bool polyfem::mesh::MeshData::elements_are_ordered = true |
Whether each element row carries a format-defined local vertex order.
Arbitrary HYBRID polyhedra only provide an unordered vertex set.
Definition at line 25 of file MeshData.hpp.
Referenced by polyfem::mesh::CMesh3D::build_topology(), polyfem::mesh::MeshReader::read_hybrid(), and polyfem::io::CheckpointWriter::write_mesh().
| std::vector<std::vector<int> > polyfem::mesh::MeshData::faces |
Optional topology for arbitrary polyhedral cells.
Definition at line 38 of file MeshData.hpp.
Referenced by polyfem::mesh::CMesh3D::build_topology(), polyfem::mesh::MeshReader::from_geogram(), has_polyhedral_topology(), polyfem::mesh::MeshReader::read_hybrid(), polyfem::mesh::Mesh::to_mesh_data(), validate(), and polyfem::io::CheckpointWriter::write_mesh().
| std::vector<int> polyfem::mesh::MeshData::geometry_ids |
Definition at line 28 of file MeshData.hpp.
Referenced by polyfem::mesh::Mesh::build_from_data(), polyfem::mesh::Mesh::to_mesh_data(), validate(), and polyfem::io::CheckpointWriter::write_mesh().
| std::vector<std::vector<int> > polyfem::mesh::MeshData::higher_order_connectivity |
Definition at line 34 of file MeshData.hpp.
Referenced by polyfem::mesh::Mesh::build_from_data(), polyfem::mesh::MeshReader::read_msh(), polyfem::mesh::Mesh::to_mesh_data(), validate(), and polyfem::io::CheckpointWriter::write_mesh().
| Eigen::MatrixXd polyfem::mesh::MeshData::higher_order_nodes |
Definition at line 33 of file MeshData.hpp.
Referenced by polyfem::mesh::Mesh::build_from_data(), polyfem::mesh::MeshReader::read_msh(), polyfem::mesh::Mesh::to_mesh_data(), validate(), and polyfem::io::CheckpointWriter::write_mesh().
| std::vector<std::vector<double> > polyfem::mesh::MeshData::higher_order_weights |
Definition at line 35 of file MeshData.hpp.
Referenced by polyfem::mesh::Mesh::build_from_data(), polyfem::mesh::MeshReader::read_msh(), polyfem::mesh::Mesh::to_mesh_data(), validate(), and polyfem::io::CheckpointWriter::write_mesh().
| std::vector<int> polyfem::mesh::MeshData::node_ids |
Definition at line 29 of file MeshData.hpp.
Referenced by polyfem::mesh::Mesh::build_from_data(), polyfem::mesh::Mesh::to_mesh_data(), validate(), and polyfem::io::CheckpointWriter::write_mesh().
| Eigen::MatrixXd polyfem::mesh::MeshData::vertices |
Definition at line 21 of file MeshData.hpp.
Referenced by polyfem::mesh::CMesh2D::build_topology(), polyfem::mesh::NCMesh2D::build_topology(), polyfem::mesh::CMesh3D::build_topology(), polyfem::mesh::NCMesh3D::build_topology(), dimension(), polyfem::mesh::MeshReader::from_geogram(), polyfem::mesh::MeshReader::read_msh(), polyfem::mesh::Mesh::to_mesh_data(), validate(), and polyfem::io::CheckpointWriter::write_mesh().