9#ifndef SE_MESHING_IO_HPP
10#define SE_MESHING_IO_HPP
12#include <Eigen/Geometry>
24static const std::array<std::string, 3>
mesh_extensions = {
".obj",
".ply",
".vtk"};
43template<
typename FaceT>
46 const Eigen::Affine3f&
T_OM = Eigen::Affine3f::Identity());
58template<
typename FaceT>
61 const Eigen::Affine3f&
T_OM = Eigen::Affine3f::Identity());
73template<
typename FaceT>
76 const Eigen::Affine3f&
T_OM = Eigen::Affine3f::Identity());
88template<
typename FaceT>
91 const Eigen::Affine3f&
T_OM = Eigen::Affine3f::Identity());
96#include "impl/mesh_io_impl.hpp"
int save_mesh_ply(const Mesh< FaceT > &mesh_M, const std::string &filename, const Eigen::Affine3f &T_OM=Eigen::Affine3f::Identity())
Save a mesh as a PLY file.
static const std::array< std::string, 3 > mesh_extensions
The supported file extensions for mesh files.
Definition mesh_io.hpp:24
int save_mesh_obj(const Mesh< FaceT > &mesh_M, const std::string &filename, const Eigen::Affine3f &T_OM=Eigen::Affine3f::Identity())
Save a mesh as an Wavefront OBJ file.
int save_mesh_vtk(const Mesh< FaceT > &mesh_M, const std::string &filename, const Eigen::Affine3f &T_OM=Eigen::Affine3f::Identity())
Save a mesh as a VTK file.
int save_mesh(const Mesh< FaceT > &mesh_M, const std::string &filename, const Eigen::Affine3f &T_OM=Eigen::Affine3f::Identity())
Save a mesh to a file whose type is determined by the extension of filename.
bool has_supported_mesh_extension(const std::string &filename)
Test whether the suffix of filename is one of the file extensions in se::io::mesh_extensions.
Helper wrapper to allocate and de-allocate octants in the octree.
Definition bounded_vector.hpp:14