|
MayaFlux 0.4.0
Digital-First Multimedia Processing Framework
|
| MAYAFLUX_API void MayaFlux::bind_orbit_preset | ( | const std::shared_ptr< Core::Window > & | window, |
| const std::shared_ptr< Buffers::RenderProcessor > & | processor, | ||
| const Kinesis::OrbitConfig & | config = {}, |
||
| const Kinesis::OrbitKeyMap & | key_map = {}, |
||
| const std::string & | name = "default" |
||
| ) |
Bind the orbit navigation controller to a window and render processor.
Registers event handlers under the prefix "vp_<name>_". MMB drag rotates around the focal point; holding key_map.pan_modifier during MMB drag pans the focal point instead. Scroll dollies the distance. Ortho snap slots set to std::nullopt are silently skipped.
| window | Window supplying input events |
| processor | RenderProcessor that receives the ViewTransform source |
| config | Orbit tuning parameters |
| key_map | Key assignments; defaults to Shift pan modifier + KP snaps |
| name | Unique prefix for registered events; must be unique per window |
Definition at line 162 of file ViewportPreset.cpp.
References MayaFlux::Kinesis::apply_orbit_pan(), MayaFlux::Kinesis::apply_orbit_rotate(), MayaFlux::Kinesis::apply_orbit_scroll(), MayaFlux::Kinesis::compute_orbit_view_transform(), MayaFlux::Kinesis::make_orbit_state(), MayaFlux::IO::Middle, on_key_pressed(), on_key_released(), on_mouse_move(), on_mouse_pressed(), on_mouse_released(), on_scroll(), MayaFlux::Kinesis::OrbitKeyMap::ortho_flip, MayaFlux::Kinesis::OrbitKeyMap::ortho_front, MayaFlux::Kinesis::OrbitKeyMap::ortho_right, MayaFlux::Kinesis::OrbitKeyMap::ortho_top, and MayaFlux::Kinesis::OrbitKeyMap::pan_modifier.
Referenced by bind_orbit_preset(), and bind_viewport_preset().
Here is the call graph for this function:
Here is the caller graph for this function: