summaryrefslogtreecommitdiff
path: root/common/project.h
diff options
context:
space:
mode:
authorleo2005-02-11 19:13:24 +0000
committerleo2005-02-11 19:13:24 +0000
commite9cf166ff3a507f1bb8551a0efa8fc67273c2b3c (patch)
tree817f7ff049bcc5ab50f80be2e9a94133cf774992 /common/project.h
parentc4eb0fc66d5ae23c06eef729c1d817aae4ac4866 (diff)
More mouse overlay improvements, changed rotations to use quaternions.
git-svn-id: http://svn.leocad.org/trunk@377 c7d43263-9d01-0410-8a33-9dba5d9f93d6
Diffstat (limited to 'common/project.h')
-rw-r--r--common/project.h14
1 files changed, 9 insertions, 5 deletions
diff --git a/common/project.h b/common/project.h
index cd23d3a..8c57eb7 100644
--- a/common/project.h
+++ b/common/project.h
@@ -150,11 +150,14 @@ protected:
bool GetSelectionCenter(Point3& Center) const;
void CalculateStep();
void MoveSelectedObjects(const Vector3& Delta);
- void RotateSelectedObjects(float x, float y, float z);
+ void RotateSelectedObjects(const Vector3& Delta);
void SnapVector(Vector3& Delta, Vector3& Leftover) const;
+ void SnapRotationVector(Vector3& Delta, Vector3& Leftover) const;
// Deprecated compatibility functions.
// TODO: Update function calls to use the math library.
+ void RotateSelectedObjects(float x, float y, float z)
+ { RotateSelectedObjects(Vector3(x, y, z)); };
inline void MoveSelectedObjects(float x, float y, float z)
{ MoveSelectedObjects(Vector3(x, y, z)); };
void SnapPoint(float *point, float *reminder) const
@@ -193,6 +196,7 @@ protected:
float m_fTrack[3];
int m_nMouse;
Vector3 m_MouseSnapLeftover;
+ Vector3 m_MouseTotalDelta;
// Mouse control overlays.
typedef enum
@@ -203,20 +207,20 @@ protected:
LC_OVERLAY_Z,
LC_OVERLAY_XY,
LC_OVERLAY_XZ,
- LC_OVERLAY_YZ,
- LC_OVERLAY_CAMERA
+ LC_OVERLAY_YZ
} LC_OVERLAY_MODES;
int m_OverlayMode;
bool m_OverlayActive;
- float m_OverlayScale;
+ float m_OverlayScale[4];
Point3 m_OverlayCenter;
Point3 m_OverlayTrackStart;
Vector3 m_OverlayDelta;
void MouseUpdateOverlays(int x, int y);
void ActivateOverlay();
+ void UpdateOverlayScale();
- void LoadViewportProjection();
+ void LoadViewportProjection(int Viewport);
bool SetActiveViewport(int x, int y);
bool StopTracking(bool bAccept);
void StartTracking(int mode);