|
Rumba C++ SDK
|
A value with geometrical attributes. Base of all shape values. More...
#include <Shape.h>
Classes | |
| struct | Attribute |
| A Shape attribute, with name, value and topology. More... | |
| class | Attributes |
| An shape's attribute iteration. More... | |
Public Types | |
| enum | Topology { constant =0, vertex, face, face_varying } |
| The different attribute topologies. More... | |
Public Member Functions | |
| Shape () | |
| Shape (const Value &v) | |
| Cast a Value object in Shape. More... | |
| bool | has_attribute (const char *attribute_name, Topology topology) const |
| Test if the shape has this attribute. More... | |
| template<typename T > | |
| T | write_attribute (const char *attribute_name, Topology topology) |
| Get a write access to an attribute. More... | |
| const Value | read_attribute (const char *attribute_name, Topology topology) const |
| Get a read access to an attribute. More... | |
| bool | set_attribute (const char *name, Topology topology, const Value &value) |
| Set an attribute. More... | |
| bool | remove_attribute (const char *name, Topology topology) |
| Remove an attribute. More... | |
| void | finalize () |
| Finalize the shape after deformation. More... | |
| size_t | topology_size (Topology topology) const |
| Get the number of faces, edges or vertices. More... | |
| Attributes | read_attributes () const |
| Return a read-only attribute iteration. More... | |
Public Member Functions inherited from maquina::Value | |
| Value () | |
| Value (Value &&other)=default | |
| Value (const Value &other)=default | |
| Value & | operator= (Value &&other)=default |
| Value & | operator= (const Value &other)=default |
| virtual | ~Value ()=default |
| Value | duplicate () const |
| Duplicate the value. More... | |
| bool | as_bool () const |
| Returns the value as a bool. More... | |
| int | as_int () const |
| Returns the value as an integer. More... | |
| float | as_float () const |
| Returns the value as a float. More... | |
| double | as_double () const |
| Returns the value as a double. More... | |
| const std::string & | as_string () const |
| Returns the value as a string. More... | |
| std::wstring | as_wstring () const |
| Returns the value as a wstring. More... | |
| Imath::V2f | as_V2f () const |
| Returns the value as a V2f. More... | |
| Imath::V3f | as_V3f () const |
| Returns the value as a V3f. More... | |
| Imath::V4f | as_V4f () const |
| Returns the value as a V4f. More... | |
| const Imath::V2d & | as_V2d () const |
| Returns the value as a V2d. More... | |
| const Imath::V3d & | as_V3d () const |
| Returns the value as a V3d. More... | |
| const Imath::V4d & | as_V4d () const |
| Returns the value as a V4d. More... | |
| const Imath::V2i & | as_V2i () const |
| Returns the value as a V2i. More... | |
| const Imath::V3i & | as_V3i () const |
| Returns the value as a V3i. More... | |
| const Imath::V4i & | as_V4i () const |
| Returns the value as a V4i. More... | |
| Imath::M44f | as_M44f () const |
| Returns the value as a M44f. More... | |
| const Imath::M44d & | as_M44d () const |
| Returns the value as a M44d. More... | |
| const Imath::Box3f & | as_Box3f () const |
| Returns the value as a Box3f. More... | |
| const Imath::Color4f & | as_Color4f () const |
| Returns the value as a Color4f. More... | |
| Imath::Quatf | as_Quatf () const |
| Returns the value as a Quatf. More... | |
| const Imath::Quatd & | as_Quatd () const |
| Returns the value as a Quatd. More... | |
| std::shared_ptr< const UserData > | as_user_data () const |
| Returns the value as a user data. More... | |
| StringView | type_name () const |
| Return the type name of the Value. More... | |
| virtual bool | has_node_delegate () const |
| Check if this value can produces a NodeDelegate. More... | |
| virtual std::shared_ptr< NodeDelegate > | node_delegate (const std::shared_ptr< NodeDelegate > &parent, const StringView &name) const |
| bool | operator== (const Value &o) const |
| Compare the two values. More... | |
| bool | operator!= (const Value &o) const |
| bool | is_instance (const char *value_type_name) const |
| Check if this type derives from another value type. More... | |
| operator bool () const | |
| Value (bool) | |
| Create a boolean value. More... | |
| Value (int) | |
| Create an integer value. More... | |
| Value (float) | |
| Create a float value. More... | |
| Value (double) | |
| Create a double value (stored in a float right now) More... | |
| Value (const char *string) | |
| Create a string value. More... | |
| Value (const wchar_t *string) | |
| Create a string value. More... | |
| Value (const std::string &string) | |
| Create a string value. More... | |
| Value (const std::wstring &string) | |
| Create a wide string value. More... | |
| Value (const Imath::V2f &) | |
| Create a Imath::V2f value. More... | |
| Value (const Imath::V3f &) | |
| Create a Imath::V3f value. More... | |
| Value (const Imath::V4f &) | |
| Create a Imath::V4f value. More... | |
| Value (const Imath::V2d &) | |
| Create a Imath::V2d value. More... | |
| Value (const Imath::V3d &) | |
| Create a Imath::V3d value. More... | |
| Value (const Imath::V4d &) | |
| Create a Imath::V4d value. More... | |
| Value (const Imath::V2i &) | |
| Create a Imath::V2i value. More... | |
| Value (const Imath::V3i &) | |
| Create a Imath::V3i value. More... | |
| Value (const Imath::V4i &) | |
| Create a Imath::V4i value. More... | |
| Value (const Imath::Color4f &) | |
| Create a Imath::Color4f value. More... | |
| Value (const Imath::M44f &) | |
| Create a Imath::M44f value. More... | |
| Value (const Imath::M44d &) | |
| Create a Imath::M44d value. More... | |
| Value (const Imath::Box3f &) | |
| Create a Imath::Box3f value. More... | |
| Value (const Imath::Quatf &) | |
| Create a Imath::Quatf value. More... | |
| Value (const Imath::Quatd &) | |
| Create a Imath::Quatd value. More... | |
| Value (const std::shared_ptr< const UserData > &user_data) | |
| Create a user data value. More... | |
Additional Inherited Members | |
Static Public Member Functions inherited from maquina::Value | |
| static bool | validate_type_name (const char *type_name) |
| Return true if the name is a valid type name. More... | |
| static Value | get_default_value (const char *type_name) |
| Return a default value for a given type. More... | |
Static Public Attributes inherited from maquina::Value | |
| static const Value | default_value |
| The default value. More... | |
A value with geometrical attributes. Base of all shape values.
| maquina::Shape::Shape | ( | ) |
| maquina::Shape::Shape | ( | const Value & | v | ) |
| void maquina::Shape::finalize | ( | ) |
Finalize the shape after deformation.
Normalizes the ending points of a periodic nurbs curve.
| bool maquina::Shape::has_attribute | ( | const char * | attribute_name, |
| Topology | topology | ||
| ) | const |
Test if the shape has this attribute.
Get a read access to an attribute.
If it doesn't exists, is returns a default attribute.
| Attributes maquina::Shape::read_attributes | ( | ) | const |
Return a read-only attribute iteration.
| bool maquina::Shape::remove_attribute | ( | const char * | name, |
| Topology | topology | ||
| ) |
Remove an attribute.
Return true if the attribute has been found.
Set an attribute.
| size_t maquina::Shape::topology_size | ( | Topology | topology | ) | const |
Get the number of faces, edges or vertices.
| MAQUINA_EXTERN_TEMPLATE MAQUINA_EXPORT SparseBuffer< float > maquina::Shape::write_attribute< SparseBuffer< float > > | ( | const char * | attribute_name, |
| Topology | topology | ||
| ) |
Get a write access to an attribute.
If the attribute doesn't exist, the attribute is created. If the channel exists it will be replaced by this one. Returns an empty buffer if the name or the topology are invalid for this object.