13 #include "vtdata/HeightField.h"
37 vtFlyer(
float fSpeed = 1.0f,
bool bAllowRoll =
false);
41 void SetSpeed(
float fSpeed) { m_fSpeed = fSpeed; }
46 void SetAlwaysMove(
bool bMove);
47 void SetMultiplier(
float fMult) { m_fMult = fMult; }
51 enum DOF { DOF_X = 0, DOF_Y, DOF_Z, DOF_PITCH, DOF_YAW, DOF_ROLL };
52 void SetDOF(DOF dof,
bool bTrue) { m_bDOF[dof] = bTrue; }
53 bool GetDOF(DOF dof) {
return m_bDOF[dof]; }
59 void DoKeyNavigation();
65 float m_fCurrentSpeed;
100 void SetExag(
bool bDo) { m_bExag = bDo; }
101 bool GetExag() {
return m_bExag; }
149 void SetSpeed(
float fSpeed) { m_fSpeed = fSpeed; }
150 float GetSpeed() {
return m_fSpeed; }
176 void SetVerticalVelocity(
float velocity);
216 void OnKey(
int key,
int flags);
220 float m_flastmovex, m_flastmovey;
251 bool GetMaintain() {
return m_bMaintain; }
256 bool IsVerticallyMobile();
262 float m_fMaintainHeight;
264 float m_fMinGroundOffset;
293 void SetPivotPoint(
const FPoint3 &pos) { m_Pivot = pos; }
294 FPoint3 GetPivotPoint()
const {
return m_Pivot; }
296 void SetRotateButton(
int button,
int modifier = 0,
bool bExact =
true);
297 void SetZoomButton(
int button,
int modifier = 0,
bool bExact =
true);
307 void SetTrans(
const FPoint3 &trans) { m_Trans = trans; }
308 void Translate(
const FPoint3 &trans) { m_Trans += trans; }
309 FPoint3 GetTrans()
const {
return m_Trans; }
312 void SetState(
const FPoint3 *state);
326 FPoint3 m_Pos, m_Start, m_Trans, m_Pivot;
337 int m_rotate_modifier;
343 int m_trans_modifier;
348 FPoint3 m_trans_min, m_trans_max;