|
Rumba C++ SDK
|
This version of the SDK is unstable, i-e, it may change with no warning. More...
Classes | |
| class | AddCurveAction |
| class | AnimCurve |
| An animation curve. More... | |
| class | AnimCurveFloat |
| class | AnimLayer |
| class | Array |
| An array of values. More... | |
| class | BaseLayer |
| class | BrushPlugin |
| class | BrushSculptPlugin |
| Base class for the sculpt brush plug-ins. More... | |
| class | Buffer |
| A writable buffer for basic types like floats, integers, Imath::V3f, Imath::M44f.. More... | |
| class | BufferAllocator |
| Allocator to use with std::vector. Allocates memory first in the user provided buffer and then using the standard allocator. More... | |
| class | BufferConst |
| A readonly buffer for basic types like floats, integers, Imath::V3f, Imath::M44f.. More... | |
| class | BVH3 |
| A bounding volume hierarchy to quickly select 3d shapes. More... | |
| class | BVHTriangle |
| A bounding volume hierarchy to quickly intersect 3d triangles. More... | |
| class | CameraContext |
| This class provides viewport space conversion services. More... | |
| class | ChannelBool |
| A boolean value with a default value. More... | |
| class | ChannelFloat |
| A float value with a default value. More... | |
| class | ChannelInt |
| An integer value with a default value. More... | |
| class | Curves |
| A mesh value. More... | |
| class | CustomAction |
| class | DeformLayer |
| class | Dict |
| A dictionnary to associate strings to values. More... | |
| class | EvalContext |
| This class holds the evaluation context passed to the evaluation handler during a plug evaluation. More... | |
| class | EvaluationEngine |
| An evaluation engine to compute plug values. More... | |
| class | ExportHelper |
| Helper class to export animations. More... | |
| class | Expr |
| class | ExprCall |
| class | GraphProperties |
| The graph properties of a node, its graph position, its radius, its graph flags. More... | |
| class | Image |
| An Image. More... | |
| class | IndexedBuffer |
| A writable IndexedBuffer. More... | |
| class | IndexedBufferConst |
| A read only buffer of indexed values. It is composed of a buffer of indexes of the size of the component. Those indexes point in the value buffer. More... | |
| class | InteractionContext |
| This interface is passed to the events and is implemented by the application. */. More... | |
| class | KeySet |
| A set of keyframes. More... | |
| class | Lattice |
| A lattice cage. More... | |
| class | ManipulatorPlugin |
| Derive this class to create your own Manipulator type. More... | |
| class | Mesh |
| A mesh value. More... | |
| class | MeshBuilder |
| class | MeshEdit |
| MeshEdit provide tools to modify a mesh topology. More... | |
| class | ModificationContext |
| class | Node |
| Base class of all Rumba nodes. More... | |
| class | NodeDelegate |
| This interface gives a high level access to the document structure. More... | |
| class | NodeDelegateManipulator |
| class | NodeDelegateRumba |
| class | NodeLoaderPlugin |
| A node loader plug-in interface. More... | |
| class | NodePlugin |
| Derive this class to create your own Node type. More... | |
| class | NodeSet |
| class | NurbsCurve |
| A nurbs curve value. More... | |
| class | NurbsSurface |
| A nurbs surface value. More... | |
| class | PartialInvalidation |
| A plug's partial invalidation descriptor. More... | |
| struct | PickingResult |
| class | Plug |
| A node plug. More... | |
| class | PlugDescriptor |
| A plug descriptor to pass to the Registry::register_node() function. More... | |
| class | PlugList |
| A value containing a list of plugs. More... | |
| class | PlugListener |
| class | PlugModificationTracker |
| class | Points |
| A set of 3d points. More... | |
| class | QueryContext |
| class | Registry |
| Registry class used to declare and register a plug-in node. More... | |
| class | RemoveCurveAction |
| class | RenderablePlugin |
| struct | RenderParameters |
| struct | RenderTargets |
| class | Scene |
| A mutable scene node value. More... | |
| class | SceneConst |
| An immutable scene node value. More... | |
| class | Shader |
| Gather shading parameters. More... | |
| class | Shape |
| A value with geometrical attributes. Base of all shape values. More... | |
| class | SpanSpan |
| A view on a "vector of sub-vectors of values" container. More... | |
| class | SparseBuffer |
| A writable SparseBuffer. More... | |
| class | SparseBufferConst |
| A read only buffer of sparse values. It is composed of a buffer of values and a buffer of the index in the whole buffer. More... | |
| struct | string_view_less |
| class | StringSet |
| A string set. More... | |
| class | StringViewBase |
| struct | StringViewHasherBase |
| class | ToolPlugin |
| A Tool node plug-in. More... | |
| class | UserData |
| class | Value |
| Base class of all Rumba values. More... | |
| class | ViewportContext |
| class | WeightedComponent |
| This class is a helper to iterate over a geometry component, with an weight per component element. More... | |
| class | Workspace |
| Workspace is the type of the root node of the maquina Node tree. More... | |
Enumerations | |
| enum | CycleMode { CycleMode::cycle_mode_constant = 0, CycleMode::cycle_mode_repeat, CycleMode::cycle_mode_repeat_continuous, CycleMode::cycle_mode_linear } |
| enum | SelectionMode { SelectionMode::Replace, SelectionMode::Add, SelectionMode::Remove, SelectionMode::Invert } |
| Specify a way to alter the active selection. More... | |
| enum | PasteMode { PasteMode::Clear, PasteMode::Merge, PasteMode::Replace, PasteMode::Insert } |
| Specify a way to paste the clipboard. More... | |
| enum | PasteType { PasteType::Null, PasteType::Soft, PasteType::Hard } |
| enum | FlattenMode { FlattenMode::In_Dest_Key, FlattenMode::Union_Keys, FlattenMode::All_Frames } |
| Specify a way to flatten a layer into another. More... | |
Functions | |
| template<typename T > | |
| Buffer< T > | duplicate (const BufferConst< T > &a) |
| MAQUINA_EXPORT std::vector< maquina::Value > | scene_geometries (const std::vector< maquina::Value > &scene_values) |
| MAQUINA_EXPORT std::vector< maquina::Value > | scene_child (const std::vector< maquina::Value > &scene_values, const std::string &child_name) |
| MAQUINA_EXPORT std::vector< maquina::Value > | scene_matrices (const std::vector< maquina::Value > &scene_values) |
| MAQUINA_EXPORT std::vector< maquina::Value > | scene_visibility (const std::vector< maquina::Value > &scene_values) |
| int | hash_24 (const uint8_t *key, size_t length) |
| int | hash_24 (const std::string &str) |
| MAQUINA_EXPORT std::vector< float > | heat_geodesic (const maquina::Mesh &mesh, const Imath::M44f &local_to_ellipsoid, const Imath::V3f &source, const float max_dist=1.f, const bool crop_mesh=true, const float dt_multiplier=1.f, const float bound_blend=0.5f) |
| Approximate geodesic distance through the heat method (cf https://www.cs.cmu.edu/~kmcrane/Projects/HeatMethod/index.html). More... | |
| MAQUINA_EXPORT void | initialize () |
| When the Rumba Engine is embedded in an application, this function should be called before any Rumba API calls. More... | |
| MAQUINA_EXPORT void | release () |
| When the Rumba Engine is embedded in an application, this function should be called before to leave the application. More... | |
| MAQUINA_EXPORT void | load_plugins (const std::vector< std::wstring > &plugin_directories) |
| Load all the Rumba plug-ins from directories. More... | |
| MAQUINA_EXPORT bool | has_python () |
| Return true if Python is available. More... | |
| MAQUINA_EXPORT void | export_plug_values (const std::vector< Plug > &plugs, const std::wstring &filepath) |
| Save the plugs values in a file. More... | |
| MAQUINA_EXPORT void | export_plug_animation (const std::vector< Plug > &plugs, const std::wstring &filepath, bool single_layer=false, const std::function< bool(float, const char *)> &progress=nullptr) |
| Save the layer setup and plugs animation in a file. More... | |
| MAQUINA_EXPORT void | export_settings (const std::wstring &filepath) |
| Save workspace settings to a file. More... | |
| MAQUINA_EXPORT Dict | load_pose (const std::wstring &filename) |
| Import the plugs values from a file. More... | |
| MAQUINA_EXPORT void | apply_pose (const Dict &pose, float frame) |
| Apply a pose. More... | |
| MAQUINA_EXPORT Dict | load_animation_pose (const std::wstring &filename) |
| Import the animation pose from a file, in this case the value of the pose is not relevant. More... | |
| MAQUINA_EXPORT void | import_plug_values (const std::vector< Plug > &plugs, const std::wstring &filename) |
| Import the plugs values from a file and apply them. More... | |
| MAQUINA_EXPORT bool | import_plug_animation (const std::vector< Plug > &plugs, const std::wstring &filename) |
| Import an animation from a file. More... | |
| MAQUINA_EXPORT void | import_settings (const std::wstring &filepath) |
| Import workspace settings from a file. More... | |
| MAQUINA_EXPORT std::string | serialize_nodes (const std::vector< Node > &nodes, bool serialize_external_input_connections=false) |
| Serialize the nodes in a string. More... | |
| MAQUINA_EXPORT std::vector< Node > | deserialize_nodes (std::string buffer, Node *parent=nullptr, const std::string &valid_types="") |
| Deserialize the nodes from a string. More... | |
| MAQUINA_EXPORT Value | read_value (const std::wstring &file, const Dict &options) |
| Load an object value from a file. More... | |
| MAQUINA_EXPORT std::string | serialize_pose (const Dict &pose) |
| Serialize the pose in a string. More... | |
| MAQUINA_EXPORT Dict | deserialize_pose (std::string buffer) |
| Deserialize the pose from a string. More... | |
| template<typename... Args> | |
| void | debug (const char *format, const Args &... args) |
| Log a debug message using the Rumba logger. More... | |
| template<typename... Args> | |
| void | info (const char *format, const Args &... args) |
| Log an informative message using the Rumba logger. More... | |
| template<typename... Args> | |
| void | warn (const char *format, const Args &... args) |
| Log a warning message using the Rumba logger. More... | |
| template<typename... Args> | |
| void | error (const char *format, const Args &... args) |
| Log an error message using the Rumba logger. More... | |
| template<typename... Args> | |
| void | critical (const char *filename, int line, const char *function, const char *format, const Args &... args) |
| Log a critical error message using the Rumba logger. More... | |
| MAQUINA_EXPORT Node | plug_node (const Plug &plug) |
| Get a plug node. More... | |
| template<class To , class From > | |
| Ptr< To > | static_assert_cast (const Ptr< From > &p) |
| MAQUINA_EXPORT Scene | duplicate (const SceneConst &other) |
| MAQUINA_EXTERN_TEMPLATE MAQUINA_EXPORT Buffer< Imath::V2f > | Shape::write_attribute< Buffer< Imath::V2f > > (const char *attribute_name, Topology topology) |
| MAQUINA_EXTERN_TEMPLATE MAQUINA_EXPORT Buffer< Imath::V3f > | Shape::write_attribute< Buffer< Imath::V3f > > (const char *attribute_name, Topology topology) |
| MAQUINA_EXTERN_TEMPLATE MAQUINA_EXPORT Buffer< Imath::V4f > | Shape::write_attribute< Buffer< Imath::V4f > > (const char *attribute_name, Topology topology) |
| MAQUINA_EXTERN_TEMPLATE MAQUINA_EXPORT IndexedBuffer< Imath::V2f > | Shape::write_attribute< IndexedBuffer< Imath::V2f > > (const char *attribute_name, Topology topology) |
| MAQUINA_EXTERN_TEMPLATE MAQUINA_EXPORT IndexedBuffer< Imath::V3f > | Shape::write_attribute< IndexedBuffer< Imath::V3f > > (const char *attribute_name, Topology topology) |
| MAQUINA_EXTERN_TEMPLATE MAQUINA_EXPORT IndexedBuffer< Imath::V4f > | Shape::write_attribute< IndexedBuffer< Imath::V4f > > (const char *attribute_name, Topology topology) |
| MAQUINA_EXTERN_TEMPLATE MAQUINA_EXPORT SparseBuffer< Imath::V2f > | Shape::write_attribute< SparseBuffer< Imath::V2f > > (const char *attribute_name, Topology topology) |
| MAQUINA_EXTERN_TEMPLATE MAQUINA_EXPORT SparseBuffer< Imath::V3f > | Shape::write_attribute< SparseBuffer< Imath::V3f > > (const char *attribute_name, Topology topology) |
| MAQUINA_EXTERN_TEMPLATE MAQUINA_EXPORT SparseBuffer< Imath::V4f > | Shape::write_attribute< SparseBuffer< Imath::V4f > > (const char *attribute_name, Topology topology) |
| template<typename T > | |
| SparseBuffer< T > | duplicate (const SparseBufferConst< T > &a) |
| template<class C , class STDS > | |
| bool | operator== (const C *str, const StringViewBase< C, STDS > &sv) noexcept |
| template<class C , class STDS > | |
| bool | operator== (const StringViewBase< C, STDS > &sv, const C *str) noexcept |
| template<class C , class STDS > | |
| bool | operator== (const StringViewBase< C, STDS > &sv, const STDS &s) noexcept |
| template<class C , class STDS > | |
| bool | operator== (const STDS &s, const StringViewBase< C, STDS > &sv) noexcept |
| template<class C , class STDS > | |
| bool | operator!= (const C *str, const StringViewBase< C, STDS > &sv) noexcept |
| template<class C , class STDS > | |
| bool | operator!= (const StringViewBase< C, STDS > &sv, const C *str) noexcept |
| template<class C , class STDS > | |
| bool | operator!= (const StringViewBase< C, STDS > &sv, const STDS &s) noexcept |
| template<class C , class STDS > | |
| bool | operator!= (const STDS &s, const StringViewBase< C, STDS > &sv) noexcept |
| template<class C , class STDS > | |
| bool | operator< (const StringViewBase< C, STDS > &a, const StringViewBase< C, STDS > &b) noexcept |
| template<class _CharT , class _Traits , class C , class STDS > | |
| std::basic_ostream< _CharT, _Traits > & | operator<< (std::basic_ostream< _CharT, _Traits > &os, const StringViewBase< C, STDS > &sv) |
| template<class V , class M > | |
| V | mul_pos (const V &src, const M &m) |
| A faster alternative to multiply a position by a 4x4 matrix, ignoring the homogeneous normalization. More... | |
| template<class V , class M > | |
| V | mul_dir (const V &src, const M &m) |
| A faster alternative to multiply a direction by a 4x4 matrix, ignoring the homogeneous normalization. More... | |
| template<class T > | |
| bool | is_identity (const Imath::Matrix44< T > &m) |
| Returns true if the matrix is the identity. More... | |
| MAQUINA_EXPORT Imath::V3f | closest_point_on_triangle (const Imath::V3f *triangle, const Imath::V3f &p, float *s_out=nullptr, float *t_out=nullptr) |
| MAQUINA_EXPORT int | intersect_ray_sphere (const Imath::V3d &o, const Imath::V3d &d, const Imath::V3d &c, float r, float &t0, float &t1) |
| Compute the intersections between an infinit ray and a sphere. More... | |
| MAQUINA_EXPORT Imath::V3f | closest_point_segment_to_segment (const Imath::V3f *s1, const Imath::V3f *s2) |
| MAQUINA_EXPORT Imath::V3d | closest_point_segment_to_segment (const Imath::V3d *s1, const Imath::V3d *s2) |
| MAQUINA_EXPORT Imath::V3d | closest_point_to_line (const Imath::V3d &o, const Imath::V3d &d, const Imath::V3d &p) |
| Compute the closest point to p on a line. More... | |
| MAQUINA_EXPORT void | closest_point_between_lines (const Imath::V3f &o0, const Imath::V3f &d0, const Imath::V3f &o1, const Imath::V3f &d1, float &t0, float &t1) |
| Compute the closest point between two lines. More... | |
| MAQUINA_EXPORT void | get_orthogonal_vectors (const Imath::V3d &fx, Imath::V3d &fy, Imath::V3d &fz) |
| MAQUINA_EXPORT Imath::M44f | blend_to_identity (const Imath::M44f &a, float w) |
| Blend a matrix to identity. More... | |
| MAQUINA_EXPORT Imath::M44d | blend_to_identity (const Imath::M44d &a, double w) |
| MAQUINA_EXPORT Imath::M44d | lerp (const Imath::M44d &a, const Imath::M44d &b, double w) |
| Interplate two matrices. More... | |
| MAQUINA_EXPORT void | ik_3_joints (const Imath::V3d &p0, const Imath::V3d &p1, const Imath::V3d &p2, const Imath::V3d &goal, const Imath::V3d &normal, Imath::Quatd &r0, double &a1, Imath::V3d &axis1, bool negate_normal=false) |
| MAQUINA_EXPORT int | solve_cubic (float a, float b, float c, float d, float *roots) |
| Solve a cubic equation. More... | |
| MAQUINA_EXPORT int | solve_cubic (double a, double b, double c, double d, double *roots) |
| Solve a cubic equation. More... | |
| MAQUINA_EXPORT std::vector< uint8_t > | deflate (const uint8_t *data, size_t size) |
| Compress a bunch of binary data with zlib. More... | |
| MAQUINA_EXPORT std::vector< uint8_t > | inflate (const uint8_t *data, size_t size) |
| Uncompress a bunch of binary data with zlib. More... | |
| MAQUINA_EXPORT std::string | base64_encode (const uint8_t *data, size_t size) |
| Encode a bunch of binary data in a base64 text. More... | |
| MAQUINA_EXPORT std::vector< uint8_t > | base64_decode (const char *text, size_t size) |
| Decode a bunch of binary data from a base64 text. More... | |
| MAQUINA_EXPORT std::wstring | system_path (const wchar_t *path) |
| Expand a document file path in a file system path. More... | |
| MAQUINA_EXPORT std::string | system_path_local (const wchar_t *path) |
| Expand a document file path in a file system path. More... | |
| MAQUINA_EXPORT const std::vector< std::pair< std::string, std::wstring > > & | path_variables () |
| Return the currently registered path variables. More... | |
| MAQUINA_EXPORT void | set_path_variables (const std::vector< std::pair< std::string, std::wstring >> &path_vars) |
| Register the path variables. More... | |
| MAQUINA_EXPORT std::wstring | project_path (const wchar_t *system_path) |
| Reduce a file system path to a project file path. More... | |
| MAQUINA_EXPORT std::wstring | utf8_to_wstring (const char *uft8) |
| Convert an utf-8 string into a std::wstring. More... | |
| MAQUINA_EXPORT std::string | wstring_to_utf8 (const wchar_t *str) |
| Convert a std::wstring into an utf-8 string. More... | |
| MAQUINA_EXPORT std::wstring | local_to_wstring (const char *str) |
| Convert a string in the default system charset into a std::wstring. More... | |
| MAQUINA_EXPORT std::string | wstring_to_local (const wchar_t *str) |
| Convert a std::wstring into a string in the default system charset. More... | |
| MAQUINA_EXPORT std::string | to_log (const std::wstring &s) |
| Convert a wide string in string to use in the logger functions. More... | |
| MAQUINA_EXPORT std::wstring | getenv_w (const char *name) |
| Return the content of an environment variable. More... | |
| MAQUINA_EXPORT bool | list_directory_files (const wchar_t *directory, std::vector< std::wstring > &files) |
| MAQUINA_EXPORT bool | file_exists (const wchar_t *file) |
| Return true if a file exist. More... | |
| MAQUINA_EXPORT std::string | file_extension (const wchar_t *file) |
| Return a file extension. More... | |
| MAQUINA_EXPORT std::wstring | file_name (const wchar_t *file) |
| Return a file name. More... | |
| MAQUINA_EXPORT std::wstring | parent_path (const wchar_t *file) |
| Return a file parent path. More... | |
| MAQUINA_EXPORT std::wstring | project_directory () |
| Return the project directory. More... | |
| MAQUINA_EXPORT void | set_project_directory (const wchar_t *path) |
| Set the project directory. More... | |
| MAQUINA_EXPORT void | drm_init (const std::wstring &path, const std::string &license_server) |
| Initialize the drm. More... | |
| MAQUINA_EXPORT void | drm_release () |
| Release the drm. More... | |
| MAQUINA_EXPORT std::pair< bool, std::string > | drm_status () |
| Return the drm status. More... | |
| MAQUINA_EXPORT std::string | drm_hostid () |
| Return the system host id. More... | |
| MAQUINA_EXPORT bool | has_tag (const std::string &tags, const char *tag) |
| Check a tag exist in a comma separate tag list. More... | |
| MAQUINA_EXPORT void | parallel_for (uint32_t first, uint32_t last, uint32_t batch_size, const std::function< void(uint32_t first, uint32_t last)> &function) |
| Perform a for loop using threads. More... | |
| MAQUINA_EXPORT Imath::Box3f | compute_aabb (const gsl::span< const Imath::V3f > &points) |
| Compute points bounding box. More... | |
| MAQUINA_EXPORT Value | setting (const char *path) |
| Get a setting value. More... | |
| MAQUINA_EXPORT void | set_setting (const char *path, const Value &value) |
| Set a setting value. More... | |
| MAQUINA_EXPORT Workspace | workspace () |
| Return the workspace node. More... | |
| MAQUINA_EXPORT Node | active_document () |
| Return the active Document node. More... | |
| MAQUINA_EXPORT bool | has_active_document () |
| Return true if there is an active Document node. More... | |
| MAQUINA_EXPORT Plug | background_progress () |
| Use this plug to be notified on background engine progress. More... | |
| MAQUINA_EXPORT std::wstring | active_document_filename () |
| Return the active document filename. More... | |
| MAQUINA_EXPORT void | undo () |
| Make a undo step. More... | |
| MAQUINA_EXPORT void | redo () |
| Make a redo step. More... | |
| MAQUINA_EXPORT void | modify_begin (const char *modification_name, const gsl::span< const float > &interactive_frames={}) |
| Begin a modification of the current document. More... | |
| MAQUINA_EXPORT void | modify_curve_begin (const char *modification_name) |
| Begin a modification of the current document. More... | |
| MAQUINA_EXPORT bool | modify_end () |
| End a modification of the current document. More... | |
| MAQUINA_EXPORT void | add_modify_action (const std::shared_ptr< maquina::CustomAction > &custom_action) |
| Add a custom action to the current modifier. More... | |
| MAQUINA_EXPORT bool | delete_animation_graph (Node &node_to_delete) |
| Delete properly the node animation graph. More... | |
| MAQUINA_EXPORT float | current_frame () |
| Shortcut for the active document current frame. More... | |
| MAQUINA_EXPORT void | set_current_frame (float frame) |
| set the current frame More... | |
| MAQUINA_EXPORT bool | can_undo_blend () |
| Check if it's possible to undo blend. More... | |
| MAQUINA_EXPORT void | undo_blend (float undo_blend) |
| Set the undo blend factor of the last modification. More... | |
| MAQUINA_EXPORT void | add_channels_to_layer (const std::vector< Plug > &channels, Node &layer) |
| Create the animation graph to make this channel animated in the layer. More... | |
| MAQUINA_EXPORT void | remove_channels_from_layer (const std::vector< Plug > &channels, Node &layer) |
| Remove the animation graph to remove this animated channel animated from the layer. More... | |
| MAQUINA_EXPORT Node | duplicate_layer (Node &layer) |
| Duplicate the layer and its animation. More... | |
| MAQUINA_EXPORT void | set_animated_plug_value (Plug &plug, const Value &value, float frame, bool create_curve, bool layer_value=false) |
| Set a value to plug, regarding the target layer and the current plug animation. More... | |
| MAQUINA_EXPORT bool | has_animated_plug (const Plug &plug) |
| Check if the plug has an animated plug. More... | |
| MAQUINA_EXPORT bool | has_animated_plug_in_layer (const Plug &plug, Node &layer) |
| Check if the plug has an animated plug in the layer. More... | |
| MAQUINA_EXPORT std::vector< Node > | in_animated_layers (const Plug &plug, bool skip_disabled=true) |
| Return the animation layers that are modifying this plug. More... | |
| MAQUINA_EXPORT bool | has_target_layer (const Plug &plug) |
| Check if the plug has a layer that can receive the plug animation. More... | |
| MAQUINA_EXPORT Node | target_layer (const Plug &plug) |
| Return the layer receiving the plug animation. More... | |
| MAQUINA_EXPORT Plug | animated_plug (const Plug &plug) |
| Return the animated plug, regarding the current layer. More... | |
| MAQUINA_EXPORT Plug | animated_plug_in_layer (const Plug &plug, Node &layer) |
| Return the animated plug in the specific layer. More... | |
| MAQUINA_EXPORT Value | animated_plug_value_in_layer (const Plug &plug, const Node &layer, float frame) |
| Return the animated plug value in the specific layer. More... | |
| MAQUINA_EXPORT bool | has_animated_channel (Plug &animated_plug) |
| Check if the animated plug has an animated channel. More... | |
| MAQUINA_EXPORT Plug | animated_channel (Plug &animated_plug) |
| Return the animated channel connected to a layer. More... | |
| MAQUINA_EXPORT Value | default_rig_value (Plug &plug) |
| Return the default value if available. More... | |
| MAQUINA_EXPORT void | delete_channels_animation (std::vector< Plug > channels, bool all_layers=false) |
| Reset the channels value in their target layer without removing the channel from the layer. More... | |
| MAQUINA_EXPORT bool | rig_matrix (Plug &plug) |
| Rig a matrix plug. More... | |
| MAQUINA_EXPORT void | constrain_node (Node &constraint, Node &node) |
| Constrain the node to the constraint. More... | |
| MAQUINA_EXPORT void | key_layer (Node &layer, float frame, bool default_value=false) |
| Add a key frame on a layer. More... | |
| MAQUINA_EXPORT std::vector< Node > | selection () |
| Return the active selection. More... | |
| MAQUINA_EXPORT std::vector< std::shared_ptr< NodeDelegate > > | delegate_selection () |
| Return the active node delegate selection. More... | |
| MAQUINA_EXPORT std::vector< std::string > | selection_paths () |
| Return the paths of the active node delegate selection. More... | |
| MAQUINA_EXPORT std::vector< std::shared_ptr< NodeDelegate > > | tool_selection () |
| Return the active tool delegate selection. More... | |
| MAQUINA_EXPORT void | select (const std::vector< Node > &nodes, SelectionMode mode=SelectionMode::Replace) |
| Update the active selection with a list of nodes according to the selection mode. More... | |
| MAQUINA_EXPORT void | select_delegate (const std::vector< std::string > &paths, SelectionMode mode=SelectionMode::Replace) |
| Update the active selection with a list of node paths according to the selection mode. More... | |
| MAQUINA_EXPORT std::unordered_set< std::string > | selected_keys_channels (Node &anim_layer) |
| Return the channels associated with the active key selection in a layer. More... | |
| MAQUINA_EXPORT Value | copy_keys (Node &anim_layer) |
| Return a copy of the active key selection in a layer. More... | |
| MAQUINA_EXPORT std::vector< std::pair< std::string, std::string > > | match_channels (const Value &to_match) |
| Return the best match between the channels to be pasted and the active selection. More... | |
| MAQUINA_EXPORT std::vector< std::pair< std::string, std::string > > | match_to_channels (const std::unordered_set< std::string > &channels_to_match, const std::unordered_set< std::string > &selected_channels) |
| Return the best match between the channels to be pasted and the active selection. More... | |
| MAQUINA_EXPORT PasteType | is_paste_valid (const Value &to_paste, const std::vector< std::pair< std::string, std::string > > &matched_channels, Node &dest_layer) |
| Test if the targeted channels are open to be modified by the clipboard in a layer. More... | |
| MAQUINA_EXPORT void | paste_keys (const Value &to_paste, const std::vector< std::pair< std::string, std::string > > &matched_channels, Node &dest_layer, float frame_in, float frame_out, float to_frame, PasteMode mode=PasteMode::Merge, PasteType type=PasteType::Hard) |
| Paste values onto matching channels in a targeted layer. More... | |
| MAQUINA_EXPORT void | paste_keys_on_curve (Node &anim_curve_node, const AnimCurve &curve, float frame_in, float frame_out, float to_frame, PasteMode mode=PasteMode::Merge) |
| Paste the curve keys into an animation curve node. More... | |
| MAQUINA_EXPORT void | remove_keys (Node &anim_layer, bool normalize=true) |
| Remove the active key selection in a layer. More... | |
| MAQUINA_EXPORT void | remove_key (Plug &plug, const float frame) |
| Remove the key at frame in the active layer. More... | |
| MAQUINA_EXPORT void | transform_keys (Node &anim_layer) |
| Transform the active key selection using the selection rubberband. More... | |
| MAQUINA_EXPORT void | transform_curve_keys (const Plug &plug, std::unordered_map< float, float > &original_to_transformed_keys) |
| MAQUINA_EXPORT int | insert_key (const Plug &plug, float t, float v) |
| MAQUINA_EXPORT void | time_warp_keys (Node &anim_layer) |
| Time warp the active key selection using the selection rubberband. More... | |
| MAQUINA_EXPORT void | move_layer (Node &layer, int dest_id) |
| Re-order layers. More... | |
| MAQUINA_EXPORT void | reparent_layers (Node &parent, const std::vector< Node > &layers) |
| Move layers. More... | |
| MAQUINA_EXPORT void | ungroup_layer (Node &layer_group) |
| Ungroup layer. More... | |
| MAQUINA_EXPORT bool | can_be_flatten (Node &layer) |
| MAQUINA_EXPORT void | group_child_layers (Node &layer_group, std::vector< Node > &layers, const char *layer_type, bool recursive=false) |
| MAQUINA_EXPORT Node | flatten_group (Node &layer_group, FlattenMode mode=FlattenMode::Union_Keys, int all_frames_interval=1, int all_frames_offset=0, int all_frames_tangents_mode=1) |
| Flatten a group layer. More... | |
| MAQUINA_EXPORT void | flatten_layer (Node &layer, Node &dest_layer, FlattenMode mode=FlattenMode::Union_Keys, int all_frames_interval=1, int all_frames_offset=0, int all_frames_tangents_mode=1) |
| Flatten a layer into the previous one. More... | |
| MAQUINA_EXPORT void | bake_layer (Node &layer, int interval=1, int offset=0, int tangents_mode=1) |
| Bake the layer. More... | |
| MAQUINA_EXPORT void | bake_curve (Node &curve, const Plug &value_plug, int interval=1, int offset=0, int tangents_mode=1) |
| Bake curve. More... | |
| MAQUINA_EXPORT Node | reference (Node &root, const std::wstring &filepath, const std::string &reference_root_name="") |
| Reference the content of a file into the project. More... | |
| MAQUINA_EXPORT Node | load_node (Node &root, const std::wstring &filepath, const std::string &root_name="") |
| Load the content of a file into the project. More... | |
| MAQUINA_EXPORT Dict | extract_pose (const std::vector< std::string > &channels, float frame) |
| Extract a pose from a selection of plugs. More... | |
| MAQUINA_EXPORT Dict | blend_poses (const Dict &from_pose, const Dict &to_pose, float weight) |
| Blend from pose to pose using weight factor. More... | |
| MAQUINA_EXPORT Dict | matching_pose (const Dict &pose, const std::vector< std::string > &channels) |
| Match a pose to a set of channels. More... | |
| MAQUINA_EXPORT bool | has_controller (const Plug &plug) |
| Test if a controller is associated to a plug. More... | |
| MAQUINA_EXPORT Node | controller (const Plug &plug) |
| Return the controller associated to a plug. More... | |
| MAQUINA_EXPORT void | init_crash_handler (const std::string &message, bool send_report) |
| Init the crash handler with the message to attach to the crash reports. More... | |
| MAQUINA_EXPORT Plug | animation_node_channel_plug (Node &node) |
| Get the channel plug (input of the rig) from an animation node (like an AnimCurveFloat node) More... | |
| MAQUINA_EXPORT bool | is_right (Node &asset, const std::string &name) |
| Return true if the name is right using the asset mirroring rules. More... | |
| MAQUINA_EXPORT bool | is_left (Node &asset, const std::string &name) |
| Return true if the name is left using the asset mirroring rules. More... | |
| MAQUINA_EXPORT std::string | asset_mirror (Node &asset, const std::string &name) |
| Return the mirrored name using the asset mirroring rules. More... | |
| MAQUINA_EXPORT Node | asset_mirror_node (Node &asset, const Node &node) |
| Return the mirrored node using the asset mirroring rules. More... | |
| MAQUINA_EXPORT bool | asset_has_manipulator (Node &asset, const std::string &manipulator_name) |
| Return true if the asset contain the manipulator. More... | |
| MAQUINA_EXPORT Node | asset_manipulator (Node &asset, const std::string &manipulator_name) |
| Get the manipulator with the name manipulator name from this asset. More... | |
| MAQUINA_EXPORT bool | asset_has_child (Node &asset, const std::string &name) |
| Return true if the asset contain a child named name. More... | |
| MAQUINA_EXPORT Node | asset_child (Node &asset, const std::string &name) |
| Get the first child node named name of this asset. More... | |
| MAQUINA_EXPORT bool | asset_child_has_manipulator (Node &asset, const Node &child) |
| Return true if the asset child has a manipulator. More... | |
| MAQUINA_EXPORT Node | asset_child_manipulator (Node &asset, const Node &child) |
| Get the manipulator associated to the asset child. More... | |
| MAQUINA_EXPORT Node | manipulator_controller (Node &manipulator) |
| Get the controller related to this manipulator. More... | |
| MAQUINA_EXPORT std::vector< Node > | asset_controllers (Node &asset) |
| Get the asset controllers. More... | |
| MAQUINA_EXPORT void | start_profiling () |
| Start an interactive profiling session. More... | |
| MAQUINA_EXPORT std::vector< std::pair< std::string, float > > | end_profiling () |
| Stop the interactive profiling session. More... | |
| MAQUINA_EXPORT void | load_document (const std::wstring &path) |
| Open a new Rumba/Guerilla project. More... | |
| MAQUINA_EXPORT void | new_document () |
| Close the current document and create a new one. More... | |
| MAQUINA_EXPORT bool | is_demo_mode () |
| Test if Rumba/Guerilla is in demo mode. More... | |
| MAQUINA_EXPORT void | flush_observers () |
| Make sure all the observers have been called. More... | |
| MAQUINA_EXPORT Node | create_tool_geometry (const char *name, Node &parent) |
| Create a geometry node for tools, i-e, not in a document. More... | |
| MAQUINA_EXPORT void | background_start () |
| Start the background evaluation engine. More... | |
| MAQUINA_EXPORT void | background_wait () |
| Wait for the baground evaluation engine. More... | |
| MAQUINA_EXPORT Node | asset_display (const Node &asset) |
| MAQUINA_EXPORT Value | weighted_sum (const Array &values, const std::vector< double > &weights) |
| Returns the weighted sum of the input values. More... | |
This version of the SDK is unstable, i-e, it may change with no warning.
Using this version you may have to recompile your plugins when you update Rumba. If you need a binary stable API, consider to use a stable version.The Rumba C++ API
| typedef Buffer<Imath::Box3f> maquina::BufferBox3f |
| typedef BufferConst<double> maquina::BufferConstDouble |
| typedef BufferConst<float> maquina::BufferConstFloat |
| typedef BufferConst<int32_t> maquina::BufferConstInt32 |
A readonly integer buffer
| typedef BufferConst<uint32_t> maquina::BufferConstUInt32 |
| typedef BufferConst<uint8_t> maquina::BufferConstUInt8 |
| typedef BufferConst<Imath::V2f> maquina::BufferConstV2f |
| typedef BufferConst<Imath::V2i> maquina::BufferConstV2i |
| typedef BufferConst<Imath::V3f> maquina::BufferConstV3f |
| typedef BufferConst<Imath::V3i> maquina::BufferConstV3i |
| typedef BufferConst<Imath::V4f> maquina::BufferConstV4f |
| typedef BufferConst<Imath::V4i> maquina::BufferConstV4i |
| typedef Buffer<double> maquina::BufferDouble |
| typedef Buffer<float> maquina::BufferFloat |
| typedef Buffer<int32_t> maquina::BufferInt32 |
| typedef Buffer<Imath::M33f> maquina::BufferM33f |
| typedef Buffer<Imath::M44f> maquina::BufferM44f |
| typedef Buffer<uint32_t> maquina::BufferUInt32 |
| typedef Buffer<uint8_t> maquina::BufferUInt8 |
| typedef Buffer<Imath::V2f> maquina::BufferV2f |
| typedef Buffer<Imath::V2i> maquina::BufferV2i |
| typedef Buffer<Imath::V3f> maquina::BufferV3f |
| typedef Buffer<Imath::V3i> maquina::BufferV3i |
| typedef Buffer<Imath::V4f> maquina::BufferV4f |
| typedef Buffer<Imath::V4i> maquina::BufferV4i |
| typedef IndexedBufferConst<double> maquina::IndexedBufferConstDouble |
| typedef IndexedBufferConst<float> maquina::IndexedBufferConstFloat |
| typedef IndexedBufferConst<int32_t> maquina::IndexedBufferConstInt32 |
| typedef IndexedBufferConst<uint32_t> maquina::IndexedBufferConstUInt32 |
| typedef IndexedBufferConst<uint8_t> maquina::IndexedBufferConstUInt8 |
| typedef IndexedBuffer<double> maquina::IndexedBufferDouble |
| typedef IndexedBuffer<float> maquina::IndexedBufferFloat |
| typedef IndexedBuffer<int32_t> maquina::IndexedBufferInt32 |
| typedef IndexedBuffer<uint32_t> maquina::IndexedBufferUInt32 |
| typedef IndexedBuffer<uint8_t> maquina::IndexedBufferUInt8 |
| typedef Ptr< const PartialInvalidation > maquina::PartialInvalidationPtr |
| using maquina::Ptr = typedef std::shared_ptr<T> |
| typedef SparseBufferConst<double> maquina::SparseBufferConstDouble |
| typedef SparseBufferConst<float> maquina::SparseBufferConstFloat |
| typedef SparseBufferConst<int32_t> maquina::SparseBufferConstInt32 |
| typedef SparseBufferConst<uint32_t> maquina::SparseBufferConstUInt32 |
| typedef SparseBufferConst<uint8_t> maquina::SparseBufferConstUInt8 |
| typedef SparseBuffer<double> maquina::SparseBufferDouble |
| typedef SparseBuffer<float> maquina::SparseBufferFloat |
| typedef SparseBuffer<int32_t> maquina::SparseBufferInt32 |
| typedef SparseBuffer<uint32_t> maquina::SparseBufferUInt32 |
| typedef SparseBuffer<uint8_t> maquina::SparseBufferUInt8 |
| typedef StringViewBase<char, std::string> maquina::StringView |
| typedef StringViewHasherBase<char, std::string> maquina::StringViewHasher |
| using maquina::verbosity_level = typedef spdlog::level::level_enum |
| typedef StringViewBase<wchar_t, std::wstring> maquina::WStringView |
| typedef StringViewHasherBase<wchar_t, std::wstring> maquina::WStringViewHasher |
|
strong |
|
strong |
Specify a way to flatten a layer into another.
|
strong |
|
strong |
|
strong |
| MAQUINA_EXPORT Node maquina::active_document | ( | ) |
Return the active Document node.
| MAQUINA_EXPORT std::wstring maquina::active_document_filename | ( | ) |
Return the active document filename.
| MAQUINA_EXPORT void maquina::add_channels_to_layer | ( | const std::vector< Plug > & | channels, |
| Node & | layer | ||
| ) |
Create the animation graph to make this channel animated in the layer.
| channels | The channel |
| layer | The layer |
| MAQUINA_EXPORT void maquina::add_modify_action | ( | const std::shared_ptr< maquina::CustomAction > & | custom_action | ) |
Add a custom action to the current modifier.
| MAQUINA_EXPORT Plug maquina::animated_channel | ( | Plug & | animated_plug | ) |
Return the animated channel connected to a layer.
Returns the related channel that is connected to the animation graph.
| animated_plug | The animated plug from the layer |
| MAQUINA_EXPORT Plug maquina::animated_plug | ( | const Plug & | plug | ) |
Return the animated plug, regarding the current layer.
Returns the related plug from the animation graph.
| plug | The asset plug |
| MAQUINA_EXPORT Plug maquina::animated_plug_in_layer | ( | const Plug & | plug, |
| Node & | layer | ||
| ) |
Return the animated plug in the specific layer.
Returns the related plug from the animation graph.
| plug | The asset plug |
| layer | The layer |
| MAQUINA_EXPORT Value maquina::animated_plug_value_in_layer | ( | const Plug & | plug, |
| const Node & | layer, | ||
| float | frame | ||
| ) |
Return the animated plug value in the specific layer.
Returns the related plug value from the animation graph if no animated value in the layer, returns the equivalent value in the layer as if plug was override in the layer.
| std::runtime_error | if no value can't be found. |
| plug | The asset plug |
| layer | The layer |
| frame | The frame |
| MAQUINA_EXPORT Plug maquina::animation_node_channel_plug | ( | Node & | node | ) |
Get the channel plug (input of the rig) from an animation node (like an AnimCurveFloat node)
| MAQUINA_EXPORT void maquina::apply_pose | ( | const Dict & | pose, |
| float | frame | ||
| ) |
Apply a pose.
| pose | The pose to apply |
| frame | The frame to apply pose |
| MAQUINA_EXPORT Node maquina::asset_child | ( | Node & | asset, |
| const std::string & | name | ||
| ) |
Get the first child node named name of this asset.
| MAQUINA_EXPORT bool maquina::asset_child_has_manipulator | ( | Node & | asset, |
| const Node & | child | ||
| ) |
Return true if the asset child has a manipulator.
| MAQUINA_EXPORT Node maquina::asset_child_manipulator | ( | Node & | asset, |
| const Node & | child | ||
| ) |
Get the manipulator associated to the asset child.
| MAQUINA_EXPORT std::vector<Node> maquina::asset_controllers | ( | Node & | asset | ) |
Get the asset controllers.
| MAQUINA_EXPORT Node maquina::asset_display | ( | const Node & | asset | ) |
| MAQUINA_EXPORT bool maquina::asset_has_child | ( | Node & | asset, |
| const std::string & | name | ||
| ) |
Return true if the asset contain a child named name.
| MAQUINA_EXPORT bool maquina::asset_has_manipulator | ( | Node & | asset, |
| const std::string & | manipulator_name | ||
| ) |
Return true if the asset contain the manipulator.
| MAQUINA_EXPORT Node maquina::asset_manipulator | ( | Node & | asset, |
| const std::string & | manipulator_name | ||
| ) |
Get the manipulator with the name manipulator name from this asset.
| MAQUINA_EXPORT std::string maquina::asset_mirror | ( | Node & | asset, |
| const std::string & | name | ||
| ) |
Return the mirrored name using the asset mirroring rules.
| MAQUINA_EXPORT Node maquina::asset_mirror_node | ( | Node & | asset, |
| const Node & | node | ||
| ) |
Return the mirrored node using the asset mirroring rules.
| MAQUINA_EXPORT Plug maquina::background_progress | ( | ) |
Use this plug to be notified on background engine progress.
| MAQUINA_EXPORT void maquina::background_start | ( | ) |
Start the background evaluation engine.
| MAQUINA_EXPORT void maquina::background_wait | ( | ) |
Wait for the baground evaluation engine.
| MAQUINA_EXPORT void maquina::bake_curve | ( | Node & | curve, |
| const Plug & | value_plug, | ||
| int | interval = 1, |
||
| int | offset = 0, |
||
| int | tangents_mode = 1 |
||
| ) |
Bake curve.
| curve | The curve to bake |
| value_plug | The plug with the value |
| interval | bakes frames every interval. |
| offset | bakes every frames matching (frameinterval) == offset. |
| tangents_mode | The tangent mode to set on keys, 0 for linear, 1 for auto, 3 for spline, 4 for flat, 5 for step |
| MAQUINA_EXPORT void maquina::bake_layer | ( | Node & | layer, |
| int | interval = 1, |
||
| int | offset = 0, |
||
| int | tangents_mode = 1 |
||
| ) |
Bake the layer.
| layer | The layer to bake |
| interval | bakes frames every interval. |
| offset | bakes every frames matching (frameinterval) == offset. |
| tangents_mode | The tangent mode to set on keys, 0 for linear, 1 for auto, 3 for spline, 4 for flat, 5 for step |
| MAQUINA_EXPORT std::vector<uint8_t> maquina::base64_decode | ( | const char * | text, |
| size_t | size | ||
| ) |
Decode a bunch of binary data from a base64 text.
| MAQUINA_EXPORT std::string maquina::base64_encode | ( | const uint8_t * | data, |
| size_t | size | ||
| ) |
Encode a bunch of binary data in a base64 text.
| MAQUINA_EXPORT Dict maquina::blend_poses | ( | const Dict & | from_pose, |
| const Dict & | to_pose, | ||
| float | weight | ||
| ) |
Blend from pose to pose using weight factor.
Returns a new pose result of the blend
| from_pose | The starting pose |
| to_pose | The destination pose |
| weight | The weight factor |
| MAQUINA_EXPORT Imath::M44f maquina::blend_to_identity | ( | const Imath::M44f & | a, |
| float | w | ||
| ) |
Blend a matrix to identity.
w is the blend weight. If w is 0, the identity matrix is returned, if 1, a is returned, otherwise a blending is computed. The scale, shear and translation components are linearly interpolated. The rotation is interpolated using the shortest quaternion linear interpolation.
| MAQUINA_EXPORT Imath::M44d maquina::blend_to_identity | ( | const Imath::M44d & | a, |
| double | w | ||
| ) |
| MAQUINA_EXPORT bool maquina::can_be_flatten | ( | Node & | layer | ) |
| layer | The layer to be flatten |
| MAQUINA_EXPORT bool maquina::can_undo_blend | ( | ) |
Check if it's possible to undo blend.
| MAQUINA_EXPORT void maquina::closest_point_between_lines | ( | const Imath::V3f & | o0, |
| const Imath::V3f & | d0, | ||
| const Imath::V3f & | o1, | ||
| const Imath::V3f & | d1, | ||
| float & | t0, | ||
| float & | t1 | ||
| ) |
Compute the closest point between two lines.
| MAQUINA_EXPORT Imath::V3f maquina::closest_point_on_triangle | ( | const Imath::V3f * | triangle, |
| const Imath::V3f & | p, | ||
| float * | s_out = nullptr, |
||
| float * | t_out = nullptr |
||
| ) |
triangle points on an array of 3 Imath::V3f, which are the triangle vertices. p is the lookup position. if s_out/t_out are specified, they are filled with the barycentric coordinate of the closest point on the triangle.
| MAQUINA_EXPORT Imath::V3f maquina::closest_point_segment_to_segment | ( | const Imath::V3f * | s1, |
| const Imath::V3f * | s2 | ||
| ) |
| MAQUINA_EXPORT Imath::V3d maquina::closest_point_segment_to_segment | ( | const Imath::V3d * | s1, |
| const Imath::V3d * | s2 | ||
| ) |
| MAQUINA_EXPORT Imath::V3d maquina::closest_point_to_line | ( | const Imath::V3d & | o, |
| const Imath::V3d & | d, | ||
| const Imath::V3d & | p | ||
| ) |
Compute the closest point to p on a line.
line_o is any position on the line line_d is the NORMALIZED line direction p is the point position
| MAQUINA_EXPORT Imath::Box3f maquina::compute_aabb | ( | const gsl::span< const Imath::V3f > & | points | ) |
Compute points bounding box.
| MAQUINA_EXPORT void maquina::constrain_node | ( | Node & | constraint, |
| Node & | node | ||
| ) |
Constrain the node to the constraint.
Returns true if the constraint has been setted.
| constraint | The constraint layer |
| node | The node to be constrain |
| MAQUINA_EXPORT Node maquina::controller | ( | const Plug & | plug | ) |
Return the controller associated to a plug.
| MAQUINA_EXPORT Value maquina::copy_keys | ( | Node & | anim_layer | ) |
Return a copy of the active key selection in a layer.
| anim_layer | The working layer |
| MAQUINA_EXPORT Node maquina::create_tool_geometry | ( | const char * | name, |
| Node & | parent | ||
| ) |
Create a geometry node for tools, i-e, not in a document.
| void maquina::critical | ( | const char * | filename, |
| int | line, | ||
| const char * | function, | ||
| const char * | format, | ||
| const Args &... | args | ||
| ) |
Log a critical error message using the Rumba logger.
One could use the convenient RUMBA_LOG_CRITICAL macro.
| MAQUINA_EXPORT float maquina::current_frame | ( | ) |
Shortcut for the active document current frame.
| void maquina::debug | ( | const char * | format, |
| const Args &... | args | ||
| ) |
Log a debug message using the Rumba logger.
| MAQUINA_EXPORT Value maquina::default_rig_value | ( | Plug & | plug | ) |
Return the default value if available.
| plug | The plug to get the default rig value |
| MAQUINA_EXPORT std::vector<uint8_t> maquina::deflate | ( | const uint8_t * | data, |
| size_t | size | ||
| ) |
Compress a bunch of binary data with zlib.
| MAQUINA_EXPORT std::vector<std::shared_ptr<NodeDelegate> > maquina::delegate_selection | ( | ) |
Return the active node delegate selection.
| MAQUINA_EXPORT bool maquina::delete_animation_graph | ( | Node & | node_to_delete | ) |
Delete properly the node animation graph.
Returns true if success or false if the deletion failed.
| MAQUINA_EXPORT void maquina::delete_channels_animation | ( | std::vector< Plug > | channels, |
| bool | all_layers = false |
||
| ) |
Reset the channels value in their target layer without removing the channel from the layer.
| channels | The channels to be deleted |
| all_layers | Delete the animation for all layers |
| MAQUINA_EXPORT std::vector<Node> maquina::deserialize_nodes | ( | std::string | buffer, |
| Node * | parent = nullptr, |
||
| const std::string & | valid_types = "" |
||
| ) |
Deserialize the nodes from a string.
Returns the vector of nodes deserialized if the deserialization has succeed.
| buffer | The buffer to be deserialized |
| parent | If non null, deserialize nodes with parent has parent |
| valid_types | If non empty, use it to check if nodes in the buffer are valid types, if not skip the node |
| MAQUINA_EXPORT Dict maquina::deserialize_pose | ( | std::string | buffer | ) |
Deserialize the pose from a string.
| buffer | The buffer to be deserialized |
| MAQUINA_EXPORT std::string maquina::drm_hostid | ( | ) |
Return the system host id.
| MAQUINA_EXPORT void maquina::drm_init | ( | const std::wstring & | path, |
| const std::string & | license_server | ||
| ) |
Initialize the drm.
| MAQUINA_EXPORT void maquina::drm_release | ( | ) |
Release the drm.
| MAQUINA_EXPORT std::pair<bool, std::string> maquina::drm_status | ( | ) |
Return the drm status.
| SparseBuffer<T> maquina::duplicate | ( | const SparseBufferConst< T > & | a | ) |
| Buffer<T> maquina::duplicate | ( | const BufferConst< T > & | a | ) |
| MAQUINA_EXPORT Scene maquina::duplicate | ( | const SceneConst & | other | ) |
| MAQUINA_EXPORT Node maquina::duplicate_layer | ( | Node & | layer | ) |
Duplicate the layer and its animation.
| std::runtime_error | if the duplication failed. |
| layer | The layer |
| MAQUINA_EXPORT std::vector<std::pair<std::string, float> > maquina::end_profiling | ( | ) |
Stop the interactive profiling session.
Returns a plug full path and the time in milliseconds spent in each evaluated plugs. The list is not sorted.
| void maquina::error | ( | const char * | format, |
| const Args &... | args | ||
| ) |
Log an error message using the Rumba logger.
One could use the convinent RUMBA_LOG_ERROR macro.
| MAQUINA_EXPORT void maquina::export_plug_animation | ( | const std::vector< Plug > & | plugs, |
| const std::wstring & | filepath, | ||
| bool | single_layer = false, |
||
| const std::function< bool(float, const char *)> & | progress = nullptr |
||
| ) |
Save the layer setup and plugs animation in a file.
| std::runtime_error | in case of writing errors. |
| plugs | The plugs with the values or the animation to save |
| filepath | The file path, the extension should be ".rumbaanim" |
| single_layer | Export the animation in a single layer, bake the plugs animation if needed |
| progress | Progress callback |
| MAQUINA_EXPORT void maquina::export_plug_values | ( | const std::vector< Plug > & | plugs, |
| const std::wstring & | filepath | ||
| ) |
Save the plugs values in a file.
| std::runtime_error | in case of writing errors. |
| plugs | The plugs with the values or the animation to save |
| filepath | The file path, the extension should be ".rumbapose" |
| MAQUINA_EXPORT void maquina::export_settings | ( | const std::wstring & | filepath | ) |
Save workspace settings to a file.
| std::runtime_error | in case of writing errors. |
| filepath | Path to the output file. |
| MAQUINA_EXPORT Dict maquina::extract_pose | ( | const std::vector< std::string > & | channels, |
| float | frame | ||
| ) |
Extract a pose from a selection of plugs.
Returns the extracted pose
| channels | The channels to extract the pose from |
| frame | The frame to extract the pose |
| MAQUINA_EXPORT bool maquina::file_exists | ( | const wchar_t * | file | ) |
Return true if a file exist.
| MAQUINA_EXPORT std::string maquina::file_extension | ( | const wchar_t * | file | ) |
Return a file extension.
| MAQUINA_EXPORT std::wstring maquina::file_name | ( | const wchar_t * | file | ) |
Return a file name.
| MAQUINA_EXPORT Node maquina::flatten_group | ( | Node & | layer_group, |
| FlattenMode | mode = FlattenMode::Union_Keys, |
||
| int | all_frames_interval = 1, |
||
| int | all_frames_offset = 0, |
||
| int | all_frames_tangents_mode = 1 |
||
| ) |
Flatten a group layer.
| layer_group | The layer group to be flatten |
| mode | The flatten mode, unifying the keys by default |
| all_frames_interval | In All_Frames mode, bakes frames every all_frames_interval. |
| all_frames_offset | In All_Frames mode, bakes every frames matching (frameall_frames_interval) == all_frames_offset. |
| all_frames_tangents_mode | The tangent mode to set on keys, 0 for linear, 1 for auto, 3 for spline, 4 for flat, 5 for step |
| MAQUINA_EXPORT void maquina::flatten_layer | ( | Node & | layer, |
| Node & | dest_layer, | ||
| FlattenMode | mode = FlattenMode::Union_Keys, |
||
| int | all_frames_interval = 1, |
||
| int | all_frames_offset = 0, |
||
| int | all_frames_tangents_mode = 1 |
||
| ) |
Flatten a layer into the previous one.
| layer | The layer to be flatten |
| dest_layer | The destination layer |
| mode | The flatten mode, unifying the keys by default |
| all_frames_interval | In All_Frames mode, bakes frames every all_frames_interval. |
| all_frames_offset | In All_Frames mode, bakes every frames matching (frameall_frames_interval) == all_frames_offset. |
| all_frames_tangents_mode | The tangent mode to set on keys, 0 for linear, 1 for auto, 3 for spline, 4 for flat, 5 for step |
| MAQUINA_EXPORT void maquina::flush_observers | ( | ) |
Make sure all the observers have been called.
| MAQUINA_EXPORT void maquina::get_orthogonal_vectors | ( | const Imath::V3d & | fx, |
| Imath::V3d & | fy, | ||
| Imath::V3d & | fz | ||
| ) |
| MAQUINA_EXPORT std::wstring maquina::getenv_w | ( | const char * | name | ) |
Return the content of an environment variable.
| MAQUINA_EXPORT void maquina::group_child_layers | ( | Node & | layer_group, |
| std::vector< Node > & | layers, | ||
| const char * | layer_type, | ||
| bool | recursive = false |
||
| ) |
| MAQUINA_EXPORT bool maquina::has_active_document | ( | ) |
Return true if there is an active Document node.
| MAQUINA_EXPORT bool maquina::has_animated_channel | ( | Plug & | animated_plug | ) |
Check if the animated plug has an animated channel.
Returns True if the plug has an animated channel.
| animated_plug | The asset plug |
| MAQUINA_EXPORT bool maquina::has_animated_plug | ( | const Plug & | plug | ) |
Check if the plug has an animated plug.
Returns True if the plug has an animated plug.
| plug | The asset plug |
| MAQUINA_EXPORT bool maquina::has_animated_plug_in_layer | ( | const Plug & | plug, |
| Node & | layer | ||
| ) |
Check if the plug has an animated plug in the layer.
Returns True if the plug has an animated plug in the layer.
| plug | The asset plug |
| layer | The layer |
| MAQUINA_EXPORT bool maquina::has_controller | ( | const Plug & | plug | ) |
Test if a controller is associated to a plug.
| MAQUINA_EXPORT bool maquina::has_python | ( | ) |
Return true if Python is available.
| MAQUINA_EXPORT bool maquina::has_tag | ( | const std::string & | tags, |
| const char * | tag | ||
| ) |
Check a tag exist in a comma separate tag list.
| MAQUINA_EXPORT bool maquina::has_target_layer | ( | const Plug & | plug | ) |
Check if the plug has a layer that can receive the plug animation.
| plug | The asset plug |
|
inline |
|
inline |
| MAQUINA_EXPORT std::vector<float> maquina::heat_geodesic | ( | const maquina::Mesh & | mesh, |
| const Imath::M44f & | local_to_ellipsoid, | ||
| const Imath::V3f & | source, | ||
| const float | max_dist = 1.f, |
||
| const bool | crop_mesh = true, |
||
| const float | dt_multiplier = 1.f, |
||
| const float | bound_blend = 0.5f |
||
| ) |
Approximate geodesic distance through the heat method (cf https://www.cs.cmu.edu/~kmcrane/Projects/HeatMethod/index.html).
Use the Heat method on the given mesh to approximate the geodesic distance to the given source point (in deformed world space). By giving the deformed_space_inv transform, one can specify the deformed world space in which the distance has to be computed. Returns the geodesic distance in ellipsoid space, capped to max_dist. One can specify whether the whole mesh is used for the distance computation or only the part contained in the deformed-space sphere of radius max_dist. Additional Heat method parameters can also specified: the time factor for heat diffusion solving, as well as the interpolation factor between Neumann and Dirichlet boundary conditions.
| MAQUINA_EXPORT void maquina::ik_3_joints | ( | const Imath::V3d & | p0, |
| const Imath::V3d & | p1, | ||
| const Imath::V3d & | p2, | ||
| const Imath::V3d & | goal, | ||
| const Imath::V3d & | normal, | ||
| Imath::Quatd & | r0, | ||
| double & | a1, | ||
| Imath::V3d & | axis1, | ||
| bool | negate_normal = false |
||
| ) |
| p0 | The first ik chain position |
| p1 | The second ik chain position |
| p2 | The third ik chain position |
| goal | The third ik chain goal position |
| normal | The ik plan normal, normal_original.dot((p0-p1).cross(p2-p1)) must be >= 0. Must be normalized. |
| a1 | The rotation to apply to the first joint matrix |
| axis1 | The delta angle in radian to apply to the second joint around axis1 |
| negate_normal | The second joint rotation axis expressed in the same space than p0, p1, p2 |
| MAQUINA_EXPORT bool maquina::import_plug_animation | ( | const std::vector< Plug > & | plugs, |
| const std::wstring & | filename | ||
| ) |
Import an animation from a file.
Returns true if the import has succeed. Make sure to call modify_begin() before to call this function. The layer structure is added to the active document layers. The animation is then loaded in the new layers. The first new layer is set in 'blend' mode in order to override the old animation.
| std::runtime_error | in case of reading errors. |
| plugs | The channels to import from the file. If empty, imports everything. |
| filename | The file path, the extension should be ".rumbaanim" |
| MAQUINA_EXPORT void maquina::import_plug_values | ( | const std::vector< Plug > & | plugs, |
| const std::wstring & | filename | ||
| ) |
Import the plugs values from a file and apply them.
Make sure to call modify_begin() before to call this function.
| std::runtime_error | in case of reading errors. |
| plugs | The channels to import from the file. If empty, imports everything. |
| filename | The file path, the extension should be ".rumbapose" |
| MAQUINA_EXPORT void maquina::import_settings | ( | const std::wstring & | filepath | ) |
Import workspace settings from a file.
| std::runtime_error | in case of readin errors. |
| filepath | Path to the input file. |
| MAQUINA_EXPORT std::vector<Node> maquina::in_animated_layers | ( | const Plug & | plug, |
| bool | skip_disabled = true |
||
| ) |
Return the animation layers that are modifying this plug.
Returns the animation layers modifying this plug.
| plug | The asset plug |
| skip_disabled | If true skip the disabled layers |
| MAQUINA_EXPORT std::vector<uint8_t> maquina::inflate | ( | const uint8_t * | data, |
| size_t | size | ||
| ) |
Uncompress a bunch of binary data with zlib.
| void maquina::info | ( | const char * | format, |
| const Args &... | args | ||
| ) |
Log an informative message using the Rumba logger.
| MAQUINA_EXPORT void maquina::init_crash_handler | ( | const std::string & | message, |
| bool | send_report | ||
| ) |
Init the crash handler with the message to attach to the crash reports.
| MAQUINA_EXPORT void maquina::initialize | ( | ) |
When the Rumba Engine is embedded in an application, this function should be called before any Rumba API calls.
| MAQUINA_EXPORT int maquina::insert_key | ( | const Plug & | plug, |
| float | t, | ||
| float | v | ||
| ) |
| MAQUINA_EXPORT int maquina::intersect_ray_sphere | ( | const Imath::V3d & | o, |
| const Imath::V3d & | d, | ||
| const Imath::V3d & | c, | ||
| float | r, | ||
| float & | t0, | ||
| float & | t1 | ||
| ) |
Compute the intersections between an infinit ray and a sphere.
Returns the number of intersections (0, 1 or 2) ray_o is any position on the ray ray_d is any ray vector (doesn't have to be normalized) sphere_c is the sphere center sphere_r is the sphere radius
First intersection position is : p0 = ray_o + ray_d*t0 Second intersection position is : p1 = ray_o + ray_d*t1
| MAQUINA_EXPORT bool maquina::is_demo_mode | ( | ) |
Test if Rumba/Guerilla is in demo mode.
Returns true if Rumba/Guerilla is running in demo mode.
|
inline |
Returns true if the matrix is the identity.
| MAQUINA_EXPORT bool maquina::is_left | ( | Node & | asset, |
| const std::string & | name | ||
| ) |
Return true if the name is left using the asset mirroring rules.
| MAQUINA_EXPORT PasteType maquina::is_paste_valid | ( | const Value & | to_paste, |
| const std::vector< std::pair< std::string, std::string > > & | matched_channels, | ||
| Node & | dest_layer | ||
| ) |
Test if the targeted channels are open to be modified by the clipboard in a layer.
| to_paste | The values to be pasted |
| matched_channels | The matching channels |
| dest_layer | The destination layer |
| MAQUINA_EXPORT bool maquina::is_right | ( | Node & | asset, |
| const std::string & | name | ||
| ) |
Return true if the name is right using the asset mirroring rules.
| MAQUINA_EXPORT void maquina::key_layer | ( | Node & | layer, |
| float | frame, | ||
| bool | default_value = false |
||
| ) |
Add a key frame on a layer.
| layer | The layer to key |
| frame | The frame to key |
| default_value | Set the default value |
| MAQUINA_EXPORT Imath::M44d maquina::lerp | ( | const Imath::M44d & | a, |
| const Imath::M44d & | b, | ||
| double | w | ||
| ) |
Interplate two matrices.
w is the blend weight. If w is 0, a is returned, if 1, b is returned, otherwise a linear interpolation is computed. The scale, shear and translation components are linearly interpolated. The rotation is interpolated using the shortest quaternion linear interpolation.
| MAQUINA_EXPORT bool maquina::list_directory_files | ( | const wchar_t * | directory, |
| std::vector< std::wstring > & | files | ||
| ) |
| MAQUINA_EXPORT Dict maquina::load_animation_pose | ( | const std::wstring & | filename | ) |
Import the animation pose from a file, in this case the value of the pose is not relevant.
Returns the animation pose.
| filename | The file path, the extension should be ".rumbaanim" |
| MAQUINA_EXPORT void maquina::load_document | ( | const std::wstring & | path | ) |
Open a new Rumba/Guerilla project.
| std::runtime_error | if the file can't be loaded. |
| MAQUINA_EXPORT Node maquina::load_node | ( | Node & | root, |
| const std::wstring & | filepath, | ||
| const std::string & | root_name = "" |
||
| ) |
Load the content of a file into the project.
Load the file content inside the root node. Any supported file format (.rumbanode/.guerillanode and .abc right now) can be loaded.
| std::runtime_error | if the file can't be loaded. |
| root | The document node where to add the file content |
| filepath | The file path |
| root_name | Some file format (like alembic) have to gather the file content into a single node. In that case, root_name is the root node name of the file content. If root_name is empty, the filename is used. |
| MAQUINA_EXPORT void maquina::load_plugins | ( | const std::vector< std::wstring > & | plugin_directories | ) |
Load all the Rumba plug-ins from directories.
| MAQUINA_EXPORT Dict maquina::load_pose | ( | const std::wstring & | filename | ) |
Import the plugs values from a file.
Returns the pose.
| filename | The file path, the extension should be ".rumbapose" |
| MAQUINA_EXPORT std::wstring maquina::local_to_wstring | ( | const char * | str | ) |
Convert a string in the default system charset into a std::wstring.
| MAQUINA_EXPORT Node maquina::manipulator_controller | ( | Node & | manipulator | ) |
Get the controller related to this manipulator.
| MAQUINA_EXPORT std::vector< std::pair<std::string, std::string> > maquina::match_channels | ( | const Value & | to_match | ) |
Return the best match between the channels to be pasted and the active selection.
| to_match | The channels to match |
| MAQUINA_EXPORT std::vector< std::pair<std::string, std::string> > maquina::match_to_channels | ( | const std::unordered_set< std::string > & | channels_to_match, |
| const std::unordered_set< std::string > & | selected_channels | ||
| ) |
Return the best match between the channels to be pasted and the active selection.
| channels_to_match | The channels to match |
| selected_channels | Selected channels |
| MAQUINA_EXPORT Dict maquina::matching_pose | ( | const Dict & | pose, |
| const std::vector< std::string > & | channels | ||
| ) |
Match a pose to a set of channels.
Returns a new pose that match to the set of channels
| pose | The pose to match |
| channels | The channels to be matched |
| MAQUINA_EXPORT void maquina::modify_begin | ( | const char * | modification_name, |
| const gsl::span< const float > & | interactive_frames = {} |
||
| ) |
Begin a modification of the current document.
| modification_name | The name to display in the UI for this modification. |
| interactive_frames | If the modification is interactive, precise which frame of the animation to update during the intteraction. By default, only the current frame is updated. |
| MAQUINA_EXPORT void maquina::modify_curve_begin | ( | const char * | modification_name | ) |
Begin a modification of the current document.
| MAQUINA_EXPORT bool maquina::modify_end | ( | ) |
End a modification of the current document.
Returns true if success or false if there is no active modification or the modification stack is empty.
| MAQUINA_EXPORT void maquina::move_layer | ( | Node & | layer, |
| int | dest_id | ||
| ) |
Re-order layers.
| layer | The layer to move |
| dest_id | The destination id |
|
inline |
A faster alternative to multiply a direction by a 4x4 matrix, ignoring the homogeneous normalization.
|
inline |
A faster alternative to multiply a position by a 4x4 matrix, ignoring the homogeneous normalization.
| MAQUINA_EXPORT void maquina::new_document | ( | ) |
Close the current document and create a new one.
|
inlinenoexcept |
|
inlinenoexcept |
|
inlinenoexcept |
|
inlinenoexcept |
|
inlinenoexcept |
| std::basic_ostream<_CharT, _Traits>& maquina::operator<< | ( | std::basic_ostream< _CharT, _Traits > & | os, |
| const StringViewBase< C, STDS > & | sv | ||
| ) |
|
inlinenoexcept |
|
inlinenoexcept |
|
inlinenoexcept |
|
inlinenoexcept |
| MAQUINA_EXPORT void maquina::parallel_for | ( | uint32_t | first, |
| uint32_t | last, | ||
| uint32_t | batch_size, | ||
| const std::function< void(uint32_t first, uint32_t last)> & | function | ||
| ) |
Perform a for loop using threads.
| first | The first index of the loop |
| last | The last index of the loop (exclusive) |
| batch_size | An indicative size of the indices batch a thread should compute at each call |
| function | The compute function to call in parallel, with its first and last (exclusive) indices to compute |
| MAQUINA_EXPORT std::wstring maquina::parent_path | ( | const wchar_t * | file | ) |
Return a file parent path.
| MAQUINA_EXPORT void maquina::paste_keys | ( | const Value & | to_paste, |
| const std::vector< std::pair< std::string, std::string > > & | matched_channels, | ||
| Node & | dest_layer, | ||
| float | frame_in, | ||
| float | frame_out, | ||
| float | to_frame, | ||
| PasteMode | mode = PasteMode::Merge, |
||
| PasteType | type = PasteType::Hard |
||
| ) |
Paste values onto matching channels in a targeted layer.
frame_in and frame_out are used in Replace and Insert modes only. frame_in and frame_out define a range in the input curve time space. In Replace mode, the keys of the destination curve in the interval [frame_in+delta, frame_out+delta] will be erased before the paste operation. In Insert mode, an empty interval will be inserted in [frame_in+delta, frame_out+delta] before the paste operation.
| to_paste | The values to be pasted |
| dest_layer | The destination layer |
| frame_in | Starting frame of the pasted values |
| frame_out | Ending frame of the pasted values |
| to_frame | Destination frame in the destination layer |
| mode | Paste mode, merge by default |
| type | Paste type, hard by default |
| MAQUINA_EXPORT void maquina::paste_keys_on_curve | ( | Node & | anim_curve_node, |
| const AnimCurve & | curve, | ||
| float | frame_in, | ||
| float | frame_out, | ||
| float | to_frame, | ||
| PasteMode | mode = PasteMode::Merge |
||
| ) |
Paste the curve keys into an animation curve node.
frame_in and frame_out are used in Replace and Insert modes only. frame_in and frame_out define a range in the input curve time space. In Replace mode, the keys of the destination curve in the interval [frame_in+delta, frame_out+delta] will be erased before the paste operation. In Insert mode, an empty interval will be inserted in [frame_in+delta, frame_out+delta] before the paste operation.
| anim_curve_node | The destination animation curve node |
| curve | The input curve with the keys to paste |
| frame_in | Starting frame of the input range, in the input curve's time space |
| frame_out | Ending frame of the input range, in the input curve's time space |
| to_frame | Destination frame in the destination curve |
| mode | Paste mode, merge by default |
| MAQUINA_EXPORT const std::vector<std::pair<std::string, std::wstring> >& maquina::path_variables | ( | ) |
Return the currently registered path variables.
Path variables are pairs (VARIABLE,path). Variables can be used inside document path like this : "$(VARIABLE)/local_path/file.ext"
| MAQUINA_EXPORT Node maquina::plug_node | ( | const Plug & | plug | ) |
Get a plug node.
| MAQUINA_EXPORT std::wstring maquina::project_directory | ( | ) |
Return the project directory.
This directory is set by the user to a local filesystem path. It is used to prefix a relative file path and turn it into a local filesystem path.
| MAQUINA_EXPORT std::wstring maquina::project_path | ( | const wchar_t * | system_path | ) |
Reduce a file system path to a project file path.
This function is the inverse of system_path(). It makes the path relative to the project directory if possible, and clean the path to its simplest form. If not relative to the current project path, the function then tries to make the path relative to the longest registered path variable.
| MAQUINA_EXPORT Value maquina::read_value | ( | const std::wstring & | file, |
| const Dict & | options | ||
| ) |
Load an object value from a file.
The value can be any kind of Value loaded by a Reader plug-in.
| MAQUINA_EXPORT void maquina::redo | ( | ) |
Make a redo step.
| MAQUINA_EXPORT Node maquina::reference | ( | Node & | root, |
| const std::wstring & | filepath, | ||
| const std::string & | reference_root_name = "" |
||
| ) |
Reference the content of a file into the project.
Load and reference the file content inside the root node. The content will be read-only, only the root node attributes are mutable. Any supported file format (.rumbanode/.guerillanode and .abc right now) can be referenced.
| std::runtime_error | if the file can't be loaded. |
| root | The document node where to add the file content |
| filepath | The file path |
| reference_root_name | Some file format (like alembic) have to gather the file content into a single node. In that case, reference_root_name is the root node name of the file content. If reference_root_name is empty, the filename is used. |
| MAQUINA_EXPORT void maquina::release | ( | ) |
When the Rumba Engine is embedded in an application, this function should be called before to leave the application.
| MAQUINA_EXPORT void maquina::remove_channels_from_layer | ( | const std::vector< Plug > & | channels, |
| Node & | layer | ||
| ) |
Remove the animation graph to remove this animated channel animated from the layer.
| channels | The channel |
| layer | The layer |
| MAQUINA_EXPORT void maquina::remove_key | ( | Plug & | plug, |
| const float | frame | ||
| ) |
Remove the key at frame in the active layer.
| plug | The Plug to remove keys |
| frame | The frame to remove the key |
| MAQUINA_EXPORT void maquina::remove_keys | ( | Node & | anim_layer, |
| bool | normalize = true |
||
| ) |
Remove the active key selection in a layer.
| anim_layer | The working layer |
| normalize | Normalize the resulting curves, true by default |
| MAQUINA_EXPORT void maquina::reparent_layers | ( | Node & | parent, |
| const std::vector< Node > & | layers | ||
| ) |
Move layers.
| parent | The new parent |
| layers | Layers to be moved |
| MAQUINA_EXPORT bool maquina::rig_matrix | ( | Plug & | plug | ) |
Rig a matrix plug.
Return true if the matrix has been rigged
| plug | The plug to be rigged |
| MAQUINA_EXPORT std::vector<maquina::Value> maquina::scene_child | ( | const std::vector< maquina::Value > & | scene_values, |
| const std::string & | child_name | ||
| ) |
| MAQUINA_EXPORT std::vector<maquina::Value> maquina::scene_geometries | ( | const std::vector< maquina::Value > & | scene_values | ) |
| MAQUINA_EXPORT std::vector<maquina::Value> maquina::scene_matrices | ( | const std::vector< maquina::Value > & | scene_values | ) |
| MAQUINA_EXPORT std::vector<maquina::Value> maquina::scene_visibility | ( | const std::vector< maquina::Value > & | scene_values | ) |
| MAQUINA_EXPORT void maquina::select | ( | const std::vector< Node > & | nodes, |
| SelectionMode | mode = SelectionMode::Replace |
||
| ) |
Update the active selection with a list of nodes according to the selection mode.
| nodes | List of nodes to modify the active selection |
| mode | Selection mode, replace by default |
| MAQUINA_EXPORT void maquina::select_delegate | ( | const std::vector< std::string > & | paths, |
| SelectionMode | mode = SelectionMode::Replace |
||
| ) |
Update the active selection with a list of node paths according to the selection mode.
| paths | List of node paths to modify the active selection |
| mode | Selection mode, replace by default |
| MAQUINA_EXPORT std::unordered_set<std::string> maquina::selected_keys_channels | ( | Node & | anim_layer | ) |
Return the channels associated with the active key selection in a layer.
| MAQUINA_EXPORT std::vector<Node> maquina::selection | ( | ) |
Return the active selection.
| MAQUINA_EXPORT std::vector<std::string> maquina::selection_paths | ( | ) |
Return the paths of the active node delegate selection.
| MAQUINA_EXPORT std::string maquina::serialize_nodes | ( | const std::vector< Node > & | nodes, |
| bool | serialize_external_input_connections = false |
||
| ) |
Serialize the nodes in a string.
| nodes | Nodes to be serialized |
| serialize_external_input_connections | true if the input nodes connections on external plugs must be serialized |
| MAQUINA_EXPORT std::string maquina::serialize_pose | ( | const Dict & | pose | ) |
Serialize the pose in a string.
| pose | The pose with the values to serialize |
| MAQUINA_EXPORT void maquina::set_animated_plug_value | ( | Plug & | plug, |
| const Value & | value, | ||
| float | frame, | ||
| bool | create_curve, | ||
| bool | layer_value = false |
||
| ) |
Set a value to plug, regarding the target layer and the current plug animation.
value can be the plug value or an animation curve value to use to animate this plug.
| plug | The plug to set |
| value | The value to set in the plug |
| frame | If the plug is animated or if create_curve is true, this is the frame where to insert the value in the animation curve. |
| create_curve | If true, create an animation curve on the plug if no curve already exist. |
| layer_value | If true, value is directly stored in the layer curve with no modification. If false, value is expressed as a final channel value, being automatically modified and stored in the curve layer as an intermediate value so the evaluated channel value will be equal to asked value. |
| MAQUINA_EXPORT void maquina::set_current_frame | ( | float | frame | ) |
set the current frame
| MAQUINA_EXPORT void maquina::set_path_variables | ( | const std::vector< std::pair< std::string, std::wstring >> & | path_vars | ) |
Register the path variables.
Path variables are pairs (VARIABLE,path). Variables can be used inside document path like this : "$(VARIABLE)/local_path/file.ext"
| MAQUINA_EXPORT void maquina::set_project_directory | ( | const wchar_t * | path | ) |
Set the project directory.
This directory is set by the user to a local filesystem path. It is used to prefix a relative file path and turn it into a local filesystem path.
| MAQUINA_EXPORT void maquina::set_setting | ( | const char * | path, |
| const Value & | value | ||
| ) |
Set a setting value.
Set the setting value using the setting path.
| std::runtime_error | When the setting is not found. |
| MAQUINA_EXPORT Value maquina::setting | ( | const char * | path | ) |
Get a setting value.
Returns the setting value using the setting path.
| std::runtime_error | When the setting is not found. |
| MAQUINA_EXTERN_TEMPLATE MAQUINA_EXPORT Buffer<Imath::V2f> maquina::Shape::write_attribute< Buffer< Imath::V2f > > | ( | const char * | attribute_name, |
| Topology | topology | ||
| ) |
| MAQUINA_EXTERN_TEMPLATE MAQUINA_EXPORT Buffer<Imath::V3f> maquina::Shape::write_attribute< Buffer< Imath::V3f > > | ( | const char * | attribute_name, |
| Topology | topology | ||
| ) |
| MAQUINA_EXTERN_TEMPLATE MAQUINA_EXPORT Buffer<Imath::V4f> maquina::Shape::write_attribute< Buffer< Imath::V4f > > | ( | const char * | attribute_name, |
| Topology | topology | ||
| ) |
| MAQUINA_EXTERN_TEMPLATE MAQUINA_EXPORT IndexedBuffer<Imath::V2f> maquina::Shape::write_attribute< IndexedBuffer< Imath::V2f > > | ( | const char * | attribute_name, |
| Topology | topology | ||
| ) |
| MAQUINA_EXTERN_TEMPLATE MAQUINA_EXPORT IndexedBuffer<Imath::V3f> maquina::Shape::write_attribute< IndexedBuffer< Imath::V3f > > | ( | const char * | attribute_name, |
| Topology | topology | ||
| ) |
| MAQUINA_EXTERN_TEMPLATE MAQUINA_EXPORT IndexedBuffer<Imath::V4f> maquina::Shape::write_attribute< IndexedBuffer< Imath::V4f > > | ( | const char * | attribute_name, |
| Topology | topology | ||
| ) |
| MAQUINA_EXTERN_TEMPLATE MAQUINA_EXPORT SparseBuffer<Imath::V2f> maquina::Shape::write_attribute< SparseBuffer< Imath::V2f > > | ( | const char * | attribute_name, |
| Topology | topology | ||
| ) |
| MAQUINA_EXTERN_TEMPLATE MAQUINA_EXPORT SparseBuffer<Imath::V3f> maquina::Shape::write_attribute< SparseBuffer< Imath::V3f > > | ( | const char * | attribute_name, |
| Topology | topology | ||
| ) |
| MAQUINA_EXTERN_TEMPLATE MAQUINA_EXPORT SparseBuffer<Imath::V4f> maquina::Shape::write_attribute< SparseBuffer< Imath::V4f > > | ( | const char * | attribute_name, |
| Topology | topology | ||
| ) |
| MAQUINA_EXPORT int maquina::solve_cubic | ( | float | a, |
| float | b, | ||
| float | c, | ||
| float | d, | ||
| float * | roots | ||
| ) |
Solve a cubic equation.
| MAQUINA_EXPORT int maquina::solve_cubic | ( | double | a, |
| double | b, | ||
| double | c, | ||
| double | d, | ||
| double * | roots | ||
| ) |
Solve a cubic equation.
| MAQUINA_EXPORT void maquina::start_profiling | ( | ) |
Start an interactive profiling session.
|
inline |
| MAQUINA_EXPORT std::wstring maquina::system_path | ( | const wchar_t * | path | ) |
Expand a document file path in a file system path.
| MAQUINA_EXPORT std::string maquina::system_path_local | ( | const wchar_t * | path | ) |
Expand a document file path in a file system path.
Use this only with an API which does not support wchar_t.
| MAQUINA_EXPORT Node maquina::target_layer | ( | const Plug & | plug | ) |
Return the layer receiving the plug animation.
Returns the layer that will receive the animation for this plug.
| plug | The asset plug |
| MAQUINA_EXPORT void maquina::time_warp_keys | ( | Node & | anim_layer | ) |
Time warp the active key selection using the selection rubberband.
| MAQUINA_EXPORT std::string maquina::to_log | ( | const std::wstring & | s | ) |
Convert a wide string in string to use in the logger functions.
| MAQUINA_EXPORT std::vector<std::shared_ptr<NodeDelegate> > maquina::tool_selection | ( | ) |
Return the active tool delegate selection.
| MAQUINA_EXPORT void maquina::transform_curve_keys | ( | const Plug & | plug, |
| std::unordered_map< float, float > & | original_to_transformed_keys | ||
| ) |
| MAQUINA_EXPORT void maquina::transform_keys | ( | Node & | anim_layer | ) |
Transform the active key selection using the selection rubberband.
| MAQUINA_EXPORT void maquina::undo | ( | ) |
Make a undo step.
| MAQUINA_EXPORT void maquina::undo_blend | ( | float | undo_blend | ) |
Set the undo blend factor of the last modification.
| MAQUINA_EXPORT void maquina::ungroup_layer | ( | Node & | layer_group | ) |
Ungroup layer.
| layer_group | The group layer |
| MAQUINA_EXPORT std::wstring maquina::utf8_to_wstring | ( | const char * | uft8 | ) |
Convert an utf-8 string into a std::wstring.
| void maquina::warn | ( | const char * | format, |
| const Args &... | args | ||
| ) |
Log a warning message using the Rumba logger.
| MAQUINA_EXPORT Value maquina::weighted_sum | ( | const Array & | values, |
| const std::vector< double > & | weights | ||
| ) |
Returns the weighted sum of the input values.
| MAQUINA_EXPORT Workspace maquina::workspace | ( | ) |
Return the workspace node.
| MAQUINA_EXPORT std::string maquina::wstring_to_local | ( | const wchar_t * | str | ) |
Convert a std::wstring into a string in the default system charset.
| MAQUINA_EXPORT std::string maquina::wstring_to_utf8 | ( | const wchar_t * | str | ) |
Convert a std::wstring into an utf-8 string.
| MAQUINA_EXTERN_TEMPLATE class MAQUINA_EXPORT maquina::Buffer< double > |
| MAQUINA_EXTERN_TEMPLATE class MAQUINA_EXPORT maquina::Buffer< float > |
| MAQUINA_EXTERN_TEMPLATE class MAQUINA_EXPORT maquina::Buffer< int32_t > |
| MAQUINA_EXTERN_TEMPLATE class MAQUINA_EXPORT maquina::Buffer< uint32_t > |
| MAQUINA_EXTERN_TEMPLATE class MAQUINA_EXPORT maquina::Buffer< uint8_t > |
| MAQUINA_EXTERN_TEMPLATE class MAQUINA_EXPORT maquina::BufferConst< double > |
| MAQUINA_EXTERN_TEMPLATE class MAQUINA_EXPORT maquina::BufferConst< float > |
| MAQUINA_EXTERN_TEMPLATE class MAQUINA_EXPORT maquina::BufferConst< int32_t > |
| MAQUINA_EXTERN_TEMPLATE class MAQUINA_EXPORT maquina::BufferConst< uint32_t > |
| MAQUINA_EXTERN_TEMPLATE class MAQUINA_EXPORT maquina::BufferConst< uint8_t > |
| MAQUINA_EXTERN_TEMPLATE class MAQUINA_EXPORT maquina::IndexedBuffer< double > |
| MAQUINA_EXTERN_TEMPLATE class MAQUINA_EXPORT maquina::IndexedBuffer< float > |
| MAQUINA_EXTERN_TEMPLATE class MAQUINA_EXPORT maquina::IndexedBuffer< int32_t > |
| MAQUINA_EXTERN_TEMPLATE class MAQUINA_EXPORT maquina::IndexedBuffer< uint32_t > |
| MAQUINA_EXTERN_TEMPLATE class MAQUINA_EXPORT maquina::IndexedBuffer< uint8_t > |
| MAQUINA_EXTERN_TEMPLATE class MAQUINA_EXPORT maquina::IndexedBufferConst< double > |
| MAQUINA_EXTERN_TEMPLATE class MAQUINA_EXPORT maquina::IndexedBufferConst< float > |
| MAQUINA_EXTERN_TEMPLATE class MAQUINA_EXPORT maquina::IndexedBufferConst< int32_t > |
| MAQUINA_EXTERN_TEMPLATE class MAQUINA_EXPORT maquina::IndexedBufferConst< uint32_t > |
| MAQUINA_EXTERN_TEMPLATE class MAQUINA_EXPORT maquina::IndexedBufferConst< uint8_t > |
| MAQUINA_EXTERN_TEMPLATE class MAQUINA_EXPORT maquina::SparseBuffer< double > |
| MAQUINA_EXTERN_TEMPLATE class MAQUINA_EXPORT maquina::SparseBuffer< float > |
| MAQUINA_EXTERN_TEMPLATE class MAQUINA_EXPORT maquina::SparseBuffer< int32_t > |
| MAQUINA_EXTERN_TEMPLATE class MAQUINA_EXPORT maquina::SparseBuffer< uint32_t > |
| MAQUINA_EXTERN_TEMPLATE class MAQUINA_EXPORT maquina::SparseBuffer< uint8_t > |
| MAQUINA_EXTERN_TEMPLATE class MAQUINA_EXPORT maquina::SparseBufferConst< double > |
| MAQUINA_EXTERN_TEMPLATE class MAQUINA_EXPORT maquina::SparseBufferConst< float > |
| MAQUINA_EXTERN_TEMPLATE class MAQUINA_EXPORT maquina::SparseBufferConst< int32_t > |
| MAQUINA_EXTERN_TEMPLATE class MAQUINA_EXPORT maquina::SparseBufferConst< uint32_t > |
| MAQUINA_EXTERN_TEMPLATE class MAQUINA_EXPORT maquina::SparseBufferConst< uint8_t > |