SOFA API  56988ca1
Open source framework for multi-physics simuation
sofa::helper::io::Mesh Class Reference

#include <Mesh.h>

Inheritance diagram for sofa::helper::io::Mesh:

Public Attributes

std::string loaderType
 

Protected Attributes

sofa::type::vector< type::Vec3m_vertices
 
sofa::type::vector< Edgem_edges
 Edges of the mesh loaded. More...
 
sofa::type::vector< Trianglem_triangles
 Triangles of the mesh loaded. More...
 
sofa::type::vector< Quadm_quads
 Quads of the mesh loaded. More...
 
type::vector< type::vector< sofa::Index > > m_polygons
 Polygons of the mesh loaded. More...
 
type::vector< HighOrderEdgePositionm_highOrderEdgePositions
 High order edge points of the mesh loaded. More...
 
type::vector< HighOrderTrianglePositionm_highOrderTrianglePositions
 High order triangle points of the mesh loaded. More...
 
type::vector< HighOrderQuadPositionm_highOrderQuadPositions
 High order quad points of the mesh loaded. More...
 
sofa::type::vector< Tetrahedronm_tetrahedra
 Tetrahedra of the mesh loaded. More...
 
sofa::type::vector< Hexahedronm_hexahedra
 Hexahedra of the mesh loaded. More...
 
type::vector< PrimitiveGroupm_edgesGroups
 Groups of Edges. More...
 
type::vector< PrimitiveGroupm_trianglesGroups
 Groups of Triangles. More...
 
type::vector< PrimitiveGroupm_quadsGroups
 Groups of Quads. More...
 
type::vector< PrimitiveGroupm_polygonsGroups
 Groups of Polygons. More...
 
type::vector< PrimitiveGroupm_tetrahedraGroups
 Groups of Tetrahedra. More...
 
type::vector< PrimitiveGroupm_hexahedraGroups
 Groups of Hexahedra. More...
 
type::vector< PrimitiveGroupm_pentahedraGroups
 Groups of Pentahedra. More...
 
type::vector< PrimitiveGroupm_pyramidsGroups
 Groups of Pyramids. More...
 
sofa::type::vector< type::Vec3texCoords
 
sofa::type::vector< type::Vec3normals
 
sofa::type::vector< sofa::type::vector< sofa::type::vector< PointID > > > facets
 
Material material
 
std::vector< Materialmaterials
 
std::vector< PrimitiveGroupgroups
 
std::string textureName
 

Public Member Functions

 SOFA_ATTRIBUTE_REPLACED__TYPEMEMBER (Vector3, sofa::type::Vec3)
 
sofa::type::vector< type::Vec3 > & getVertices ()
 
const sofa::type::vector< type::Vec3 > & getVertices () const
 
sofa::type::vector< Edge > & getEdges ()
 
const sofa::type::vector< Edge > & getEdges () const
 
sofa::type::vector< Triangle > & getTriangles ()
 
const sofa::type::vector< Triangle > & getTriangles () const
 
sofa::type::vector< Quad > & getQuads ()
 
const sofa::type::vector< Quad > & getQuads () const
 
sofa::type::vector< Tetrahedron > & getTetrahedra ()
 
const sofa::type::vector< Tetrahedron > & getTetrahedra () const
 
sofa::type::vector< Hexahedron > & getHexahedra ()
 
const sofa::type::vector< Hexahedron > & getHexahedra () const
 
sofa::type::vector< type::Vec3 > & getTexCoords ()
 
const sofa::type::vector< type::Vec3 > & getTexCoords () const
 
sofa::type::vector< type::Vec3 > & getNormals ()
 
const sofa::type::vector< type::Vec3 > & getNormals () const
 
sofa::type::vector< type::vector< type::vector< PointID > > > & getFacets ()
 
const sofa::type::vector< type::vector< type::vector< PointID > > > & getFacets () const
 
const sofa::type::vector< PrimitiveGroup > & getEdgesGroups () const
 
const sofa::type::vector< PrimitiveGroup > & getTrianglesGroups () const
 
const sofa::type::vector< PrimitiveGroup > & getQuadsGroups () const
 
const sofa::type::vector< PrimitiveGroup > & getPolygonsGroups () const
 
const sofa::type::vector< PrimitiveGroup > & getTetrahedraGroups () const
 
const sofa::type::vector< PrimitiveGroup > & getHexahedraGroups () const
 
const sofa::type::vector< PrimitiveGroup > & getPentahedraGroups () const
 
const sofa::type::vector< PrimitiveGroup > & getPyramidsGroups () const
 
const sofa::type::vector< HighOrderEdgePosition > & getHighOrderEdgePositions () const
 
const sofa::type::vector< HighOrderTrianglePosition > & getHighOrderTrianglePositions () const
 
const sofa::type::vector< HighOrderQuadPosition > & getHighOrderQuadPositions () const
 
const MaterialgetMaterial () const
 
const std::vector< Material > & getMaterials ()
 
const std::vector< PrimitiveGroup > & getGroups ()
 
std::string & getTextureName ()
 

Static Public Member Functions

static MeshCreate (const std::string &filename)
 
static MeshCreate (const std::string &loader, const std::string &filename)
 
template<class Object >
static Object * create (Object *, std::string arg)
 

Attribute details

◆ facets

sofa::type::vector< sofa::type::vector< sofa::type::vector<PointID> > > sofa::helper::io::Mesh::facets
protected

◆ groups

std::vector<PrimitiveGroup> sofa::helper::io::Mesh::groups
protected

◆ loaderType

std::string sofa::helper::io::Mesh::loaderType

◆ m_edges

sofa::type::vector< Edge > sofa::helper::io::Mesh::m_edges
protected

Edges of the mesh loaded.

◆ m_edgesGroups

type::vector< PrimitiveGroup > sofa::helper::io::Mesh::m_edgesGroups
protected

Groups of Edges.

◆ m_hexahedra

sofa::type::vector< Hexahedron > sofa::helper::io::Mesh::m_hexahedra
protected

Hexahedra of the mesh loaded.

◆ m_hexahedraGroups

type::vector< PrimitiveGroup > sofa::helper::io::Mesh::m_hexahedraGroups
protected

Groups of Hexahedra.

◆ m_highOrderEdgePositions

type::vector< HighOrderEdgePosition > sofa::helper::io::Mesh::m_highOrderEdgePositions
protected

High order edge points of the mesh loaded.

◆ m_highOrderQuadPositions

type::vector< HighOrderQuadPosition > sofa::helper::io::Mesh::m_highOrderQuadPositions
protected

High order quad points of the mesh loaded.

◆ m_highOrderTrianglePositions

type::vector< HighOrderTrianglePosition > sofa::helper::io::Mesh::m_highOrderTrianglePositions
protected

High order triangle points of the mesh loaded.

◆ m_pentahedraGroups

type::vector< PrimitiveGroup > sofa::helper::io::Mesh::m_pentahedraGroups
protected

Groups of Pentahedra.

◆ m_polygons

type::vector< type::vector <sofa::Index> > sofa::helper::io::Mesh::m_polygons
protected

Polygons of the mesh loaded.

◆ m_polygonsGroups

type::vector< PrimitiveGroup > sofa::helper::io::Mesh::m_polygonsGroups
protected

Groups of Polygons.

◆ m_pyramidsGroups

type::vector< PrimitiveGroup > sofa::helper::io::Mesh::m_pyramidsGroups
protected

Groups of Pyramids.

◆ m_quads

sofa::type::vector< Quad > sofa::helper::io::Mesh::m_quads
protected

Quads of the mesh loaded.

◆ m_quadsGroups

type::vector< PrimitiveGroup > sofa::helper::io::Mesh::m_quadsGroups
protected

Groups of Quads.

◆ m_tetrahedra

sofa::type::vector< Tetrahedron > sofa::helper::io::Mesh::m_tetrahedra
protected

Tetrahedra of the mesh loaded.

◆ m_tetrahedraGroups

type::vector< PrimitiveGroup > sofa::helper::io::Mesh::m_tetrahedraGroups
protected

Groups of Tetrahedra.

◆ m_triangles

sofa::type::vector< Triangle > sofa::helper::io::Mesh::m_triangles
protected

Triangles of the mesh loaded.

◆ m_trianglesGroups

type::vector< PrimitiveGroup > sofa::helper::io::Mesh::m_trianglesGroups
protected

Groups of Triangles.

◆ m_vertices

sofa::type::vector<type::Vec3> sofa::helper::io::Mesh::m_vertices
protected

◆ material

Material sofa::helper::io::Mesh::material
protected

◆ materials

std::vector<Material> sofa::helper::io::Mesh::materials
protected

◆ normals

sofa::type::vector<type::Vec3> sofa::helper::io::Mesh::normals
protected

◆ texCoords

sofa::type::vector<type::Vec3> sofa::helper::io::Mesh::texCoords
protected

◆ textureName

std::string sofa::helper::io::Mesh::textureName
protected

Function details

◆ Create() [1/2]

Mesh * sofa::helper::io::Mesh::Create ( const std::string &  filename)
static

◆ Create() [2/2]

Mesh * sofa::helper::io::Mesh::Create ( const std::string &  loader,
const std::string &  filename 
)
static

◆ create()

template<class Object >
static Object* sofa::helper::io::Mesh::create ( Object *  ,
std::string  arg 
)
inlinestatic

◆ getEdges() [1/2]

sofa::type::vector< Edge >& sofa::helper::io::Mesh::getEdges ( )
inline

◆ getEdges() [2/2]

const sofa::type::vector< Edge >& sofa::helper::io::Mesh::getEdges ( ) const
inline

◆ getEdgesGroups()

const sofa::type::vector< PrimitiveGroup >& sofa::helper::io::Mesh::getEdgesGroups ( ) const
inline

◆ getFacets() [1/2]

sofa::type::vector< type::vector < type::vector <PointID> > >& sofa::helper::io::Mesh::getFacets ( )
inline

◆ getFacets() [2/2]

const sofa::type::vector< type::vector < type::vector <PointID> > >& sofa::helper::io::Mesh::getFacets ( ) const
inline

◆ getGroups()

const std::vector<PrimitiveGroup>& sofa::helper::io::Mesh::getGroups ( )
inline

◆ getHexahedra() [1/2]

sofa::type::vector< Hexahedron >& sofa::helper::io::Mesh::getHexahedra ( )
inline

◆ getHexahedra() [2/2]

const sofa::type::vector< Hexahedron >& sofa::helper::io::Mesh::getHexahedra ( ) const
inline

◆ getHexahedraGroups()

const sofa::type::vector< PrimitiveGroup >& sofa::helper::io::Mesh::getHexahedraGroups ( ) const
inline

◆ getHighOrderEdgePositions()

const sofa::type::vector< HighOrderEdgePosition >& sofa::helper::io::Mesh::getHighOrderEdgePositions ( ) const
inline

◆ getHighOrderQuadPositions()

const sofa::type::vector< HighOrderQuadPosition >& sofa::helper::io::Mesh::getHighOrderQuadPositions ( ) const
inline

◆ getHighOrderTrianglePositions()

const sofa::type::vector< HighOrderTrianglePosition >& sofa::helper::io::Mesh::getHighOrderTrianglePositions ( ) const
inline

◆ getMaterial()

const Material& sofa::helper::io::Mesh::getMaterial ( ) const
inline

◆ getMaterials()

const std::vector<Material>& sofa::helper::io::Mesh::getMaterials ( )
inline

◆ getNormals() [1/2]

sofa::type::vector<type::Vec3>& sofa::helper::io::Mesh::getNormals ( )
inline

◆ getNormals() [2/2]

const sofa::type::vector<type::Vec3>& sofa::helper::io::Mesh::getNormals ( ) const
inline

◆ getPentahedraGroups()

const sofa::type::vector< PrimitiveGroup >& sofa::helper::io::Mesh::getPentahedraGroups ( ) const
inline

◆ getPolygonsGroups()

const sofa::type::vector< PrimitiveGroup >& sofa::helper::io::Mesh::getPolygonsGroups ( ) const
inline

◆ getPyramidsGroups()

const sofa::type::vector< PrimitiveGroup >& sofa::helper::io::Mesh::getPyramidsGroups ( ) const
inline

◆ getQuads() [1/2]

sofa::type::vector< Quad >& sofa::helper::io::Mesh::getQuads ( )
inline

◆ getQuads() [2/2]

const sofa::type::vector< Quad >& sofa::helper::io::Mesh::getQuads ( ) const
inline

◆ getQuadsGroups()

const sofa::type::vector< PrimitiveGroup >& sofa::helper::io::Mesh::getQuadsGroups ( ) const
inline

◆ getTetrahedra() [1/2]

sofa::type::vector< Tetrahedron >& sofa::helper::io::Mesh::getTetrahedra ( )
inline

◆ getTetrahedra() [2/2]

const sofa::type::vector< Tetrahedron >& sofa::helper::io::Mesh::getTetrahedra ( ) const
inline

◆ getTetrahedraGroups()

const sofa::type::vector< PrimitiveGroup >& sofa::helper::io::Mesh::getTetrahedraGroups ( ) const
inline

◆ getTexCoords() [1/2]

sofa::type::vector<type::Vec3>& sofa::helper::io::Mesh::getTexCoords ( )
inline

◆ getTexCoords() [2/2]

const sofa::type::vector<type::Vec3>& sofa::helper::io::Mesh::getTexCoords ( ) const
inline

◆ getTextureName()

std::string& sofa::helper::io::Mesh::getTextureName ( )
inline

◆ getTriangles() [1/2]

sofa::type::vector< Triangle >& sofa::helper::io::Mesh::getTriangles ( )
inline

◆ getTriangles() [2/2]

const sofa::type::vector< Triangle >& sofa::helper::io::Mesh::getTriangles ( ) const
inline

◆ getTrianglesGroups()

const sofa::type::vector< PrimitiveGroup >& sofa::helper::io::Mesh::getTrianglesGroups ( ) const
inline

◆ getVertices() [1/2]

sofa::type::vector<type::Vec3>& sofa::helper::io::Mesh::getVertices ( )
inline

◆ getVertices() [2/2]

const sofa::type::vector<type::Vec3>& sofa::helper::io::Mesh::getVertices ( ) const
inline

◆ SOFA_ATTRIBUTE_REPLACED__TYPEMEMBER()

sofa::helper::io::Mesh::SOFA_ATTRIBUTE_REPLACED__TYPEMEMBER ( Vector3  ,
sofa::type::Vec3   
)