Choreonoid  1.5
Classes | Public Types | Public Member Functions | Protected Member Functions | List of all members
cnoid::SgMesh Class Reference

#include <SceneDrawables.h>

Inheritance diagram for cnoid::SgMesh:
cnoid::SgMeshBase cnoid::SgObject cnoid::Referenced

Classes

class  Box
 
class  Cone
 
class  Cylinder
 
class  Mesh
 
class  Sphere
 

Public Types

enum  PrimitiveType {
  MESH = 0, BOX, SPHERE, CYLINDER,
  CONE
}
 
typedef Eigen::Map< Array3i > TriangleRef
 
typedef Eigen::Map< const Array3i > ConstTriangleRef
 
typedef boost::variant< Mesh, Box, Sphere, Cylinder, ConePrimitive
 
- Public Types inherited from cnoid::SgObject
typedef std::set< SgObject * > ParentContainer
 
typedef ParentContainer::iterator parentIter
 
typedef ParentContainer::const_iterator const_parentIter
 

Public Member Functions

 SgMesh ()
 
virtual SgObjectclone (SgCloneMap &cloneMap) const
 
virtual void updateBoundingBox ()
 
const SgIndexArraytriangleVertices () const
 
SgIndexArraytriangleVertices ()
 
int numTriangles () const
 
void setNumTriangles (int n)
 
void reserveNumTriangles (int n)
 
TriangleRef triangle (int index)
 
ConstTriangleRef triangle (int index) const
 
void setTriangle (int index, int v0, int v1, int v2)
 
TriangleRef addTriangle ()
 
void addTriangle (int v0, int v1, int v2)
 
const int primitiveType () const
 
template<class TPrimitive >
const TPrimitive & primitive () const
 
template<class TPrimitive >
void setPrimitive (const TPrimitive &prim)
 
- Public Member Functions inherited from cnoid::SgMeshBase
virtual int numChildObjects () const
 
virtual SgObjectchildObject (int index)
 
virtual const BoundingBoxboundingBox () const
 
bool hasVertices () const
 
SgVertexArrayvertices ()
 
const SgVertexArrayvertices () const
 
SgVertexArraysetVertices (SgVertexArray *vertices)
 
SgVertexArraygetOrCreateVertices ()
 
bool hasNormals () const
 
SgNormalArraynormals ()
 
const SgNormalArraynormals () const
 
SgNormalArraysetNormals (SgNormalArray *normals)
 
SgNormalArraygetOrCreateNormals ()
 
bool hasColors () const
 
SgColorArraycolors ()
 
const SgColorArraycolors () const
 
SgColorArraysetColors (SgColorArray *colors)
 
SgColorArraygetOrCreateColors ()
 
bool hasTexCoords () const
 
SgTexCoordArraytexCoords ()
 
const SgTexCoordArraytexCoords () const
 
SgTexCoordArraysetTexCoords (SgTexCoordArray *texCoords)
 
const SgIndexArraynormalIndices () const
 
SgIndexArraynormalIndices ()
 
const SgIndexArraycolorIndices () const
 
SgIndexArraycolorIndices ()
 
const SgIndexArraytexCoordIndices () const
 
SgIndexArraytexCoordIndices ()
 
bool isSolid () const
 
void setSolid (bool on)
 
- Public Member Functions inherited from cnoid::SgObject
const std::string & name () const
 
void setName (const std::string &name)
 
SignalProxy< void(const SgUpdate &update)> sigUpdated ()
 
void notifyUpdate (SgUpdate &update)
 
void notifyUpdate (int action=SgUpdate::MODIFIED)
 
void addParent (SgObject *parent, bool doNotify=false)
 
void removeParent (SgObject *parent)
 
int numParents () const
 
bool hasParents () const
 
const_parentIter parentBegin () const
 
const_parentIter parentEnd () const
 
SignalProxy< void(bool on)> sigGraphConnection ()
 
- Public Member Functions inherited from cnoid::Referenced
virtual ~Referenced ()
 
void addRef ()
 
void releaseRef ()
 

Protected Member Functions

 SgMesh (const SgMesh &org, SgCloneMap &cloneMap)
 
- Protected Member Functions inherited from cnoid::SgMeshBase
 SgMeshBase ()
 
 SgMeshBase (const SgMeshBase &org, SgCloneMap &cloneMap)
 
- Protected Member Functions inherited from cnoid::SgObject
 SgObject ()
 
 SgObject (const SgObject &org)
 
virtual void onUpdated (SgUpdate &update)
 
- Protected Member Functions inherited from cnoid::Referenced
 Referenced ()
 
 Referenced (const Referenced &org)
 
int refCount () const
 

Additional Inherited Members

- Protected Attributes inherited from cnoid::SgMeshBase
BoundingBox bbox
 

Member Typedef Documentation

typedef Eigen::Map<const Array3i> cnoid::SgMesh::ConstTriangleRef
typedef boost::variant<Mesh, Box, Sphere, Cylinder, Cone> cnoid::SgMesh::Primitive
typedef Eigen::Map<Array3i> cnoid::SgMesh::TriangleRef

Member Enumeration Documentation

Enumerator
MESH 
BOX 
SPHERE 
CYLINDER 
CONE 

Constructor & Destructor Documentation

SgMesh::SgMesh ( )
SgMesh::SgMesh ( const SgMesh org,
SgCloneMap cloneMap 
)
protected

Member Function Documentation

TriangleRef cnoid::SgMesh::addTriangle ( )
inline
void cnoid::SgMesh::addTriangle ( int  v0,
int  v1,
int  v2 
)
inline
SgObject * SgMesh::clone ( SgCloneMap cloneMap) const
virtual

Reimplemented from cnoid::SgObject.

int cnoid::SgMesh::numTriangles ( ) const
inline
template<class TPrimitive >
const TPrimitive& cnoid::SgMesh::primitive ( ) const
inline
const int cnoid::SgMesh::primitiveType ( ) const
inline
void cnoid::SgMesh::reserveNumTriangles ( int  n)
inline
void cnoid::SgMesh::setNumTriangles ( int  n)
inline
template<class TPrimitive >
void cnoid::SgMesh::setPrimitive ( const TPrimitive &  prim)
inline
void cnoid::SgMesh::setTriangle ( int  index,
int  v0,
int  v1,
int  v2 
)
inline
TriangleRef cnoid::SgMesh::triangle ( int  index)
inline
ConstTriangleRef cnoid::SgMesh::triangle ( int  index) const
inline
const SgIndexArray& cnoid::SgMesh::triangleVertices ( ) const
inline

Triangle indices (triangles variable) should be CCW.

SgIndexArray& cnoid::SgMesh::triangleVertices ( )
inline
void SgMesh::updateBoundingBox ( )
virtual

Reimplemented from cnoid::SgMeshBase.


The documentation for this class was generated from the following files: