struct CCL::ISceneNode3D
Overview
Node in a 3D scene. More…
#include <iscene3d.h> struct ISceneNode3D: public CCL::IUnknown { // enums enum NodeFlags; enum NodeType; // methods virtual NodeType CCL_API getNodeType () const = 0; virtual UIDRef CCL_API getNodeClassID () const = 0; virtual int CCL_API getNodeFlags () const = 0; virtual StringID CCL_API getNodeName () const = 0; virtual void CCL_API setNodeName (StringID name) = 0; virtual void CCL_API setNodeData (VariantRef data) = 0; virtual VariantRef CCL_API getNodeData () const = 0; virtual PointF3DRef CCL_API getPosition () const = 0; virtual tresult CCL_API setPosition (PointF3DRef p) = 0; virtual tresult CCL_API setPositionX (float x) = 0; virtual tresult CCL_API setPositionY (float y) = 0; virtual tresult CCL_API setPositionZ (float z) = 0; virtual float CCL_API getYawAngle () const = 0; virtual tresult CCL_API setYawAngle (float angle) = 0; virtual float CCL_API getPitchAngle () const = 0; virtual tresult CCL_API setPitchAngle (float angle) = 0; virtual float CCL_API getRollAngle () const = 0; virtual tresult CCL_API setRollAngle (float angle) = 0; virtual float CCL_API getScaleX () const = 0; virtual tresult CCL_API setScaleX (float factor) = 0; virtual float CCL_API getScaleY () const = 0; virtual tresult CCL_API setScaleY (float factor) = 0; virtual float CCL_API getScaleZ () const = 0; virtual tresult CCL_API setScaleZ (float factor) = 0; virtual Transform3DRef CCL_API getWorldTransform () const = 0; virtual Transform3DRef CCL_API getInverseWorldTransform () const = 0; virtual void CCL_API setWorldTransform (Transform3DRef transform) = 0; virtual IScene3D*CCL_API getRootNode () = 0; virtual ISceneNode3D*CCL_API getParentNode () = 0; virtual ISceneChildren3D*CCL_API getChildren () = 0; virtual ISceneConstraints3D*CCL_API getConstraints () = 0; virtual tresult CCL_API addAnimation ( StringID propertyId, const IAnimation* animation ) = 0; virtual tresult CCL_API removeAnimation (StringID propertyId) = 0; virtual tresult CCL_API enableHitTesting (tbool state) = 0; virtual tbool CCL_API isHitTestingEnabled () const = 0; virtual ISceneNode3D*CCL_API findIntersectingNode ( Ray3DRef ray, float tolerance = 0.f, int flags = 0 ) const = 0; DECLARE_STRINGID_MEMBER (kName); };
Inherited Members
public: // methods virtual tresult CCL_API queryInterface (UIDRef iid, void** ptr) = 0; virtual unsigned int CCL_API retain () = 0; virtual unsigned int CCL_API release () = 0;
Detailed Documentation
Node in a 3D scene.
Methods
virtual NodeType CCL_API getNodeType () const = 0
Get node type.
virtual UIDRef CCL_API getNodeClassID () const = 0
Get node class identifier (also available via IObject/ITypeInfo).
virtual int CCL_API getNodeFlags () const = 0
Get node flags.
virtual StringID CCL_API getNodeName () const = 0
Get node name.
virtual void CCL_API setNodeName (StringID name) = 0
Set node name.
virtual void CCL_API setNodeData (VariantRef data) = 0
Set associated application data (optional).
virtual VariantRef CCL_API getNodeData () const = 0
Get associated application data.
virtual PointF3DRef CCL_API getPosition () const = 0
Get position in parent space (optional).
virtual tresult CCL_API setPosition (PointF3DRef p) = 0
Set position in parent space (optional).
virtual tresult CCL_API setPositionX (float x) = 0
Set X position in parent space (optional).
virtual tresult CCL_API setPositionY (float y) = 0
Set Y position in parent space (optional).
virtual tresult CCL_API setPositionZ (float z) = 0
Set Z position in parent space (optional).
virtual float CCL_API getYawAngle () const = 0
Get yaw angle (radians) in parent space (optional).
virtual tresult CCL_API setYawAngle (float angle) = 0
Set yaw angle (radians) in parent space (optional).
virtual float CCL_API getPitchAngle () const = 0
Get pitch angle (radians) in parent space (optional).
virtual tresult CCL_API setPitchAngle (float angle) = 0
Set pitch angle (radians) in parent space (optional).
virtual float CCL_API getRollAngle () const = 0
Get roll angle (radians) in parent space (optional).
virtual tresult CCL_API setRollAngle (float angle) = 0
Set roll angle (radians) in parent space (optional).
virtual float CCL_API getScaleX () const = 0
Get scale (x component) in parent space (optional).
virtual tresult CCL_API setScaleX (float factor) = 0
Set scale (x component) in parent space (optional).
virtual float CCL_API getScaleY () const = 0
Get scale (y component) in parent space (optional).
virtual tresult CCL_API setScaleY (float factor) = 0
Set scale (y component) in parent space (optional).
virtual float CCL_API getScaleZ () const = 0
Get scale (z component) in parent space (optional).
virtual tresult CCL_API setScaleZ (float factor) = 0
Set scale (z component) in parent space (optional).
virtual Transform3DRef CCL_API getWorldTransform () const = 0
Get the world transform matrix.
virtual Transform3DRef CCL_API getInverseWorldTransform () const = 0
Get the inverse world transform matrix.
virtual void CCL_API setWorldTransform (Transform3DRef transform) = 0
Set the node’s world transform matrix.
virtual IScene3D*CCL_API getRootNode () = 0
Get scene (root) node.
virtual ISceneNode3D*CCL_API getParentNode () = 0
Get parent node.
virtual ISceneChildren3D*CCL_API getChildren () = 0
Get interface to manage child nodes (optional, can be null).
virtual ISceneConstraints3D*CCL_API getConstraints () = 0
Get interface to manage node constraints.
virtual tresult CCL_API addAnimation ( StringID propertyId, const IAnimation* animation ) = 0
Add animation for node property.
virtual tresult CCL_API removeAnimation (StringID propertyId) = 0
Remove animation for node property.
virtual tresult CCL_API enableHitTesting (tbool state) = 0
Enable hit testing.
virtual tbool CCL_API isHitTestingEnabled () const = 0
Check if hit testing is enabled.
virtual ISceneNode3D*CCL_API findIntersectingNode ( Ray3DRef ray, float tolerance = 0.f, int flags = 0 ) const = 0
Find a node that intersects with a given ray.
Only returns nodes which have hit testing enabled.
DECLARE_STRINGID_MEMBER (kName)
<IUIValue (PointF3D) < float < float < float < float < float < float < float < float < float