28 #ifndef vtkCurveRepresentation_h 29 #define vtkCurveRepresentation_h 31 #include "vtkInteractionWidgetsModule.h" 47 #define VTK_PROJECTION_YZ 0 48 #define VTK_PROJECTION_XZ 1 49 #define VTK_PROJECTION_XY 2 50 #define VTK_PROJECTION_OBLIQUE 3 75 vtkSetMacro(InteractionState,
int);
100 vtkGetMacro(ProjectionNormal,
int);
114 void SetProjectionPosition(
double position);
115 vtkGetMacro(ProjectionPosition,
double);
133 vtkGetObjectMacro(SelectedHandleProperty,
vtkProperty);
142 vtkGetObjectMacro(SelectedLineProperty,
vtkProperty);
149 virtual void SetNumberOfHandles(
int npts) = 0;
150 vtkGetMacro(NumberOfHandles,
int);
158 void SetDirectionalLine(
bool val);
159 vtkGetMacro(DirectionalLine,
bool);
160 vtkBooleanMacro(DirectionalLine,
bool);
168 virtual void SetHandlePosition(
int handle,
double x,
double y,
double z);
169 virtual void SetHandlePosition(
int handle,
double xyz[3]);
170 virtual void GetHandlePosition(
int handle,
double xyz[3]);
171 virtual double* GetHandlePosition(
int handle);
198 virtual double GetSummedLength() = 0;
237 void SetLineColor(
double r,
double g,
double b);
250 void SetCurrentHandleIndex(
int index);
251 vtkGetMacro(CurrentHandleIndex,
int);
259 vtkGetMacro(TranslationAxis,
int);
260 vtkSetClampMacro(TranslationAxis,
int, -1, 2);
286 double LastEventPosition[3];
296 void ProjectPointsToPlane();
297 void ProjectPointsToOrthoPlane();
298 void ProjectPointsToObliquePlane();
305 void HighlightLine(
int highlight);
311 int HighlightHandle(
vtkProp* prop);
312 int GetHandleIndex(
vtkProp* prop);
313 virtual void SizeHandles();
318 virtual int InsertHandleOnLine(
double* pos) = 0;
320 virtual void PushHandle(
double* pos);
321 void EraseHandle(
const int&);
326 double LastPickPosition[3];
332 void MovePoint(
double* p1,
double* p2);
333 void Scale(
double* p1,
double* p2,
int X,
int Y);
334 void Translate(
double* p1,
double* p2);
335 void Spin(
double* p1,
double* p2,
double* vpn);
349 void CreateDefaultProperties();
353 void CalculateCentroid();
362 vtkSetMacro(UseSphere,
bool);
363 vtkGetMacro(UseSphere,
bool);
364 vtkBooleanMacro(UseSphere,
bool);
367 vtkGetMacro(Radius,
double);
369 vtkSetVector3Macro(Center,
double);
370 vtkGetVectorMacro(Center,
double, 3);
372 vtkSetVector3Macro(Direction,
double);
373 vtkGetVectorMacro(Direction,
double, 3);
vtkCellPicker * LinePicker
abstract superclass for all actors, volumes and annotations
vtkWidgetRepresentation base class for a widget that represents an curve that connects control points...
void SetTranslationAxisOff()
Toggles constraint translation axis on/off.
void SetProjectionNormalToZAxes()
represents an object (geometry & properties) in a rendered scene
double ProjectionPosition
vtkProperty * HandleProperty
abstract specification for Viewports
represent surface properties of a geometric object
void SetZTranslationAxisOn()
Toggles constraint translation axis on/off.
vtkProperty * SelectedLineProperty
concrete dataset represents vertices, lines, polygons, and triangle strips
vtkProperty * SelectedHandleProperty
dynamic, self-adjusting array of double
void SetProjectionNormalToYAxes()
vtkTypeBool ProjectToPlane
vtkCellPicker * HandlePicker
vtkPlaneSource * PlaneSource
window superclass for vtkRenderWindow
create a polygonal sphere centered at the origin
Superclass for algorithms that produce only polydata as output.
void SetYTranslationAxisOn()
Toggles constraint translation axis on/off.
a simple class to control print indentation
vtkProperty * LineProperty
void SetProjectionNormalToOblique()
create an array of quadrilaterals located in a plane
void SetProjectionNormalToXAxes()
HandleSource ** HandleGeometry
bool IsTranslationConstrained()
Returns true if ContrainedAxis.
#define VTK_PROJECTION_OBLIQUE
ray-cast cell picker for all kinds of Prop3Ds
void SetXTranslationAxisOn()
Toggles constraint translation axis on/off.
#define VTK_PROJECTION_YZ
represent and manipulate 3D points