|
cgv
|
Public Types | |
| enum class | Mode { kTranslation , kRotation , kScale , kModel } |
Public Member Functions | |
| std::string | get_type_name () const override |
| overload to return the type name of this object. By default the type interface is queried over get_type. | |
| bool | init (cgv::render::context &) override |
| this method is called after creation or recreation of the context, return whether all necessary functionality is supported | |
| void | clear (cgv::render::context &) override |
| clear all objects living in the context like textures or display lists | |
| Mode | get_mode () const |
| void | set_mode (Mode mode) |
| vec3 | get_scale () const |
| void | set_scale (const vec3 &scale) |
Public Member Functions inherited from cgv::app::gizmo | |
| void | finish_frame (cgv::render::context &) override |
| this method is called in one pass over all drawables after drawing | |
| bool | handle (cgv::gui::event &e) override |
| overload and implement this method to handle events | |
| void | stream_help (std::ostream &os) override |
| overload to stream help information to the given output stream | |
| GizmoOrientation | get_orientation () const |
| void | set_orientation (GizmoOrientation orientation) |
| vec3 | get_position () const |
| void | set_position (const vec3 &position) |
| quat | get_rotation () const |
| void | set_rotation (const quat &rotation) |
Public Member Functions inherited from cgv::base::node | |
| node (const std::string &name="") | |
| construct from name | |
| node_ptr | get_parent () const |
| return the parent node | |
| base_ptr | get_root () const |
| return the root node by traversing parents until no more parent is available | |
| void | set_parent (node_ptr _parent) |
| set a new parent node | |
| node_ptr | get_node () |
| cast upward to node | |
| const_node_ptr | get_node_const () |
| cast upward to const node | |
| std::string | get_type_name () const |
| overload to return the type name of this object | |
Public Member Functions inherited from cgv::base::named | |
| named (const std::string &name="") | |
| construct from name | |
| const std::string & | get_name () const |
| return the parent node | |
| void | set_name (const std::string &_name) |
| set a new parent node | |
| named_ptr | get_named () |
| cast upward to named | |
| const_named_ptr | get_named_const () |
| cast upward to const named | |
Public Member Functions inherited from cgv::base::base | |
| virtual std::string | get_default_options () const |
| overload to provide default options for registration | |
| std::string | get_name_or_type_name () const |
| determine name of instance by checking cgv::base::named interface and in failure fallback to get_type_name() | |
| virtual void | on_register () |
| overload to handle register events that is sent after the instance has been registered | |
| virtual void | unregister () |
| overload to handle unregistration of instances | |
| virtual bool | on_exit_request () |
| overload to handle the appication exit request, return true if exiting is allowed and false otherwise | |
| virtual void | stream_stats (std::ostream &) |
| overload to show the content of this object | |
| virtual data::ref_ptr< group, true > | get_group () |
| perform downcast to group | |
| virtual data::ref_ptr< const named, true > | get_named_const () const |
| perform downcast to const named | |
| virtual data::ref_ptr< const node, true > | get_node_const () const |
| perform downcast to const node | |
| virtual data::ref_ptr< const group, true > | get_group_const () const |
| perform downcast to const group | |
| template<class T > | |
| data::ref_ptr< T, true > | cast () |
| cast to arbitrary class, but use the casts to named, node and group from the interface | |
| template<class T > | |
| data::ref_ptr< const T, true > | cast_const () |
| const cast to arbitrary class, but use the casts to named, node and group from the interface | |
| template<class T > | |
| T * | get_interface () |
| use dynamic type cast to check for the given interface | |
| template<class T > | |
| const T * | get_const_interface () const |
| use dynamic type cast to check for the given interface | |
| virtual void | update () |
| this virtual update allows for example to ask a view to update the viewed value. The default implementation is empty. | |
| virtual void * | get_user_data () const |
| this virtual method allows to pass application specific data for internal purposes | |
| virtual bool | self_reflect (cgv::reflect::reflection_handler &) |
| used for simple self reflection | |
| virtual std::string | get_property_declarations () |
| return a semicolon separated list of property declarations | |
| virtual bool | set_void (const std::string &property, const std::string &value_type, const void *value_ptr) |
| abstract interface for the setter of a dynamic property. | |
| virtual void | on_set (void *member_ptr) |
| this callback is called when the set_void method has changed a member and can be overloaded in derived class | |
| virtual bool | get_void (const std::string &property, const std::string &value_type, void *value_ptr) |
| abstract interface for the getter of a dynamic property. | |
| virtual bool | call_void (const std::string &method, const std::vector< std::string > ¶m_value_types, const std::vector< const void * > ¶m_value_ptrs, const std::string &result_type="", void *result_value_ptr=0) |
| abstract interface to call an action | |
| void | set (const std::string &property, const char *value) |
| specialization of set method to support const char* as strings | |
| template<typename T > | |
| void | set (const std::string &property, const T &value) |
| set a property of the element to the given value and perform standard conversions if necessary. | |
| template<typename T > | |
| T | get (const std::string &property) |
| query a property of the element and perform standard conversions if necessary. | |
| void | multi_set (const std::string &property_assignments, bool report_error=true) |
| set several properties | |
| bool | is_property (const std::string &property_name, std::string *type_name=0) |
| check if the given name specifies a property. | |
| void * | find_member_ptr (const std::string &property_name, std::string *type_name=0) |
| find a member pointer by name. | |
Public Member Functions inherited from cgv::data::ref_counted | |
| int | get_ref_count () const |
| read access to current count | |
Public Member Functions inherited from cgv::gui::event_handler | |
| event_handler () | |
| default construction | |
| bool | grab_focus () |
| grab the focus in all parent nodes | |
| bool | add_key_control (const std::string &property, const std::string &options, cgv::base::group_ptr group=cgv::base::group_ptr()) |
| add a key control for the given property with the given options. | |
Public Member Functions inherited from cgv::base::traverse_policy | |
| traverse_policy (int _policy=TP_ALL+TP_STOP_ON_SUCCESS, bool _active=true, int _focus=-1) | |
| construct default traverse policy that visits everything | |
| int | get_policy () const |
| return the policy without the stop on success flag | |
| bool | stop_on_success () const |
| return whether to stop on success | |
| bool | stop_on_failure () const |
| return whether to stop on failure | |
| void | set_policy (int _policy) |
| set a new policy, always add stop on success flag if needed | |
| int | get_focused_child () const |
| return the focused child or -1 if none is focused | |
| void | set_focused_child (int _focused_child) |
| set the focused child | |
| bool | get_active () const |
| return whether the current node is active | |
| void | set_active (bool _active) |
| set the active flag of the current node | |
Public Member Functions inherited from cgv::render::drawable | |
| drawable () | |
| default construction | |
| void | hide () |
| hide the drawable | |
| void | show () |
| show the drawable | |
| bool | is_visible () const |
| check whether the drawable is visible | |
| context * | get_context () const |
| access the current context. The context will be available latestly in the init method but not in the contructor. | |
| void | set_context (context *_ctx) |
| set the current focus context, this should only be called by the context itself | |
| view * | find_view_as_node (size_t view_idx=0) const |
| convenience function to find the view control in the current hierarchy | |
| bool | get_world_location (int x, int y, const view &V, dvec3 &world_location, double *window_z_ptr=0) const |
| use given view together with depth buffer of context in order to compute the world location of the point at mouse pointer location (x,y) | |
| void | post_redraw () |
| posts a redraw event to the current context if one is available | |
| void | force_redraw () |
| forces a redraw right now. This cannot be called from init, init_frame, draw, finish_draw, finish_frame and clear | |
| virtual void | resize (unsigned int w, unsigned int h) |
| callback to announce resizing of the output window | |
| virtual void | init_frame (context &) |
| this method is called in one pass over all drawables before the draw method | |
| virtual void | draw (context &) |
| overload to draw the content of this drawable | |
| virtual void | finish_draw (context &) |
| this method is called when the current drawable is left in a tree traversal that calls the draw method | |
| virtual void | after_finish (context &) |
| this method is called in one pass over all drawables after finish frame | |
Public Attributes | |
| std::function< void(GizmoAction, Mode)> | on_change |
Public Attributes inherited from cgv::app::gizmo | |
| float | size_scale = 1.0f |
| bool | keep_screen_size_constant = true |
| bool | lock_size_during_interaction = false |
Additional Inherited Members | |
Protected Types inherited from cgv::app::gizmo | |
| enum class | InteractionFeature { kNone = 0 , kAxis , kPlane , kCenter } |
| enum class | AxisId { kX = 0 , kY = 1 , kZ = 2 } |
Protected Member Functions inherited from cgv::app::gizmo | |
| float | get_size () const |
| const cgv::render::view * | get_view () const |
| void | set_geometry_out_of_date () |
| bool | captured_mouse () const |
| bool | is_hovered () const |
| int | axis_id_to_index (AxisId axis) const |
| AxisId | index_to_axis_id (int idx) const |
| vec3 | get_axis (int index) const |
| vec3 | get_axis_mask (InteractionFeature feature, AxisId axis_id) const |
Protected Member Functions inherited from cgv::base::base | |
| virtual | ~base () |
| make destructor virtual and not accessible from outside | |
Protected Member Functions inherited from cgv::data::ref_counted | |
| ref_counted () | |
| constructor initializes the count to 0 | |
| void | set_ref_count (int c) const |
| write access is also const to allow ref counted pointers to const instances | |
Static Protected Member Functions inherited from cgv::base::base | |
| template<class T > | |
| static data::ref_ptr< T, true > | cast_dynamic (base *b) |
| use dynamic cast for upcast to given class | |
Protected Attributes inherited from cgv::app::gizmo | |
| InteractionFeature | _interaction_feature = InteractionFeature::kNone |
| AxisId | _interaction_axis_id = AxisId::kX |
| plane | _interaction_plane |
| cgv::math::ray3 | _drag_start_ray |
| float | _drag_start_t = 0.0f |
Protected Attributes inherited from cgv::base::node | |
| node_ptr | parent |
| store a pointer to the parent node | |
Protected Attributes inherited from cgv::base::named | |
| std::string | name |
| store the name as a string | |
Protected Attributes inherited from cgv::base::traverse_policy | |
| TraversePolicy | policy |
| bool | active |
| int | focus |
Definition at line 16 of file transformation_gizmo.h.
|
strong |
Definition at line 18 of file transformation_gizmo.h.
| cgv::app::transformation_gizmo::transformation_gizmo | ( | ) |
Definition at line 10 of file transformation_gizmo.cxx.
|
overridevirtual |
clear all objects living in the context like textures or display lists
Implements cgv::app::gizmo.
Definition at line 51 of file transformation_gizmo.cxx.
References cgv::render::renderer::clear(), and cgv::render::cone_renderer::clear().
| transformation_gizmo::Mode cgv::app::transformation_gizmo::get_mode | ( | ) | const |
Definition at line 63 of file transformation_gizmo.cxx.
| vec3 cgv::app::transformation_gizmo::get_scale | ( | ) | const |
Definition at line 74 of file transformation_gizmo.cxx.
|
inlineoverridevirtual |
overload to return the type name of this object. By default the type interface is queried over get_type.
overload to return the type name of this object
Reimplemented from cgv::app::gizmo.
Definition at line 27 of file transformation_gizmo.h.
|
overridevirtual |
this method is called after creation or recreation of the context, return whether all necessary functionality is supported
Implements cgv::app::gizmo.
Definition at line 35 of file transformation_gizmo.cxx.
References cgv::render::renderer::init(), and cgv::render::rectangle_renderer::init().
| void cgv::app::transformation_gizmo::set_mode | ( | Mode | mode | ) |
Definition at line 67 of file transformation_gizmo.cxx.
| void cgv::app::transformation_gizmo::set_scale | ( | const vec3 & | scale | ) |
Definition at line 78 of file transformation_gizmo.cxx.
| std::function<void(GizmoAction, Mode)> cgv::app::transformation_gizmo::on_change |
Definition at line 41 of file transformation_gizmo.h.