17#ifndef __albaGizmoScale_H__
18#define __albaGizmoScale_H__
101 void Show(
bool showX,
bool showY,
bool showZ,
bool showIso);
162 bool m_ApplyScaleToVME;
164 double m_CurrentDist;
181 double GetScalingValue();
186 void BuildVector(
double *p1,
double *p2,
double *vec)
const
190 vec[0] = p2[0] - p1[0];
191 vec[1] = p2[1] - p1[1];
192 vec[2] = p2[2] - p1[2];
198 friend class albaGizmoScaleTest;
double albaTimeStamp
type for time varying data timestamps (not for pipelines timestamps!)
Implementation of the message object for the Subject/Observer design pattern.
GUI class for scaling gizmo.
albaGUI is a panel with function to easily create GUI.
Base class for operations and views gizmos.
Basic gizmo component used to perform constrained scaling along one axis.
Gizmo component used to perform isotropic scaling.
Gizmo used to perform constrained scaling along the x, yz axis or the xy, xz, yz plane.
void Show(bool show)
Show the gizmo.
void SetAlwaysVisible(bool alwaysVisible)
Superclass override.
bool GetApplyScaleToVME() const
void SetInput(albaVME *vme)
Set input vme for the gizmo.
void SendTransformMatrixFromGui(albaEventBase *alba_event)
Send matrix to postmultiply to listener.
void Highlight(int component)
Highlight one component and dehighlight other components.
void SetAutoscale(bool autoscale)
Superclass override.
AXIS
gizmo components enum
albaGUI * GetGui()
Return gui owned by the gizmo.
void SetAbsPose(albaMatrix *absPose, albaTimeStamp ts=-1)
Set the gizmo pose.
void SetRenderWindowHeightPercentage(double percentage)
Superclass override.
albaMatrix * GetAbsPose()
Get the gizmo abs pose.
void OnEvent(albaEventBase *alba_event)
Events handling.
void SetApplyScaleToVME(bool val)
void OnEventGizmoGui(albaEventBase *alba_event)
Gizmo components events handling.
virtual ~albaGizmoScale()
void OnEventGizmoComponents(albaEventBase *alba_event)
Gizmo components events handling.
int m_ActiveGizmoComponent
Register the active gizmo component at MOUSE_DOWN.
albaGUIGizmoScale * m_GuiGizmoScale
albaGizmoScale(albaVME *input, albaObserver *listener=NULL, bool buildGUI=true)
void SetRefSys(albaVME *refSys)
Set the vme to be used as reference system, the vme is referenced; default ref sys is vme abs matrix.
void Show(bool showX, bool showY, bool showZ, bool showIso)
albaGizmoScaleIsotropic * m_GSIsotropic
albaMatrix - Time stamped 4x4 Matrix.
Interface implementing the Observer of the Subject/Observer design pattern.