17#ifndef __albaGizmoPath_h
18#define __albaGizmoPath_h
32class albaVMEPolylineSpline;
55 ID_LEFT_TEXT_SIDE = 0,
69 m_ConstraintPolyline = constraintPolyline;
115 static void BuildVector(
double p0[3],
double p1[3],
double vOut[3]);
118 static void BuildVector(
double coeff,
const double *inVector,
double *outVector);
120 static void AddVectors(
double p0[3],
double p1[3],
double sum[3]);
Implementation of the message object for the Subject/Observer design pattern.
albaGUI is a panel with function to easily create GUI.
Base class for operations and views gizmos.
Gizmo constrained to arbitrary path...
void SetInput(albaVME *vme)
This method is used to change the input: this VME is used only to reparent the gizmo to the root.
void SetColor(double col[3])
Set the gizmo color.
albaVMEGizmo * GetOutput()
return the gizmo object
vtkLineSource * m_LineSource
albaMatrix * GetAbsPose()
Get the gizmo abs pose.
void SetVersor(int axis, double versor[3], albaMatrix &matrix)
double m_CurvilinearAbscissa
void FindBoundaryVerticesID(double s, int &idMin, int &idMax, double &sFromIdMin)
void Show(bool show)
Show/Hide the gizmos using actor visibility instead of pipe creation/destruction: this is used for fa...
void OnEvent(albaEventBase *alba_event)
Events handling method.
double GetCurvilinearAbscissa()
void SetConstraintPolyline(albaVME *constraintPolyline)
Set the constraint polyline: any VME can be provided but its output must be a albaVMEOutputPolyline.
void SetLineLength(double lineLength)
set the length of the gizmo default representation ie a 2d line REFACTOR NOTE: graphical representati...
void SetConstraintModalityToBounds()
void SetCurvilinearAbscissa(double s)
Set position along constraint polyline.
static void BuildVector(double coeff, const double *inVector, double *outVector)
int GetConstraintModality()
albaInteractorGenericMouse * m_LeftMouseInteractor
void SetConstraintModalityToFree()
void ComputeLocalPointPositionBetweenVertices(double distP0s, int idP0, int idP1, double pOut[3])
void SetConstraintModalityToSnapVertex()
Set/Get the gizmo moving modality, default is free.
albaGizmoPath(albaVME *inputVme, albaObserver *Listener=NULL, const char *name="GizmoPath", int textVisibility=0)
albaInteractorCompositorMouse * m_GizmoInteractor
static void AddVectors(double p0[3], double p1[3], double sum[3])
albaVMEGizmo * m_VmeGizmoPath
static void BuildVector(double p0[3], double p1[3], double vOut[3])
void FindGizmoAbsPose(double s)
albaVME * m_ConstraintPolyline
void Constructor(albaVME *imputVme, albaObserver *listener, const char *name)
bool GetSideTextPosition()
void SetSideTextPosition(bool leftRight=ID_LEFT_TEXT_SIDE)
@ CONSTRAINT_MODALITY_NUMBERS
void ComputeLocalNormal(int idP0, int idP1, double viewUp[3], double normal[3])
Associates instances of albaInteractorGenericMouse to mouse buttons and ctrl/shift keys combinations.
Constrained interaction with mouse device.
albaMatrix - Time stamped 4x4 Matrix.
Interface implementing the Observer of the Subject/Observer design pattern.
albaString - performs common string operations on c-strings.