82 #ifndef vtkBrokenLineWidget_h 83 #define vtkBrokenLineWidget_h 86 #include "vtkInteractionWidgetsModule.h" 100 #define VTK_PROJECTION_YZ 0 101 #define VTK_PROJECTION_XZ 1 102 #define VTK_PROJECTION_XY 2 103 #define VTK_PROJECTION_OBLIQUE 3 124 double xmin,
double xmax,
double ymin,
double ymax,
double zmin,
double zmax)
override 126 this->Superclass::PlaceWidget(xmin, xmax, ymin, ymax, zmin, zmax);
151 vtkGetMacro(ProjectionNormal,
int);
165 void SetProjectionPosition(
double position);
166 vtkGetMacro(ProjectionPosition,
double);
185 virtual void SetSelectedHandleProperty(
vtkProperty*);
186 vtkGetObjectMacro(SelectedHandleProperty,
vtkProperty);
196 virtual void SetSelectedLineProperty(
vtkProperty*);
197 vtkGetObjectMacro(SelectedLineProperty,
vtkProperty);
204 virtual void SetNumberOfHandles(
int npts);
205 vtkGetMacro(NumberOfHandles,
int);
213 void SetHandlePosition(
int handle,
double x,
double y,
double z);
214 void SetHandlePosition(
int handle,
double xyz[3]);
215 void GetHandlePosition(
int handle,
double xyz[3]);
216 double* GetHandlePosition(
int handle);
222 double GetSummedLength();
235 vtkSetClampMacro(ProcessEvents,
vtkTypeBool, 0, 1);
245 vtkSetClampMacro(HandleSizeFactor,
double, 0., 100.);
246 vtkGetMacro(HandleSizeFactor,
double);
267 static void ProcessEventsHandler(
268 vtkObject*
object,
unsigned long event,
void* clientdata,
void* calldata);
271 void OnLeftButtonDown();
272 void OnLeftButtonUp();
273 void OnMiddleButtonDown();
274 void OnMiddleButtonUp();
275 void OnRightButtonDown();
276 void OnRightButtonUp();
286 void ProjectPointsToPlane();
287 void ProjectPointsToOrthoPlane();
288 void ProjectPointsToObliquePlane();
294 void HighlightLine(
int highlight);
296 void BuildRepresentation();
302 int HighlightHandle(
vtkProp* prop);
304 void InsertHandleOnLine(
double* pos);
305 void EraseHandle(
const int&);
317 void MovePoint(
double* p1,
double* p2);
318 void Scale(
double* p1,
double* p2,
int X,
int Y);
319 void Translate(
double* p1,
double* p2);
320 void Spin(
double* p1,
double* p2,
double* vpn);
331 void CreateDefaultProperties();
335 void CalculateCentroid();
abstract superclass for all actors, volumes and annotations
represents an object (geometry & properties) in a rendered scene
abstract base class for most VTK objects
represent surface properties of a geometric object
virtual void SetEnabled(int)
Methods for turning the interactor observer on and off, and determining its state.
concrete dataset represents vertices, lines, polygons, and triangle strips
virtual void RegisterPickers()
Register internal Pickers in the Picking Manager.
create a polygonal sphere centered at the origin
a simple class to control print indentation
create an array of quadrilaterals located in a plane
create a line defined by two end points
map vtkPolyData to graphics primitives
ray-cast cell picker for all kinds of Prop3Ds
static vtkObject * New()
Create an object with Debug turned off, modified time initialized to zero, and reference counting on...
represent and manipulate 3D points