pub fn new_with_frustrum(
        fov: f32,
        znear: f32,
        zfar: f32,
        eye: Point3<f32>,
        at: Point3<f32>,
    ) -> ArcBall {
        let mut res = ArcBall {
            at: Point3::new(0.0, 0.0, 0.0),
            yaw: 0.0,
            pitch: 0.0,
            dist: 0.0,
            min_dist: 0.00001,
            max_dist: std::f32::MAX,
            yaw_step: 0.005,
            pitch_step: 0.005,
            min_pitch: 0.01,
            max_pitch: std::f32::consts::PI - 0.01,
            dist_step: 40.0,
            rotate_button: Some(MouseButton::Button1),
            rotate_modifiers: None,
            drag_button: Some(MouseButton::Button2),
            drag_modifiers: None,
            reset_key: Some(Key::Return),
            projection: Perspective3::new(800.0 / 600.0, fov, znear, zfar),
            view: na::zero(),
            proj: na::zero(),
            proj_view: na::zero(),
            inverse_proj_view: na::zero(),
            last_cursor_pos: na::zero(),
            up_axis: Vector3::y(),
        };

        res.look_at(eye, at);

        res
    }
/// Creates a new arc ball camera with default sensitivity values.
Creates a new arc ball camera with default sensitivity values.
Creates a new arc ball camera with default sensitivity values .
pub fn new_with_frustrum(
        fov: f32,
        znear: f32,
        zfar: f32,
        eye: Point3<f32>,
        at: Point3<f32>,
    ) -> ArcBall {
        let mut res = ArcBall {
            at: Point3::new(0.0, 0.0, 0.0),
            yaw: 0.0,
            pitch: 0.0,
            dist: 0.0,
            min_dist: 0.00001,
            max_dist: std::f32::MAX,
            yaw_step: 0.005,
            pitch_step: 0.005,
            min_pitch: 0.01,
            max_pitch: std::f32::consts::PI - 0.01,
            dist_step: 40.0,
            rotate_button: Some(MouseButton::Button1),
            rotate_modifiers: None,
            drag_button: Some(MouseButton::Button2),
            drag_modifiers: None,
            reset_key: Some(Key::Return),
            projection: Perspective3::new(800.0 / 600.0, fov, znear, zfar),
            view: na::zero(),
            proj: na::zero(),
            proj_view: na::zero(),
            inverse_proj_view: na::zero(),
            last_cursor_pos: na::zero(),
            up_axis: Vector3::y(),
        };
        res.look_at(eye, at);
        res
    }
pub fn new_with_frustrum ( fov : f32 , znear : f32 , zfar : f32 , eye : Point3 < f32 > , at : Point3 < f32 > , ) -> ArcBall { let mut res = ArcBall { at : Point3 :: new ( 0.0 , 0.0 , 0.0 ) , yaw : 0.0 , pitch : 0.0 , dist : 0.0 , min_dist : 0.00001 , max_dist : std :: f32 :: MAX , yaw_step : 0.005 , pitch_step : 0.005 , min_pitch : 0.01 , max_pitch : std :: f32 :: consts :: PI - 0.01 , dist_step : 40.0 , rotate_button : Some ( MouseButton :: Button1 ) , rotate_modifiers : None , drag_button : Some ( MouseButton :: Button2 ) , drag_modifiers : None , reset_key : Some ( Key :: Return ) , projection : Perspective3 :: new ( 800.0 / 600.0 , fov , znear , zfar ) , view : na :: zero ( ) , proj : na :: zero ( ) , proj_view : na :: zero ( ) , inverse_proj_view : na :: zero ( ) , last_cursor_pos : na :: zero ( ) , up_axis : Vector3 :: y ( ) , } ; res . look_at ( eye , at ) ; res }
Creates a new arc ball camera with default sensitivity values.
Creates a new arc ball camera with default sensitivity values .
fov
f32
znear
f32
zfar
f32
eye
Point3<f32>
at
Point3<f32>
fov
f32
znear
f32
zfar
f32
eye
Point3<f32>
at
Point3<f32>