igor::iNodeMesh Class Reference

#include <iNodeMesh.h>

Inherits igor::iNodeVolume.

Public Member Functions

iMeshPtr getMesh ()
 
void setMesh (iMeshPtr mesh)
 
iaColor3f getEmissive () const
 
iaColor3f getAmbient () const
 
iaColor3f getSpecular () const
 
iaColor3f getDiffuse () const
 
float32 getShininess () const
 
std::vector< iaStringgetInfo (bool brief=false) const override
 
- Public Member Functions inherited from igor::iNodeVolume
iaVector3d getCenter () const
 
const iaVector3dgetRelativeCenter () const
 
const IGOR_API iaSpheredgetBoundingSphere () const
 
void setBoundingBox (const iAABoxd &bbox)
 
const IGOR_API iAABoxdgetBoundingBox () const
 
- Public Member Functions inherited from igor::iNodeRender
const iaMatrixdgetWorldMatrix () const
 
void setMaterial (const iMaterialPtr &material)
 
iMaterialPtr getMaterial () const
 
void setVisible (bool visible=true)
 
bool isVisible () const
 
virtual void draw ()=0
 
- Public Member Functions inherited from igor::iNode
iNodeKind getKind () const
 
iNodeType getType () const
 
iNodeID getID () const
 
const iaStringgetName () const
 
virtual std::vector< iaStringgetInfo (bool brief=false) const
 
void setName (const iaString &name)
 
void insertNode (iNodePtr node)
 
void insertNodeAsync (iNodePtr node)
 
void setActive (bool active=true)
 
void setActiveAsync (bool active=true)
 
void removeNode (iNodePtr node)
 
void removeNodeAsync (iNodePtr node)
 
bool isChild ()
 
bool isChild (iNodePtr child)
 
bool hasChildren ()
 
const std::vector< iNodePtr > & getChildren () const
 
void getAllChildren (std::vector< iNodePtr > &children) const
 
iNodePtr getChild (const iaString &name)
 
iNodePtr getChild (iNodeID id)
 
const std::vector< iNodePtr > & getInactiveChildren () const
 
iNodePtr getParent ()
 
iScenePtr getScene ()
 
bool isTransformationDirty ()
 
void setTransformationDirty (bool dirty=true)
 
void calcWorldTransformation (iaMatrixd &matrix)
 
bool isActive () const
 
iTransformationChangeEvent & getTransformationChangeEvent ()
 

Friends

class iNodeManager
 
class iNodeModel
 
class iModelDataIOOMPF
 

Additional Inherited Members

- Static Public Member Functions inherited from igor::iNode
static iaString getKindName (iNodeKind kind)
 
static iaString getTypeName (iNodeType nodeType)
 
- Static Public Attributes inherited from igor::iNode
static const iNodeID INVALID_NODE_ID = IGOR_INVALID_ID
 
- Protected Member Functions inherited from igor::iNodeVolume
virtual IGOR_API void onUpdateTransform (iaMatrixd &matrix) override
 
virtual IGOR_API void onPreSetScene () override
 
virtual IGOR_API void onPostSetScene () override
 
void updateTree ()
 
 iNodeVolume ()
 
 iNodeVolume (iNodeVolume *node)
 
virtual ~iNodeVolume ()
 
- Protected Member Functions inherited from igor::iNodeRender
virtual void onUpdateTransform (iaMatrixd &matrix) override
 
virtual void onPreSetScene () override
 
virtual void onPostSetScene () override
 
 iNodeRender ()
 
 iNodeRender (iNodeRender *node)
 
virtual ~iNodeRender ()
 
- Protected Member Functions inherited from igor::iNode
void setTransformationDirtyDown ()
 
void setTransformationDirtyUp ()
 
void setDataDirty ()
 
bool isDataDirty ()
 
void setParent (iNodePtr parent)
 
void setScene (iScenePtr scene)
 
virtual void onUpdateTransform (iaMatrixd &matrix)
 
virtual void onPreSetScene ()
 
virtual void onPostSetScene ()
 
virtual bool onUpdateData ()
 
virtual void onPostCopyLink (std::map< iNodeID, iNodeID > &nodeIDMap)
 
 iNode ()
 
 iNode (iNodePtr node)
 
virtual ~iNode ()
 
- Protected Attributes inherited from igor::iNodeRender
iaMatrixd _worldMatrix
 
bool _visible = true
 
- Protected Attributes inherited from igor::iNode
bool _active = true
 
iNodeType _nodeType = iNodeType::iNode
 
iNodeKind _nodeKind = iNodeKind::Node
 
iaString _name = L"iNode"
 
bool _transformationDirty = true
 
iScenePtr _scene = nullptr
 
iNodePtr _parent = nullptr
 
std::vector< iNodePtr_children
 
std::vector< iNodePtr_inactiveChildren
 
iTransformationChangeEvent _transformationChangeEvent
 

Detailed Description

represents a mesh within the scene

Member Function Documentation

◆ getAmbient()

iaColor3f igor::iNodeMesh::getAmbient ( ) const
Returns
ambient color

◆ getDiffuse()

iaColor3f igor::iNodeMesh::getDiffuse ( ) const
Returns
diffuse color

◆ getEmissive()

iaColor3f igor::iNodeMesh::getEmissive ( ) const
Returns
emissive color

◆ getInfo()

std::vector< iaString > igor::iNodeMesh::getInfo ( bool  brief = false) const
overridevirtual

returns multiple lines of information about this node

each entry in vector is one line of information

Returns
strings with the nodes information
Parameters
briefif true only one brief line of information will be returned

Reimplemented from igor::iNode.

◆ getMesh()

iMeshPtr igor::iNodeMesh::getMesh ( )
Returns
shared pointer to mesh

◆ getShininess()

float32 igor::iNodeMesh::getShininess ( ) const
Returns
shininess

◆ getSpecular()

iaColor3f igor::iNodeMesh::getSpecular ( ) const
Returns
specular color

◆ setMesh()

void igor::iNodeMesh::setMesh ( iMeshPtr  mesh)

sets mesh for mesh node

Parameters
meshshared pointer to mesh

Friends And Related Function Documentation

◆ iModelDataIOOMPF

friend class iModelDataIOOMPF
friend

◆ iNodeManager

friend class iNodeManager
friend

◆ iNodeModel

friend class iNodeModel
friend

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