32 #include <rviz_rendering/objects/shape.hpp> 
   77   MeshShape(Ogre::SceneManager* scene_manager, Ogre::SceneNode* parent_node = 
nullptr);
 
   92   void addVertex(
const Ogre::Vector3& position);
 
  100   void addVertex(
const Ogre::Vector3& position, 
const Ogre::Vector3& normal);
 
  108   void addVertex(
const Ogre::Vector3& position, 
const Ogre::Vector3& normal, 
const Ogre::ColourValue& color);
 
  111   void addNormal(
const Ogre::Vector3& normal);
 
  114   void addColor(
const Ogre::ColourValue& color);
 
  117   void addTriangle(
unsigned int p1, 
unsigned int p2, 
unsigned int p3);
 
  129     return manual_object_;
 
  135   Ogre::ManualObject* manual_object_;
 
This class allows constructing Ogre shapes manually, from triangle lists.
 
void addColor(const Ogre::ColourValue &color)
Add color for a vertex.
 
void beginTriangles()
Start adding triangles to the mesh.
 
void addTriangle(unsigned int p1, unsigned int p2, unsigned int p3)
Add a triangle by indexing in the defined vertices.
 
void addVertex(const Ogre::Vector3 &position)
Add a vertex to the mesh (no normal defined). If using this function only (not using addTriangle()) i...
 
MeshShape(Ogre::SceneManager *scene_manager, Ogre::SceneNode *parent_node=nullptr)
Constructor.
 
void clear()
Clear the mesh.
 
void estimateVertexCount(size_t vcount)
 
void endTriangles()
Notify that the set of triangles to add is complete. No more triangles can be added,...
 
void addNormal(const Ogre::Vector3 &normal)
Add normal for a vertex.
 
Ogre::ManualObject * getManualObject()
Get the manual object created for the mesh.