93 #ifndef __vtkSplineWidget_h
94 #define __vtkSplineWidget_h
110 #define VTK_PROJECTION_YZ 0
111 #define VTK_PROJECTION_XZ 1
112 #define VTK_PROJECTION_XY 2
113 #define VTK_PROJECTION_OBLIQUE 3
129 {this->Superclass::PlaceWidget();}
130 void PlaceWidget(
double xmin,
double xmax,
double ymin,
double ymax,
131 double zmin,
double zmax)
132 {this->Superclass::PlaceWidget(xmin,xmax,ymin,ymax,zmin,zmax);}
142 vtkSetMacro(ProjectToPlane,
int);
143 vtkGetMacro(ProjectToPlane,
int);
144 vtkBooleanMacro(ProjectToPlane,
int);
152 vtkGetMacro(ProjectionNormal,
int);
153 void SetProjectionNormalToXAxes()
154 { this->SetProjectionNormal(0); }
155 void SetProjectionNormalToYAxes()
156 { this->SetProjectionNormal(1); }
157 void SetProjectionNormalToZAxes()
158 { this->SetProjectionNormal(2); }
159 void SetProjectionNormalToOblique()
160 { this->SetProjectionNormal(3); }
168 void SetProjectionPosition(
double position);
169 vtkGetMacro(ProjectionPosition,
double);
186 virtual void SetSelectedHandleProperty(
vtkProperty*);
187 vtkGetObjectMacro(SelectedHandleProperty,
vtkProperty);
195 virtual void SetSelectedLineProperty(
vtkProperty*);
196 vtkGetObjectMacro(SelectedLineProperty,
vtkProperty);
201 virtual void SetNumberOfHandles(
int npts);
202 vtkGetMacro(NumberOfHandles,
int);
209 vtkGetMacro(Resolution,
int);
226 void SetHandlePosition(
int handle,
double x,
double y,
double z);
227 void SetHandlePosition(
int handle,
double xyz[3]);
228 void GetHandlePosition(
int handle,
double xyz[3]);
229 double* GetHandlePosition(
int handle);
238 void SetClosed(
int closed);
239 vtkGetMacro(Closed,
int);
240 vtkBooleanMacro(Closed,
int);
251 double GetSummedLength();
262 vtkSetClampMacro(ProcessEvents,
int, 0, 1);
263 vtkGetMacro(ProcessEvents,
int);
264 vtkBooleanMacro( ProcessEvents,
int );
286 static void ProcessEventsHandler(
vtkObject*
object,
292 void OnLeftButtonDown();
293 void OnLeftButtonUp();
294 void OnMiddleButtonDown();
295 void OnMiddleButtonUp();
296 void OnRightButtonDown();
297 void OnRightButtonUp();
307 void ProjectPointsToPlane();
308 void ProjectPointsToOrthoPlane();
309 void ProjectPointsToObliquePlane();
316 void BuildRepresentation();
320 void HighlightLine(
int highlight);
327 int HighlightHandle(
vtkProp *prop);
329 void InsertHandleOnLine(
double* pos);
330 void EraseHandle(
const int&);
339 void MovePoint(
double *p1,
double *p2);
340 void Scale(
double *p1,
double *p2,
int X,
int Y);
341 void Translate(
double *p1,
double *p2);
342 void Spin(
double *p1,
double *p2,
double *vpn);
353 void CreateDefaultProperties();
357 void CalculateCentroid();