|
Kanzi Graphics Engine
|
Transformed object node. More...
#include <core/util/collection/kzc_dynamic_array.h>#include <core/util/math/kzc_matrix4x4.h>#include <core/util/math/kzc_vector2.h>#include <system/debug/kzs_error.h>#include <system/kzs_header.h>Functions | |
| kzsError | kzuTransformedObjectNodeCreate (const struct KzcMemoryManager *memoryManager, struct KzuObjectNode *object, const struct KzcMatrix4x4 *parentTransform, kzBool parentTransformChanged, kzBool visible, kzBool instanciated, kzBool *out_transformChanged, struct KzuTransformedObjectNode **out_object) |
| Creates new Transformed object node from regular scene graph object. More... | |
| kzsError | kzuTransformedObjectNodeCreateFromLayer (const struct KzcMemoryManager *memoryManager, struct KzuObjectNode *objectNode, kzBool visible, struct KzuTransformedObjectNode **out_transformedObjectNode) |
| Creates new transformed object node from a layer. More... | |
| kzsError | kzuTransformedObjectNodeRefreshChildren (const struct KzuTransformedObjectNode *transformedObjectNode) |
| Refreshes transformed object node's children to contain matrices from new matrix values in scene graph. More... | |
| struct KzuTransformedObjectNode * | kzuTransformedObjectNodeGetParent (const struct KzuTransformedObjectNode *transformedObjectNode) |
| Adds a child transformed object for parent. More... | |
| kzsError | kzuTransformedObjectNodeAddChildNode (struct KzuTransformedObjectNode *parentObject, struct KzuTransformedObjectNode *childNode) |
| Adds a child transformed object for parent. More... | |
| kzsError | kzuTransformedObjectNodeRemove (struct KzuTransformedObjectNode *parentObject, const struct KzuTransformedObjectNode *destObject) |
| Removes transformed object node from parent and moves its children upper in hierarchy. More... | |
| kzsError | kzuTransformedObjectNodeCopyWithoutChildren (const struct KzcMemoryManager *memoryManager, const struct KzuTransformedObjectNode *sourceObject, struct KzuTransformedObjectNode **out_object) |
| Copies a object without children to the new node. More... | |
| void | kzuTransformedObjectNodeSetInstanciated (struct KzuTransformedObjectNode *node, struct KzuTransformedObjectNode *instanciatorNode) |
| Sets transformed object node instanciated from given node. More... | |
| struct KzuTransformedObjectNode * | kzuTransformedObjectNodeGetInstanciatorNode (const struct KzuTransformedObjectNode *node) |
| Gets instanciator from given node. More... | |
| kzsError | kzuTransformedObjectTreeToDynamicArray (const struct KzcMemoryManager *memoryManager, const struct KzuTransformedObjectNode *rootNode, struct KzcDynamicArray **out_dynamicArray) |
| Creates an array from tree. More... | |
| struct KzcDynamicArrayIterator | kzuTransformedObjectNodeGetChildren (const struct KzuTransformedObjectNode *transformedObjectNode) |
| Returns a children of transformed object node as iterator (list of KzuTransformedObjectNode:s). More... | |
| kzUint | kzuTransformedObjectNodeGetChildCount (const struct KzuTransformedObjectNode *transformedObjectNode) |
| Returns the child count. More... | |
| struct KzuTransformedObjectNode * | kzuTransformedObjectNodeGetChildAtIndex (const struct KzuTransformedObjectNode *transformedObjectNode, kzUint index) |
| Returns a child from given index from object node. More... | |
| struct KzuObjectNode * | kzuTransformedObjectNodeGetObjectNode (const struct KzuTransformedObjectNode *transformedObjectNode) |
| Returns a KzuObjectNode owned by transformed object node. More... | |
| struct KzuTransformedObjectNode * | kzuTransformedObjectNodeFindChildObjectNode (const struct KzuTransformedObjectNode *transformedObjectNode, const struct KzuObjectNode *objectToFind) |
| Finds transformed object node from destination object node's direct children. More... | |
| struct KzuTransformedObjectNode * | kzuTransformedObjectNodeFindChildObjectNodeFromDescendants (const struct KzuTransformedObjectNode *transformedObjectNode, const struct KzuObjectNode *objectToFind) |
| Finds transformed object node from destination object node's direct descendants. More... | |
| struct KzuTransformedObjectNode * | kzuTransformedObjectNodeFindChildTransformedObjectNodeFromDescendants (const struct KzuTransformedObjectNode *transformedObjectNode, const struct KzuTransformedObjectNode *transformedObjectNodeToFind) |
| Finds given transformed object node from destination transformed object node's descendants. More... | |
| kzsError | kzuTransformedObjectNodeGetBoundingVolumeUnionWorld (const struct KzuTransformedObjectNode *transformedObjectNode, struct KzcVolume *out_volume) |
| Gets bounding volume union from transformed object node and its children. More... | |
| kzsError | kzuTransformedObjectNodeGetBoundingVolumeWorld (const struct KzuTransformedObjectNode *transformedObjectNode, struct KzcVolume *out_volume) |
| Gets bounding volume union from transformed object node without children taken into account. More... | |
| void | kzuTransformedObjectNodeSetMatrix (struct KzuTransformedObjectNode *transformedObjectNode, const struct KzcMatrix4x4 *matrix) |
| Sets the world matrix for transformed object node. More... | |
| struct KzcMatrix4x4 | kzuTransformedObjectNodeGetMatrix (const struct KzuTransformedObjectNode *transformedObjectNode) |
| Returns the world matrix of transformed object node. More... | |
| void | kzuTransformedObjectNodeGetPosition (const struct KzuTransformedObjectNode *transformedObjectNode, struct KzcVector3 *out_position) |
| Returns a position of this transformed object node. More... | |
| struct KzuTransformedObjectNode * | kzuTransformedObjectListFindObject (const struct KzcDynamicArray *objectList, const struct KzuObjectNode *objectToFind) |
| Finds transformed object node from object list. More... | |
| kzBool | kzuTransformedObjectNodeIsVisible (const struct KzuTransformedObjectNode *transformedObjectNode) |
| Returns visibility of a transformed object node. More... | |
Transformed object node.
KzuTransformedObjectNode is created from a scene graph object node (KzuObjectNode). It contains all the same characteristics as the KzuObjectNode, as the transformed object node keeps a pointer to the KzuObjectNode. The world transformation matrix returned by kzuTransformedObjectNodeGetMatrix() is calculated on-demand from the KzuObjectNode's KZU_PROPERTY_TYPE_TRANSFORMATION, layout and KZU_PROPERTY_TYPE_RENDER_TRANSFORMATION matrix when the transformed object node is created and whenever kzuTransformedObjectNodeRefreshChildren() is called for its parent. The calculated matrix is also stored to the referenced KzuObjectNode and can be obtained by calling kzuObjectNodeGetFinalTransformation().
Copyright 2008-2019 by Rightware. All rights reserved.
| kzsError kzuTransformedObjectNodeCreate | ( | const struct KzcMemoryManager * | memoryManager, |
| struct KzuObjectNode * | object, | ||
| const struct KzcMatrix4x4 * | parentTransform, | ||
| kzBool | parentTransformChanged, | ||
| kzBool | visible, | ||
| kzBool | instanciated, | ||
| kzBool * | out_transformChanged, | ||
| struct KzuTransformedObjectNode ** | out_object | ||
| ) |
Creates new Transformed object node from regular scene graph object.
Saves the reference to original scene graph object and copies the matrix data.
| kzsError kzuTransformedObjectNodeCreateFromLayer | ( | const struct KzcMemoryManager * | memoryManager, |
| struct KzuObjectNode * | objectNode, | ||
| kzBool | visible, | ||
| struct KzuTransformedObjectNode ** | out_transformedObjectNode | ||
| ) |
Creates new transformed object node from a layer.
| kzsError kzuTransformedObjectNodeRefreshChildren | ( | const struct KzuTransformedObjectNode * | transformedObjectNode) |
Refreshes transformed object node's children to contain matrices from new matrix values in scene graph.
| struct KzuTransformedObjectNode* kzuTransformedObjectNodeGetParent | ( | const struct KzuTransformedObjectNode * | transformedObjectNode) |
Adds a child transformed object for parent.
| kzsError kzuTransformedObjectNodeAddChildNode | ( | struct KzuTransformedObjectNode * | parentObject, |
| struct KzuTransformedObjectNode * | childNode | ||
| ) |
Adds a child transformed object for parent.
| kzsError kzuTransformedObjectNodeRemove | ( | struct KzuTransformedObjectNode * | parentObject, |
| const struct KzuTransformedObjectNode * | destObject | ||
| ) |
Removes transformed object node from parent and moves its children upper in hierarchy.
| kzsError kzuTransformedObjectNodeCopyWithoutChildren | ( | const struct KzcMemoryManager * | memoryManager, |
| const struct KzuTransformedObjectNode * | sourceObject, | ||
| struct KzuTransformedObjectNode ** | out_object | ||
| ) |
Copies a object without children to the new node.
| void kzuTransformedObjectNodeSetInstanciated | ( | struct KzuTransformedObjectNode * | node, |
| struct KzuTransformedObjectNode * | instanciatorNode | ||
| ) |
Sets transformed object node instanciated from given node.
| struct KzuTransformedObjectNode* kzuTransformedObjectNodeGetInstanciatorNode | ( | const struct KzuTransformedObjectNode * | node) |
Gets instanciator from given node.
| kzsError kzuTransformedObjectTreeToDynamicArray | ( | const struct KzcMemoryManager * | memoryManager, |
| const struct KzuTransformedObjectNode * | rootNode, | ||
| struct KzcDynamicArray ** | out_dynamicArray | ||
| ) |
Creates an array from tree.
| struct KzcDynamicArrayIterator kzuTransformedObjectNodeGetChildren | ( | const struct KzuTransformedObjectNode * | transformedObjectNode) |
Returns a children of transformed object node as iterator (list of KzuTransformedObjectNode:s).
| kzUint kzuTransformedObjectNodeGetChildCount | ( | const struct KzuTransformedObjectNode * | transformedObjectNode) |
Returns the child count.
| struct KzuTransformedObjectNode* kzuTransformedObjectNodeGetChildAtIndex | ( | const struct KzuTransformedObjectNode * | transformedObjectNode, |
| kzUint | index | ||
| ) |
Returns a child from given index from object node.
| struct KzuObjectNode* kzuTransformedObjectNodeGetObjectNode | ( | const struct KzuTransformedObjectNode * | transformedObjectNode) |
Returns a KzuObjectNode owned by transformed object node.
| struct KzuTransformedObjectNode* kzuTransformedObjectNodeFindChildObjectNode | ( | const struct KzuTransformedObjectNode * | transformedObjectNode, |
| const struct KzuObjectNode * | objectToFind | ||
| ) |
Finds transformed object node from destination object node's direct children.
NULL if nothing was found.
| struct KzuTransformedObjectNode* kzuTransformedObjectNodeFindChildObjectNodeFromDescendants | ( | const struct KzuTransformedObjectNode * | transformedObjectNode, |
| const struct KzuObjectNode * | objectToFind | ||
| ) |
Finds transformed object node from destination object node's direct descendants.
NULL if nothing was found.
| struct KzuTransformedObjectNode* kzuTransformedObjectNodeFindChildTransformedObjectNodeFromDescendants | ( | const struct KzuTransformedObjectNode * | transformedObjectNode, |
| const struct KzuTransformedObjectNode * | transformedObjectNodeToFind | ||
| ) |
Finds given transformed object node from destination transformed object node's descendants.
Returns KZ_NULL if nothing was found.
| kzsError kzuTransformedObjectNodeGetBoundingVolumeUnionWorld | ( | const struct KzuTransformedObjectNode * | transformedObjectNode, |
| struct KzcVolume * | out_volume | ||
| ) |
Gets bounding volume union from transformed object node and its children.
| kzsError kzuTransformedObjectNodeGetBoundingVolumeWorld | ( | const struct KzuTransformedObjectNode * | transformedObjectNode, |
| struct KzcVolume * | out_volume | ||
| ) |
Gets bounding volume union from transformed object node without children taken into account.
| void kzuTransformedObjectNodeSetMatrix | ( | struct KzuTransformedObjectNode * | transformedObjectNode, |
| const struct KzcMatrix4x4 * | matrix | ||
| ) |
Sets the world matrix for transformed object node.
| struct KzcMatrix4x4 kzuTransformedObjectNodeGetMatrix | ( | const struct KzuTransformedObjectNode * | transformedObjectNode) |
Returns the world matrix of transformed object node.
| void kzuTransformedObjectNodeGetPosition | ( | const struct KzuTransformedObjectNode * | transformedObjectNode, |
| struct KzcVector3 * | out_position | ||
| ) |
Returns a position of this transformed object node.
| struct KzuTransformedObjectNode* kzuTransformedObjectListFindObject | ( | const struct KzcDynamicArray * | objectList, |
| const struct KzuObjectNode * | objectToFind | ||
| ) |
Finds transformed object node from object list.
| kzBool kzuTransformedObjectNodeIsVisible | ( | const struct KzuTransformedObjectNode * | transformedObjectNode) |
Returns visibility of a transformed object node.