|
MayaFlux 0.4.0
Digital-First Multimedia Processing Framework
|
Mutable orbit navigation state. More...
#include <OrbitState.hpp>
Collaboration diagram for MayaFlux::Kinesis::OrbitState:Public Attributes | |
| float | azimuth { 0.0F } |
| Horizontal angle in radians. | |
| float | distance { 5.0F } |
| Radius from focal point. | |
| float | elevation { glm::radians(20.0F) } |
| Vertical angle in radians, clamped away from poles. | |
| float | far_plane { 1000.0F } |
| bool | first_mouse { true } |
| glm::vec3 | focal { 0.0F, 0.0F, 0.0F } |
| World-space orbit target. | |
| float | fov_radians { glm::radians(60.0F) } |
| double | last_x { 0.0 } |
| double | last_y { 0.0 } |
| float | max_distance { 10000.0F } |
| float | min_distance { 0.1F } |
| bool | mmb_held { false } |
| float | near_plane { 0.01F } |
| bool | pan_held { false } |
| float | pan_sensitivity { 0.001F } |
| float | rotate_sensitivity { 0.005F } |
| float | scroll_speed { 0.1F } |
Mutable orbit navigation state.
Stores spherical coordinates relative to a focal point. Eye position is derived each frame: focal + spherical_to_cartesian(azimuth, elevation, distance).
Construct via make_orbit_state(). Update by calling the apply_* free functions on mouse/scroll events, then call compute_orbit_view_transform() each frame.
Definition at line 37 of file OrbitState.hpp.