0.44.0
|
#include <iNodeVolume.h>
Inherits igor::iNodeRender.
Inherited by igor::iNodeMesh, and igor::iNodeParticleSystem.
Public Member Functions | |
iaVector3d | getCenter () const |
const iaVector3d & | getRelativeCenter () const |
const IGOR_API iaSphered & | getBoundingSphere () const |
void | setBoundingBox (const iAABoxd &bbox) |
const IGOR_API iAABoxd & | getBoundingBox () const |
Public Member Functions inherited from igor::iNodeRender | |
const iaMatrixd & | getWorldMatrix () 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 iaString & | getName () const |
virtual std::vector< iaString > | getInfo (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 () |
Protected Member Functions | |
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 () |
Friends | |
class | iScene |
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 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 |
Node that is a render-able and has a volume therefore relevant for the octree structure
|
protected |
initializes member variables
|
protected |
copy ctor
|
protectedvirtual |
dtor
const iAABoxd & igor::iNodeVolume::getBoundingBox | ( | ) | const |
const iaSphered & igor::iNodeVolume::getBoundingSphere | ( | ) | const |
iaVector3d igor::iNodeVolume::getCenter | ( | ) | const |
const iaVector3d & igor::iNodeVolume::getRelativeCenter | ( | ) | const |
|
overrideprotectedvirtual |
registers to scene
Reimplemented from igor::iNodeRender.
|
overrideprotectedvirtual |
unregisters from scene
Reimplemented from igor::iNodeRender.
|
overrideprotectedvirtual |
called by node visitor update transform
[in,out] | matrix | current transformation matrix |
Reimplemented from igor::iNodeRender.
void igor::iNodeVolume::setBoundingBox | ( | const iAABoxd & | bbox | ) |
sets bounding box
bbox | the bounding box |
|
protected |
updates octree if node is within a scene
|
friend |