Inheritance Graph
graph BT
Node
Node --> AttributeProvider
Node --> ReferenceCounter
AbstractCameraNode --> Node
FakeInstanceNode --> Node
GenericMetaNode --> Node
GeometryNode --> Node
GroupNode --> Node
LightNode --> Node
ParticleSystemNode --> Node
Waypoint --> Node
click Node "classMinSG_1_1Node"
click AttributeProvider "classUtil_1_1AttributeProvider"
click ReferenceCounter "classUtil_1_1ReferenceCounter"
click AbstractCameraNode "classMinSG_1_1AbstractCameraNode"
click FakeInstanceNode "classMinSG_1_1FakeInstanceNode"
click GenericMetaNode "classMinSG_1_1GenericMetaNode"
click GeometryNode "classMinSG_1_1GeometryNode"
click GroupNode "classMinSG_1_1GroupNode"
click LightNode "classMinSG_1_1LightNode"
click ParticleSystemNode "classMinSG_1_1ParticleSystemNode"
click Waypoint "classMinSG_1_1Waypoint"
Description
Base class of all nodes of the scene-graph.
[ Node ]
Note: ( |
> AttributeProvider) A node’s attribute’s key influences its handling. |
See also: NodeAttributeModifier.h for details.
Classes
Main
Parent node
Node flags
Rendering layers
Status flags
Bounding Boxes
Display
Instances
States
|
|
|
|
Geometry::SRT & |
accessSRT() const |
|
|
float |
getRelScaling() const |
|
|
Geometry::Vec3 |
getRelOrigin() const |
|
|
const Geometry::Matrix4x4 & |
getRelTransformationMatrix() const |
|
|
const Geometry::Matrix4x4 * |
getRelTransformationMatrixPtr() const |
|
|
const Geometry::SRT & |
getRelTransformationSRT() const |
|
|
Geometry::Vec3 |
getWorldOrigin() const |
|
|
const Geometry::Matrix4x4 & |
getWorldTransformationMatrix() const |
|
|
const Geometry::Matrix4x4 * |
getWorldTransformationMatrixPtr() const |
|
|
Geometry::SRT |
getWorldTransformationSRT() const |
|
|
Geometry::Matrix4x4 |
getWorldToLocalMatrix() const Returns the inverse of getWorldTransformationMatrix() |
|
|
bool |
hasRelTransformation() const |
|
|
bool |
hasRelTransformationSRT() const |
|
|
void |
moveRel(const Geometry::Vec3 & v) |
|
|
void |
moveLocal(const Geometry::Vec3 & v) |
|
|
void |
resetRelTransformation() Remove all relative transformations. |
|
|
void |
resetRelRotation() |
|
|
void |
rotateLocal(const Geometry::Angle & angle, const Geometry::Vec3 & v) Rotate around a local direction around the object’s local origin (0,0,0). |
|
|
void |
rotateRel(const Geometry::Angle & angle, const Geometry::Vec3 & v) Rotate around a direction in the parent’s coordinate system around the object’s local origin (0,0,0). |
|
|
void |
scale(float f) |
|
|
void |
setRelScaling(float f) |
|
|
void |
setRelOrigin(const Geometry::Vec3 & v) |
|
|
void |
setRelRotation(const Geometry::Angle & angle, const Geometry::Vec3 & v) |
|
|
void |
setRelRotation(const Geometry::Vec3 & dir, const Geometry::Vec3 & up) |
|
|
void |
setRelTransformation(const Geometry::Matrix4x4 & m) |
|
|
void |
setRelTransformation(const Geometry::SRT & srt) |
|
|
void |
setWorldOrigin(const Geometry::Vec3 & v) |
|
|
void |
setWorldTransformation(const Geometry::SRT & worldSRT) |
|
|
const Geometry::Matrix4x4 & |
getMatrix() const |
|
|
Geometry::Vec3 |
getRelPosition() const |
|
|
float |
getScale() const |
|
|
const Geometry::SRT & |
getSRT() const |
|
|
const Geometry::Matrix4x4 & |
getWorldMatrix() const |
|
|
Geometry::Vec3 |
getWorldPosition() const |
|
|
bool |
hasMatrix() const |
|
|
bool |
hasSRT() const |
|
|
void |
reset() |
|
|
void |
rotateLocal_deg(float deg, const Geometry::Vec3 & v) |
|
|
void |
rotateLocal_rad(float rad, const Geometry::Vec3 & v) |
|
|
void |
rotateRel_deg(float deg, const Geometry::Vec3 & v) |
|
|
void |
rotateRel_rad(float rad, const Geometry::Vec3 & v) |
|
|
void |
setScale(float f) |
|
|
void |
setMatrix(const Geometry::Matrix4x4 & m) |
|
|
void |
setSRT(const Geometry::SRT & newSRT) |
|
|
void |
setRelPosition(const Geometry::Vec3 & v) |
|
|
void |
setWorldPosition(const Geometry::Vec3 & v) |
|
|
void |
setRelRotation_deg(float deg, const Geometry::Vec3 & v) |
|
|
void |
setRelRotation_rad(float rad, const Geometry::Vec3 & v) |
Observation
Traversal
Documentation
function
MinSG::Node::Node
Defined in MinSG/Core/Nodes/Node.h:67
function
MinSG::Node::Node
Defined in MinSG/Core/Nodes/Node.h:68
function
MinSG::Node::~Node
Defined in MinSG/Core/Nodes/Node.h:71
function
MinSG::Node::clone
Defined in MinSG/Core/Nodes/Node.h:72
function
MinSG::Node::destroy
Make sure to keep a Reference to the node or call MinSG::destroy(node)
Defined in MinSG/Core/Nodes/Node.h:75
function
MinSG::Node::getParent
Defined in MinSG/Core/Nodes/Node.h:99
function
MinSG::Node::getRootNode
Defined in MinSG/Core/Nodes/Node.h:100
function
MinSG::Node::hasParent
Defined in MinSG/Core/Nodes/Node.h:101
function
MinSG::Node::addToParent
Defined in MinSG/Core/Nodes/Node.h:103
function
MinSG::Node::removeFromParent
Defined in MinSG/Core/Nodes/Node.h:104
function
MinSG::Node::_setParent
Set the node’s parent without removing it from its old one or informing the new parent.
Note: Use only if you really know what you are doing!!! Normally, you should use node.addToParent( newParent );
Defined in MinSG/Core/Nodes/Node.h:108
function
MinSG::Node::isClosed
Defined in MinSG/Core/Nodes/Node.h:133
function
MinSG::Node::setClosed
Defined in MinSG/Core/Nodes/Node.h:134
function
MinSG::Node::isActive
Defined in MinSG/Core/Nodes/Node.h:135
function
MinSG::Node::activate
Defined in MinSG/Core/Nodes/Node.h:136
function
MinSG::Node::deactivate
Defined in MinSG/Core/Nodes/Node.h:137
function
MinSG::Node::isTempNode
Defined in MinSG/Core/Nodes/Node.h:138
function
MinSG::Node::setTempNode
Defined in MinSG/Core/Nodes/Node.h:139
function
MinSG::Node::getRenderingLayers
Defined in MinSG/Core/Nodes/Node.h:152
function
MinSG::Node::setRenderingLayers
Defined in MinSG/Core/Nodes/Node.h:153
function
MinSG::Node::testRenderingLayer
Defined in MinSG/Core/Nodes/Node.h:154
function
MinSG::Node::isDestroyed
Defined in MinSG/Core/Nodes/Node.h:201
function
MinSG::Node::worldBBChanged
Call whenever the (world) bounding box may have changed. E.g. when the node is moved, a child is added or removed or a mesh is added or changed. The method invalidates the worldBB and traverses the tree up invalidating all worldBBs and compoundBBs (until a node has a fixed bb).
Defined in MinSG/Core/Nodes/Node.h:216
function
MinSG::Node::getBB
Note: the bounding box is in local coordinates
Defined in MinSG/Core/Nodes/Node.h:219
function
MinSG::Node::setFixedBB
Defined in MinSG/Core/Nodes/Node.h:221
function
MinSG::Node::hasFixedBB
Defined in MinSG/Core/Nodes/Node.h:222
function
MinSG::Node::removeFixedBB
Defined in MinSG/Core/Nodes/Node.h:223
function
MinSG::Node::getWorldBB
Note: Don’t store the resulting reference, but make a copy for storing: The box may change when the Node is transformed. It may even get deleted when the Node ‘s transformation is reset.
Defined in MinSG/Core/Nodes/Node.h:226
function
MinSG::Node::doDisplay
o Render the node. All matrix operations and states must be applied when called. This function is internally called by the default to display(…) method.
Defined in MinSG/Core/Nodes/Node.h:244
function
MinSG::Node::display
Render the node.
Note: calls doDisplay(….) internally
Defined in MinSG/Core/Nodes/Node.h:238
function
MinSG::Node::getMemoryUsage
Get the amount of memory that is required to store this node.
Returns
Amount of memory in bytes
Defined in MinSG/Core/Nodes/Node.h:257
function
MinSG::Node::getPrototype
If the node is an instance, its prototype is returned; nullptr otherwise.
Defined in MinSG/Core/Nodes/Node.h:275
function
MinSG::Node::findAttribute
Returns the node’s attribute with the given name, if it is available; otherwise, if the node’s prototype is available and has the attribute, it is taken from there.
Defined in MinSG/Core/Nodes/Node.h:279
function
MinSG::Node::isInstance
True iff the node is an instance of another node.
See also: getPrototype()
Defined in MinSG/Core/Nodes/Node.h:282
function
MinSG::Node::_setPrototype
(internal) Should only be called if you really know what you are doing! if prototype is nullptr, the STATUS_IS_INSTANCE flag is removed (otherwise set).
Defined in MinSG/Core/Nodes/Node.h:286
function
MinSG::Node::createInstance
Create a clone of the given subtree. Every new node is marked as instance of the corresponding node in the source tree.
-
Attributes are not cloned (except “(forceClone)_“-attributes), but can be accessed using findAttribute(…)
-
If a node in the source tree is already an instance, the node is cloned (i.e. the new node points to the same prototype as the given node; no instances of instances).
Defined in MinSG/Core/Nodes/Node.h:272
typedef
MinSG::Node::stateList_t
Attached states and their current status.
Defined in MinSG/Core/Nodes/Node.h:297
function
MinSG::Node::hasStates
Defined in MinSG/Core/Nodes/Node.h:299
function
MinSG::Node::addState
Defined in MinSG/Core/Nodes/Node.h:300
function
MinSG::Node::removeState
Defined in MinSG/Core/Nodes/Node.h:301
function
MinSG::Node::removeStates
Defined in MinSG/Core/Nodes/Node.h:302
function
MinSG::Node::getStateListPtr
Defined in MinSG/Core/Nodes/Node.h:303
function
MinSG::Node::getStates
Defined in MinSG/Core/Nodes/Node.h:304
function
MinSG::Node::accessSRT
Defined in MinSG/Core/Nodes/Node.h:335
function
MinSG::Node::getRelScaling
Defined in MinSG/Core/Nodes/Node.h:338
function
MinSG::Node::getRelOrigin
Defined in MinSG/Core/Nodes/Node.h:339
function
MinSG::Node::getRelTransformationMatrix
Defined in MinSG/Core/Nodes/Node.h:340
function
MinSG::Node::getRelTransformationMatrixPtr
Defined in MinSG/Core/Nodes/Node.h:341
function
MinSG::Node::getRelTransformationSRT
Defined in MinSG/Core/Nodes/Node.h:342
function
MinSG::Node::getWorldOrigin
Defined in MinSG/Core/Nodes/Node.h:343
function
MinSG::Node::getWorldTransformationMatrix
Transforms from local to world coordinate system.
Note: (internal) the STATUS_WORLD_MATRIX_VALID is set to true by this function
Defined in MinSG/Core/Nodes/Node.h:347
function
MinSG::Node::getWorldTransformationMatrixPtr
(internal) Return the pointer to the current world matrix. If the node is transformed globally and no world matrix has yet been created, a new one is calculated. If the node is not transformed, nullptr may be returned.
Note: (internal) the STATUS_WORLD_MATRIX_VALID is set to true by this function
Defined in MinSG/Core/Nodes/Node.h:352
function
MinSG::Node::getWorldTransformationSRT
Defined in MinSG/Core/Nodes/Node.h:353
function
MinSG::Node::getWorldToLocalMatrix
Returns the inverse of getWorldTransformationMatrix()
Defined in MinSG/Core/Nodes/Node.h:356
function
MinSG::Node::hasRelTransformation
Defined in MinSG/Core/Nodes/Node.h:358
function
MinSG::Node::hasRelTransformationSRT
Defined in MinSG/Core/Nodes/Node.h:359
function
MinSG::Node::moveRel
Defined in MinSG/Core/Nodes/Node.h:360
function
MinSG::Node::moveLocal
Defined in MinSG/Core/Nodes/Node.h:361
function
MinSG::Node::resetRelTransformation
Remove all relative transformations.
Defined in MinSG/Core/Nodes/Node.h:364
function
MinSG::Node::resetRelRotation
Defined in MinSG/Core/Nodes/Node.h:365
function
MinSG::Node::rotateLocal
Rotate around a local direction around the object’s local origin (0,0,0).
Defined in MinSG/Core/Nodes/Node.h:368
function
MinSG::Node::rotateRel
Rotate around a direction in the parent’s coordinate system around the object’s local origin (0,0,0).
Defined in MinSG/Core/Nodes/Node.h:371
function
MinSG::Node::scale
Defined in MinSG/Core/Nodes/Node.h:372
function
MinSG::Node::setRelScaling
Defined in MinSG/Core/Nodes/Node.h:373
function
MinSG::Node::setRelOrigin
Defined in MinSG/Core/Nodes/Node.h:374
function
MinSG::Node::setRelRotation
Defined in MinSG/Core/Nodes/Node.h:375
function
MinSG::Node::setRelRotation
Defined in MinSG/Core/Nodes/Node.h:380
function
MinSG::Node::setRelTransformation
Defined in MinSG/Core/Nodes/Node.h:382
function
MinSG::Node::setRelTransformation
Defined in MinSG/Core/Nodes/Node.h:383
function
MinSG::Node::setWorldOrigin
Defined in MinSG/Core/Nodes/Node.h:384
function
MinSG::Node::setWorldTransformation
Defined in MinSG/Core/Nodes/Node.h:385
function
MinSG::Node::getMatrix
Defined in MinSG/Core/Nodes/Node.h:388
function
MinSG::Node::getRelPosition
Defined in MinSG/Core/Nodes/Node.h:389
function
MinSG::Node::getScale
Defined in MinSG/Core/Nodes/Node.h:390
function
MinSG::Node::getSRT
Defined in MinSG/Core/Nodes/Node.h:391
function
MinSG::Node::getWorldMatrix
Defined in MinSG/Core/Nodes/Node.h:392
function
MinSG::Node::getWorldPosition
Defined in MinSG/Core/Nodes/Node.h:393
function
MinSG::Node::hasMatrix
Defined in MinSG/Core/Nodes/Node.h:394
function
MinSG::Node::hasSRT
Defined in MinSG/Core/Nodes/Node.h:395
function
MinSG::Node::reset
Defined in MinSG/Core/Nodes/Node.h:396
function
MinSG::Node::rotateLocal_deg
Defined in MinSG/Core/Nodes/Node.h:397
function
MinSG::Node::rotateLocal_rad
Defined in MinSG/Core/Nodes/Node.h:398
function
MinSG::Node::rotateRel_deg
Defined in MinSG/Core/Nodes/Node.h:399
function
MinSG::Node::rotateRel_rad
Defined in MinSG/Core/Nodes/Node.h:400
function
MinSG::Node::setScale
Defined in MinSG/Core/Nodes/Node.h:401
function
MinSG::Node::setMatrix
Defined in MinSG/Core/Nodes/Node.h:402
function
MinSG::Node::setSRT
Defined in MinSG/Core/Nodes/Node.h:403
function
MinSG::Node::setRelPosition
Defined in MinSG/Core/Nodes/Node.h:404
function
MinSG::Node::setWorldPosition
Defined in MinSG/Core/Nodes/Node.h:405
function
MinSG::Node::setRelRotation_deg
Defined in MinSG/Core/Nodes/Node.h:406
function
MinSG::Node::setRelRotation_rad
Defined in MinSG/Core/Nodes/Node.h:407
typedef
MinSG::Node::transformationObserverFunc
Defined in MinSG/Core/Nodes/Node.h:431
typedef
MinSG::Node::nodeAddedObserverFunc
Defined in MinSG/Core/Nodes/Node.h:432
typedef
MinSG::Node::nodeRemovedObserverFunc
Defined in MinSG/Core/Nodes/Node.h:433
function
MinSG::Node::transformationChanged
Inform the parent node and potentially this node that the transformation of this node has changed. This has to be called by all member functions that influence the transformation of this node. If [isTransformationObserved()](classMinSG_1_1Node#classMinSG_1_1Node_1ac50c064ea5a31d0490c816b38a7d3bc1) == true
, all registered transformation observers (at this node or in the nodes up to the root) are notified.
Defined in MinSG/Core/Nodes/Node.h:423
function
MinSG::Node::informNodeAddedObservers
(internal) Called by GroupNode::addNode(…)
Defined in MinSG/Core/Nodes/Node.h:425
function
MinSG::Node::informNodeRemovedObservers
(internal) Called by GroupNode::removeNode(…)
Defined in MinSG/Core/Nodes/Node.h:427
function
MinSG::Node::isTransformationObserved
Defined in MinSG/Core/Nodes/Node.h:429
function
MinSG::Node::addTransformationObserver
Register a function that is called whenever an observed node in the subtree is transformed.
Defined in MinSG/Core/Nodes/Node.h:436
function
MinSG::Node::addNodeAddedObserver
Register a function that is called whenever a node is added somewhere in the subtree.
Defined in MinSG/Core/Nodes/Node.h:438
function
MinSG::Node::addNodeRemovedObserver
Register a function that is called whenever a node is removed somewhere in the subtree.
Defined in MinSG/Core/Nodes/Node.h:440
function
MinSG::Node::clearTransformationObservers
Remove all transformation observer functions.
Defined in MinSG/Core/Nodes/Node.h:443
function
MinSG::Node::clearNodeAddedObservers
Remove all nodeAdded observer functions.
Defined in MinSG/Core/Nodes/Node.h:445
function
MinSG::Node::clearNodeRemovedObservers
Remove all nodeAdded observer functions.
Defined in MinSG/Core/Nodes/Node.h:447
function
MinSG::Node::traverse
o
Defined in MinSG/Core/Nodes/Node.h:458