Rumba C++ SDK
maquina::Camera Class Reference

The camera node. More...

#include <Camera.h>

Inheritance diagram for maquina::Camera:
maquina::NodePlugin

Public Member Functions

 Camera (Node *node)
 
Node camera_transform_node () const
 Return the camera transform node. Regarding the camera settings, it can be the camera itself or its parent. More...
 
void set_aim (const Node &aim, bool undo_stack)
 Set the camera aim and up nodes. More...
 
void set_aim (const Node &aim, const Node &up, bool undo_stack)
 Set the camera aim and up nodes. More...
 
void remove_aim (bool undo_stack)
 Remove the camera aim and up. More...
 
std::optional< Nodeaim () const
 Return the camera's aim node. More...
 
std::optional< Nodeup () const
 Return the camera's up node. More...
 
- Public Member Functions inherited from maquina::NodePlugin
 NodePlugin (Node *node)
 
virtual ~NodePlugin ()
 
virtual void on_first_init (bool)
 Perform the one shot initialization tasks for this node. More...
 
virtual void on_delete (bool)
 Prepare the node to be deleted. More...
 
virtual void on_add_to_document ()
 Callback called when the node is added to the document. More...
 
virtual void on_remove_from_document ()
 Callback called when the node is removed from the document. More...
 
virtual void on_input_connection (const Plug &, const Plug &, bool)
 Callback called when an a connection has been done between an output plug and a plug of this node as input. More...
 
virtual void on_output_connection (const Plug &, const Plug &, bool)
 Callback called when an a connection has been done between a plug of this node as output and an input plug. More...
 
virtual void on_input_disconnection (const Plug &, const Plug &)
 Callback called when an a connection has been broken between an output plug and a plug of this node as input. More...
 
virtual void on_output_disconnection (const Plug &, const Plug &)
 Callback called when an a connection has been broken between a plug of this node as output and an input plug. More...
 
virtual void relationship (NodeSet &set) const
 Return the node relationships. More...
 
virtual std::shared_ptr< NodeDelegatenode_delegate () const
 Return a node delegate for this node. More...
 
virtual std::optional< Plugchannel_switch_output () const
 If that not is a channel switch node, return the output channel plug. More...
 
virtual std::vector< Plugchannel_switch_inputs () const
 Return the input channel plugs. More...
 
virtual std::optional< Plugchannel_switch_sub_channel (const std::string_view &sub_channel) const
 Return the plug for the sub channel name if available. More...
 
Node node () const
 Returns the Node interface for this object. More...
 
virtual std::string selection_path () const
 Returns the node delegate path to use to select that node. More...
 

Detailed Description

The camera node.

Constructor & Destructor Documentation

◆ Camera()

maquina::Camera::Camera ( Node node)

Member Function Documentation

◆ aim()

std::optional<Node> maquina::Camera::aim ( ) const

Return the camera's aim node.

◆ camera_transform_node()

Node maquina::Camera::camera_transform_node ( ) const

Return the camera transform node. Regarding the camera settings, it can be the camera itself or its parent.

◆ remove_aim()

void maquina::Camera::remove_aim ( bool  undo_stack)

Remove the camera aim and up.

◆ set_aim() [1/2]

void maquina::Camera::set_aim ( const Node aim,
bool  undo_stack 
)

Set the camera aim and up nodes.

Rig the camera with an AimConstraint node in order for the camera to always look at aim. {std::runtime_error,RuntimeError} if the aim node is not a SceneGraphNode node.

◆ set_aim() [2/2]

void maquina::Camera::set_aim ( const Node aim,
const Node up,
bool  undo_stack 
)

Set the camera aim and up nodes.

Rig the camera with an AimConstraint node in order for the camera to always look at aim and with its up vector pointing to up. {std::runtime_error,RuntimeError} if the aim or the up nodes are not a SceneGraphNode node.

◆ up()

std::optional<Node> maquina::Camera::up ( ) const

Return the camera's up node.


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