Choreonoid  1.8
Public Member Functions | Protected Member Functions | List of all members
cnoid::SgPolygonMesh Class Reference

#include <SceneDrawables.h>

Inheritance diagram for cnoid::SgPolygonMesh:
cnoid::SgMeshBase cnoid::SgObject cnoid::ClonableReferenced cnoid::Referenced

Public Member Functions

 SgPolygonMesh ()
 
 SgPolygonMesh (const SgPolygonMesh &org, CloneMap *cloneMap=nullptr)
 
virtual void updateBoundingBox () override
 
SgIndexArray & polygonVertices ()
 
const SgIndexArray & polygonVertices () const
 
- Public Member Functions inherited from cnoid::SgMeshBase
virtual int numChildObjects () const override
 
virtual SgObject * childObject (int index) override
 
const BoundingBox & boundingBox () const
 
void setBoundingBox (const BoundingBox &bb)
 
void setBoundingBox (const BoundingBoxf &bb)
 
bool hasVertices () const
 
SgVertexArray * vertices ()
 
const SgVertexArray * vertices () const
 
SgVertexArray * setVertices (SgVertexArray *vertices)
 
SgVertexArray * getOrCreateVertices (int size=0)
 
bool hasNormals () const
 
SgNormalArray * normals ()
 
const SgNormalArray * normals () const
 
SgNormalArray * setNormals (SgNormalArray *normals)
 
SgNormalArray * getOrCreateNormals ()
 
bool hasColors () const
 
SgColorArray * colors ()
 
const SgColorArray * colors () const
 
SgColorArray * setColors (SgColorArray *colors)
 
SgColorArray * getOrCreateColors (int size=0)
 
bool hasTexCoords () const
 
SgTexCoordArray * texCoords ()
 
const SgTexCoordArray * texCoords () const
 
SgTexCoordArray * setTexCoords (SgTexCoordArray *texCoords)
 
SgTexCoordArray * getOrCreateTexCoords ()
 
bool hasFaceVertexIndices () const
 
const SgIndexArray & faceVertexIndices () const
 
SgIndexArray & faceVertexIndices ()
 
bool hasNormalIndices () const
 
const SgIndexArray & normalIndices () const
 
SgIndexArray & normalIndices ()
 
bool hasColorIndices () const
 
const SgIndexArray & colorIndices () const
 
SgIndexArray & colorIndices ()
 
bool hasTexCoordIndices () const
 
const SgIndexArray & texCoordIndices () const
 
SgIndexArray & texCoordIndices ()
 
float creaseAngle () const
 
void setCreaseAngle (float angle)
 
bool isSolid () const
 
void setSolid (bool on)
 
- Public Member Functions inherited from cnoid::SgObject
SgObject * clone () const
 
SgObject * clone (CloneMap &cloneMap) const
 
void setAttribute (int attr)
 
void setAttributes (int attrs)
 
int attributes () const
 
bool hasAttribute (int attr) const
 
bool hasAttributes (int attrs) const
 
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, SgUpdateRef update=nullptr)
 
void removeParent (SgObject *parent)
 
int numParents () const
 
bool hasParents () const
 
const_parentIter parentBegin () const
 
const_parentIter parentEnd () const
 
SignalProxy< void(bool on)> sigGraphConnection ()
 
bool hasValidBoundingBoxCache () const
 
void invalidateBoundingBox ()
 
void setBoundingBoxCacheReady () const
 
bool hasUri () const
 
const std::string & uri () const
 
bool hasAbsoluteUri () const
 
const std::string & absoluteUri () const
 
bool hasUriFragment () const
 
const std::string & uriFragment () const
 
void setUriByFilePathAndBaseDirectory (const std::string &filePath, const std::string &baseDirectory)
 
void setUriByFilePathAndCurrentDirectory (const std::string &filePath)
 
void setUri (const std::string &uri, const std::string &absoluteUri)
 
void setUriFragment (const std::string &fragment)
 
void clearUri ()
 
bool isNode () const
 
SgNode * toNode ()
 
bool isGroupNode () const
 
SgGroup * toGroupNode ()
 
bool isTransformNode () const
 
SgTransform * toTransformNode ()
 
- Public Member Functions inherited from cnoid::Referenced
virtual ~Referenced ()
 

Protected Member Functions

virtual Referenced * doClone (CloneMap *cloneMap) const override
 
- Protected Member Functions inherited from cnoid::SgMeshBase
 SgMeshBase ()
 
 SgMeshBase (const SgMeshBase &org, CloneMap *cloneMap=nullptr)
 
 ~SgMeshBase ()
 
- Protected Member Functions inherited from cnoid::SgObject
 SgObject ()
 
 SgObject (const SgObject &org)
 
void notifyUpperNodesOfUpdate (SgUpdate &update)
 
void notifyUpperNodesOfUpdate (SgUpdate &update, bool doInvalidateBoundingBox)
 
- Protected Member Functions inherited from cnoid::Referenced
 Referenced ()
 
 Referenced (const Referenced &)
 
int refCount () const
 

Additional Inherited Members

- Public Types inherited from cnoid::SgObject
enum  Attribute {
  Node = 1 << 0, GroupNode = 1 << 1, TransformNode = 1 << 2, Composite = 1 << 3,
  Geometry = 1 << 4, Appearance = 1 << 5, NodeDecoration = 1 << 6, Marker = 1 << 7,
  Operable = 1 << 8, MaxAttributeBit = 9, GroupAttribute = GroupNode, NodeDecorationGroup = NodeDecoration,
  MarkerAttribute = Marker
}
 
typedef std::set< SgObject * > ParentContainer
 
typedef ParentContainer::iterator parentIter
 
typedef ParentContainer::const_iterator const_parentIter
 
- Static Public Member Functions inherited from cnoid::SgObject
static bool checkNonNodeCloning (const CloneMap &cloneMap)
 
static void setNonNodeCloning (CloneMap &cloneMap, bool on)
 
- Protected Attributes inherited from cnoid::SgMeshBase
BoundingBox bbox
 
SgVertexArrayPtr vertices_
 
SgIndexArray faceVertexIndices_
 
SgNormalArrayPtr normals_
 
SgIndexArray normalIndices_
 
SgColorArrayPtr colors_
 
SgIndexArray colorIndices_
 
SgTexCoordArrayPtr texCoords_
 
SgIndexArray texCoordIndices_
 
float creaseAngle_
 
bool isSolid_
 

Constructor & Destructor Documentation

◆ SgPolygonMesh() [1/2]

SgPolygonMesh::SgPolygonMesh ( )

◆ SgPolygonMesh() [2/2]

SgPolygonMesh::SgPolygonMesh ( const SgPolygonMesh &  org,
CloneMap *  cloneMap = nullptr 
)

Member Function Documentation

◆ doClone()

Referenced * SgPolygonMesh::doClone ( CloneMap *  cloneMap) const
overrideprotectedvirtual

Reimplemented from cnoid::SgObject.

◆ polygonVertices() [1/2]

SgIndexArray& cnoid::SgPolygonMesh::polygonVertices ( )
inline

The array of vertex indices corresponding to polygons. Indices are delimited by index value '-1'. When the actual instance type is SgPolygonMesh, the other index arrays defined in the SgMesh class also have to contain indices in the same way.

◆ polygonVertices() [2/2]

const SgIndexArray& cnoid::SgPolygonMesh::polygonVertices ( ) const
inline

◆ updateBoundingBox()

void SgPolygonMesh::updateBoundingBox ( )
overridevirtual

Reimplemented from cnoid::SgMeshBase.


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