Go to the documentation of this file.
28 #ifndef vtkCurveRepresentation_h
29 #define vtkCurveRepresentation_h
31 #include "vtkInteractionWidgetsModule.h"
45 #define VTK_PROJECTION_YZ 0
46 #define VTK_PROJECTION_XZ 1
47 #define VTK_PROJECTION_XY 2
48 #define VTK_PROJECTION_OBLIQUE 3
72 vtkSetMacro(InteractionState,
int);
97 vtkGetMacro(ProjectionNormal,
int);
99 { this->SetProjectionNormal(0); }
101 { this->SetProjectionNormal(1); }
103 { this->SetProjectionNormal(2); }
105 { this->SetProjectionNormal(3); }
115 void SetProjectionPosition(
double position);
116 vtkGetMacro(ProjectionPosition,
double);
134 vtkGetObjectMacro(SelectedHandleProperty,
vtkProperty);
143 vtkGetObjectMacro(SelectedLineProperty,
vtkProperty);
150 virtual void SetNumberOfHandles(
int npts) = 0;
151 vtkGetMacro(NumberOfHandles,
int);
159 virtual void SetHandlePosition(
int handle,
double x,
double y,
double z);
160 virtual void SetHandlePosition(
int handle,
double xyz[3]);
161 virtual void GetHandlePosition(
int handle,
double xyz[3]);
162 virtual double* GetHandlePosition(
int handle);
189 virtual double GetSummedLength() = 0;
228 void SetLineColor(
double r,
double g,
double b);
239 double LastEventPosition[3];
249 void ProjectPointsToPlane();
250 void ProjectPointsToOrthoPlane();
251 void ProjectPointsToObliquePlane();
258 void HighlightLine(
int highlight);
264 int HighlightHandle(
vtkProp *prop);
265 virtual void SizeHandles();
266 virtual void InsertHandleOnLine(
double* pos) = 0;
267 virtual void PushHandle(
double* pos);
268 void EraseHandle(
const int&);
273 double LastPickPosition[3];
279 void MovePoint(
double *p1,
double *p2);
280 void Scale(
double *p1,
double *p2,
int X,
int Y);
281 void Translate(
double *p1,
double *p2);
282 void Spin(
double *p1,
double *p2,
double *vpn);
293 void CreateDefaultProperties();
297 void CalculateCentroid();
represent and manipulate 3D points
void SetProjectionNormalToYAxes()
void SetProjectionNormalToOblique()
#define VTK_PROJECTION_YZ
vtkSphereSource ** HandleGeometry
vtkCellPicker * LinePicker
vtkWidgetRepresentation base class for a widget that represents an curve that connects control points...
vtkProperty * SelectedHandleProperty
create an array of quadrilaterals located in a plane
window superclass for vtkRenderWindow
#define VTK_PROJECTION_OBLIQUE
double ProjectionPosition
create a polygonal sphere centered at the origin
represents an object (geometry & properties) in a rendered scene
a simple class to control print indentation
void SetProjectionNormalToZAxes()
abstract specification for Viewports
vtkProperty * HandleProperty
abstract superclass for all actors, volumes and annotations
vtkCellPicker * HandlePicker
concrete dataset represents vertices, lines, polygons, and triangle strips
vtkProperty * SelectedLineProperty
vtkTypeBool ProjectToPlane
dynamic, self-adjusting array of double
represent surface properties of a geometric object
vtkProperty * LineProperty
ray-cast cell picker for all kinds of Prop3Ds
void SetProjectionNormalToXAxes()
vtkPlaneSource * PlaneSource