Go to the documentation of this file.
17 #ifndef IGNITION_COMMON_MESH_HH_
18 #define IGNITION_COMMON_MESH_HH_
24 #include <gz/math/Vector3.hh>
25 #include <gz/math/Vector2.hh>
27 #include <ignition/utils/ImplPtr.hh>
29 #include <gz/common/config.hh>
31 #include <gz/common/graphics/Export.hh>
42 class IGNITION_COMMON_GRAPHICS_VISIBLE
Mesh
48 public:
virtual ~
Mesh();
76 public:
unsigned int VertexCount()
const;
80 public:
unsigned int NormalCount()
const;
84 public:
unsigned int IndexCount()
const;
88 public:
unsigned int TexCoordCount()
const;
106 public:
unsigned int SubMeshCount()
const;
115 public:
unsigned int MaterialCount()
const;
120 public:
MaterialPtr MaterialByIndex(
const unsigned int _index)
const;
126 public:
int IndexOfMaterial(
const Material *_mat)
const;
132 const unsigned int _index)
const;
143 public:
void FillArrays(
double **_vertArr,
int **_indArr)
const;
147 public:
void RecalculateNormals();
160 public:
void GenSphericalTexCoord(
169 public:
void SetSkeleton(
const SkeletonPtr &_skel);
173 public:
bool HasSkeleton()
const;
205 public:
double Volume()
const;
208 IGN_UTILS_UNIQUE_IMPL_PTR(dataPtr)
Forward declarations for the common classes.
Encapsulates description of a material.
Definition: gz/common/Material.hh:38
static const Vector3 Zero
A 3D mesh.
Definition: gz/common/Mesh.hh:42
A child mesh.
Definition: gz/common/SubMesh.hh:42