16#ifndef __albaInteractorConstraint_h
17#define __albaInteractorConstraint_h
208 void Print(std::ostream& os,
const int tabs);
218 int m_ConstraintModality[3];
221 double m_LowerBound[3];
222 double m_UpperBound[3];
class representing a constraint for the interaction This class is used to store constraint modality p...
void SetStep(int axis, double step)
Set the step value for snap step constraint type for the given axis.
void SetRefSys(albaRefSys *ref_sys)
Copy the contents of another RefSys into the contraint one.
vtkDoubleArray * GetSnapArray(int axis)
Get the array which contains the allowed positions for snap.
void GetBounds(int axis, double *bounds)
Get the bounds interval.
void SetMax(int axis, double min)
Set the max value for snap step constraint type for the given axis.
int GetConstraintPlane()
Return the constraint plane ie an integer from the enum {XY= 0, XZ, YZ} when there are two degree of ...
double GetMin(int axis)
Get the min value for snap step constraint type for the given axis.
void SetMin(int axis, double min)
Set the min value for snap step constraint type for the given axis.
void SetLowerBound(int axis, double lbound)
Set the lower bound for bound constraint type for the given axis.
int GetConstraintModality(int axis)
Get the constraint modality for the given axis.
albaRefSys * m_RefSys
the constraint reference system
void SetConstraintModality(int constraintModalityOnX, int constraintModalityOnY, int constraintModalityOnZ)
Contrain on a specified axis, plane or unconstrained; allowed constraints are LOCK,...
void Reset()
Constraint modality is set to LOCK for all axes, all values of the element struct are set to 0 and po...
double GetStep(int axis)
Get the step value for snap step constraint type for the given axis.
void SetSnapStep(int axis, double min, double max, double step)
Set snap step modality parameters.
void SetBounds(int axis, double *bounds)
Set the bounds interval.
double GetMax(int axis)
Get the max value for snap step constraint type for the given axis.
double GetLowerBound(int axis)
Get the lower bound for bound constraint type for the given axis.
void SetConstraintModality(int axis, int constrainModality)
Set the constraint modality for the given axis; allowed constraint modality are: LOCK,...
albaInteractorConstraint()
void SetSnapArray(int axis, vtkDoubleArray *array)
Set the array which contains the allowed positions for snap.
void DeepCopy(const albaInteractorConstraint *source)
double GetUpperBound(int axis)
Get the upper bound for bound constraint type for the given axis.
int GetNumberOfDOF()
Get the number of axis on which movement is allowed (ie unlocked axis).
int GetConstraintPlaneAxes(int &axis1, int &axis2)
Return the constraint plane axes when there are two degree of freedom for the given movement type.
int GetConstraintAxis()
Return constraint axis when there is only one degree of freedom for the given movement type.
albaInteractorConstraint(const albaInteractorConstraint &source)
Copy constructor to allow object copy.
virtual ~albaInteractorConstraint()
void SetUpperBound(int axis, double ubound)
Set the upper bound for bound constraint type for the given axis.
void SetRefSys(albaRefSys &ref_sys)
CONSTRAINT_MODALITY
The possible constrained modalities for each axis.
albaRefSys * GetRefSys()
Get the constraint reference system, i.e.
void Print(std::ostream &os, const int tabs)
Debug printing of internal data.
class representing reference system
Hold a reference to a vtkObjectBase instance.