48 #ifndef vtkImageTracerWidget_h
49 #define vtkImageTracerWidget_h
52 #include "vtkInteractionWidgetsModule.h"
54 VTK_ABI_NAMESPACE_BEGIN
69 #define VTK_ITW_PROJECTION_YZ 0
70 #define VTK_ITW_PROJECTION_XZ 1
71 #define VTK_ITW_PROJECTION_XY 2
72 #define VTK_ITW_SNAP_CELLS 0
73 #define VTK_ITW_SNAP_POINTS 1
92 void PlaceWidget()
override { this->Superclass::PlaceWidget(); }
94 double xmin,
double xmax,
double ymin,
double ymax,
double zmin,
double zmax)
override
96 this->Superclass::PlaceWidget(xmin, xmax, ymin, ymax, zmin, zmax);
107 virtual void SetSelectedHandleProperty(
vtkProperty*);
108 vtkGetObjectMacro(SelectedHandleProperty,
vtkProperty);
118 virtual void SetSelectedLineProperty(
vtkProperty*);
119 vtkGetObjectMacro(SelectedLineProperty,
vtkProperty);
125 void SetViewProp(
vtkProp* prop);
144 vtkGetMacro(ProjectionNormal,
int);
158 void SetProjectionPosition(
double position);
159 vtkGetMacro(ProjectionPosition,
double);
189 vtkSetMacro(CaptureRadius,
double);
190 vtkGetMacro(CaptureRadius,
double);
212 vtkGetMacro(ImageSnapType,
int);
219 void SetHandlePosition(
int handle,
double xyz[3]);
220 void SetHandlePosition(
int handle,
double x,
double y,
double z);
221 void GetHandlePosition(
int handle,
double xyz[3]);
229 vtkGetMacro(NumberOfHandles,
int);
259 vtkBooleanMacro(HandleLeftMouseButton,
vtkTypeBool);
262 vtkBooleanMacro(HandleMiddleMouseButton,
vtkTypeBool);
265 vtkBooleanMacro(HandleRightMouseButton,
vtkTypeBool);
288 vtkObject*
object,
unsigned long event,
void* clientdata,
void* calldata);
291 void OnLeftButtonDown();
292 void OnLeftButtonUp();
293 void OnMiddleButtonDown();
294 void OnMiddleButtonUp();
295 void OnRightButtonDown();
296 void OnRightButtonUp();
314 void Trace(
int,
int);
316 void MovePoint(
const double*,
const double*);
317 void Translate(
const double*,
const double*);
330 void AppendHandles(
double*);
332 void AllocateHandles(
const int&);
333 void AdjustHandlePosition(
const int&,
double*);
335 void EraseHandle(
const int&);
337 void InsertHandleOnLine(
double*);
353 void HighlightLine(
const int&);
354 void BuildLinesFromHandles();
355 void ResetLine(
double*);
356 void AppendLine(
double*);
373 void CreateDefaultProperties();
385 VTK_ABI_NAMESPACE_END
abstract superclass for all actors, volumes and annotations
represents an object (geometry & properties) in a rendered scene
abstract base class for most VTK objects
pick an actor/prop using graphics hardware
represent surface properties of a geometric object
static void ProcessEvents(vtkObject *object, unsigned long event, void *clientdata, void *calldata)
Handles the char widget activation event.
virtual void SetEnabled(int)
Methods for turning the interactor observer on and off, and determining its state.
dynamic, self-adjusting array of float
concrete dataset represents vertices, lines, polygons, and triangle strips
virtual void RegisterPickers()
Register internal Pickers in the Picking Manager.
a simple class to control print indentation
#define VTK_SIZEHINT(...)
object to represent cell connectivity
abstract API for pickers that can pick an instance of vtkProp
ray-cast cell picker for all kinds of Prop3Ds
create 2D glyphs represented by vtkPolyData
static vtkObject * New()
Create an object with Debug turned off, modified time initialized to zero, and reference counting on...
represent and manipulate 3D points