30 #ifndef __vtkSplineRepresentation_h
31 #define __vtkSplineRepresentation_h
48 #define VTK_PROJECTION_YZ 0
49 #define VTK_PROJECTION_XZ 1
50 #define VTK_PROJECTION_XY 2
51 #define VTK_PROJECTION_OBLIQUE 3
72 vtkSetMacro(InteractionState,
int);
82 vtkSetMacro(ProjectToPlane,
int);
83 vtkGetMacro(ProjectToPlane,
int);
84 vtkBooleanMacro(ProjectToPlane,
int);
92 vtkGetMacro(ProjectionNormal,
int);
94 { this->SetProjectionNormal(0); }
96 { this->SetProjectionNormal(1); }
98 { this->SetProjectionNormal(2); }
100 { this->SetProjectionNormal(3); }
108 void SetProjectionPosition(
double position);
109 vtkGetMacro(ProjectionPosition,
double);
125 vtkGetObjectMacro(SelectedHandleProperty,
vtkProperty);
132 vtkGetObjectMacro(SelectedLineProperty,
vtkProperty);
137 virtual void SetNumberOfHandles(
int npts);
138 vtkGetMacro(NumberOfHandles,
int);
145 vtkGetMacro(Resolution,
int);
162 void SetHandlePosition(
int handle,
double x,
double y,
double z);
163 void SetHandlePosition(
int handle,
double xyz[3]);
164 void GetHandlePosition(
int handle,
double xyz[3]);
165 double* GetHandlePosition(
int handle);
175 void SetClosed(
int closed);
176 vtkGetMacro(Closed,
int);
177 vtkBooleanMacro(Closed,
int);
188 double GetSummedLength();
219 void SetLineColor(
double r,
double g,
double b);
226 double LastEventPosition[3];
236 void ProjectPointsToPlane();
237 void ProjectPointsToOrthoPlane();
238 void ProjectPointsToObliquePlane();
248 void HighlightLine(
int highlight);
255 int HighlightHandle(
vtkProp *prop);
256 virtual void SizeHandles();
257 void InsertHandleOnLine(
double* pos);
258 void EraseHandle(
const int&);
263 double LastPickPosition[3];
268 void MovePoint(
double *p1,
double *p2);
269 void Scale(
double *p1,
double *p2,
int X,
int Y);
270 void Translate(
double *p1,
double *p2);
271 void Spin(
double *p1,
double *p2,
double *vpn);
282 void CreateDefaultProperties();
286 void CalculateCentroid();
abstract superclass for all actors, volumes and annotations
void SetProjectionNormalToZAxes()
vtkWidgetRepresentation for a spline.
represents an object (geometry & properties) in a rendered scene
double ProjectionPosition
abstract specification for Viewports
represent surface properties of a geometric object
#define VTK_PROJECTION_OBLIQUE
concrete dataset represents vertices, lines, polygons, and triangle strips
#define VTK_PROJECTION_YZ
dynamic, self-adjusting array of double
window superclass for vtkRenderWindow
vtkCellPicker * LinePicker
create a polygonal sphere centered at the origin
parametric function for 1D interpolating splines
a simple class to control print indentation
vtkSphereSource ** HandleGeometry
vtkProperty * SelectedHandleProperty
vtkProperty * SelectedLineProperty
create an array of quadrilaterals located in a plane
vtkProperty * HandleProperty
vtkProperty * LineProperty
vtkParametricFunctionSource * ParametricFunctionSource
ray-cast cell picker for all kinds of Prop3Ds
vtkCellPicker * HandlePicker
vtkParametricSpline * ParametricSpline
vtkPlaneSource * PlaneSource
void SetProjectionNormalToOblique()
void SetProjectionNormalToYAxes()
represent and manipulate 3D points
void SetProjectionNormalToXAxes()
tessellate parametric functions