11#ifndef EBGEOMETRY_OBJ_HPP
12#define EBGEOMETRY_OBJ_HPP
35 static_assert(std::is_floating_point_v<T>,
"OBJ<T>: T must be a floating-point type");
114 [[
nodiscard]] std::vector<std::vector<
size_t>>&
153#include "EBGeometry_OBJImplem.hpp"
Declaration of 2D and 3D point/vector classes with templated precision. Used with DCEL tools.
Class for storing contents of Wavefront OBJ files.
Definition EBGeometry_OBJ.hpp:34
std::shared_ptr< EBGeometry::DCEL::MeshT< T, Meta > > convertToDCEL() const noexcept
Turn the OBJ mesh into a DCEL mesh.
std::vector< std::vector< size_t > > & getFacets() noexcept
Get the polygon facet indices.
std::string & getID() noexcept
Get the identifier for this object.
std::string m_id
OBJ object ID.
Definition EBGeometry_OBJ.hpp:138
std::vector< Vec3T< T > > m_vertexCoordinates
Vertex coordinates.
Definition EBGeometry_OBJ.hpp:143
OBJ() noexcept=default
Default constructor. Initializes empty member data holder.
std::vector< Vec3T< T > > & getVertexCoordinates() noexcept
Get the vertex coordinates.
std::vector< std::vector< size_t > > m_facets
Polygon facets.
Definition EBGeometry_OBJ.hpp:148
Three-dimensional vector class with arithmetic operators.
Definition EBGeometry_Vec.hpp:225
Namespace containing all of EBGeometry's functionality.
Definition EBGeometry_AnalyticDistanceFunctions.hpp:31