82 #ifndef vtkBrokenLineWidget_h 83 #define vtkBrokenLineWidget_h 85 #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 123 {this->Superclass::PlaceWidget();}
124 void PlaceWidget(
double xmin,
double xmax,
double ymin,
double ymax,
125 double zmin,
double zmax) VTK_OVERRIDE
126 {this->Superclass::PlaceWidget(xmin,xmax,ymin,ymax,zmin,zmax);}
139 vtkGetMacro(ProjectToPlane,
int);
150 vtkGetMacro(ProjectionNormal,
int);
152 { this->SetProjectionNormal(0); }
154 { this->SetProjectionNormal(1); }
156 { this->SetProjectionNormal(2); }
158 { this->SetProjectionNormal(3); }
168 void SetProjectionPosition(
double position);
169 vtkGetMacro(ProjectionPosition,
double);
188 virtual void SetSelectedHandleProperty(
vtkProperty*);
189 vtkGetObjectMacro(SelectedHandleProperty,
vtkProperty);
199 virtual void SetSelectedLineProperty(
vtkProperty*);
200 vtkGetObjectMacro(SelectedLineProperty,
vtkProperty);
207 virtual void SetNumberOfHandles(
int npts);
208 vtkGetMacro(NumberOfHandles,
int);
216 void SetHandlePosition(
int handle,
double x,
double y,
double z);
217 void SetHandlePosition(
int handle,
double xyz[3]);
218 void GetHandlePosition(
int handle,
double xyz[3]);
219 double* GetHandlePosition(
int handle);
225 double GetSummedLength();
238 vtkSetClampMacro(ProcessEvents,
int, 0, 1);
239 vtkGetMacro(ProcessEvents,
int);
248 vtkSetClampMacro(HandleSizeFactor,
double, 0., 100.);
249 vtkGetMacro(HandleSizeFactor,
double);
270 static void ProcessEventsHandler(
vtkObject*
object,
276 void OnLeftButtonDown();
277 void OnLeftButtonUp();
278 void OnMiddleButtonDown();
279 void OnMiddleButtonUp();
280 void OnRightButtonDown();
281 void OnRightButtonUp();
291 void ProjectPointsToPlane();
292 void ProjectPointsToOrthoPlane();
293 void ProjectPointsToObliquePlane();
299 void HighlightLine(
int highlight);
301 void BuildRepresentation();
307 int HighlightHandle(
vtkProp *prop);
309 void InsertHandleOnLine(
double* pos);
310 void EraseHandle(const
int&);
316 int CurrentHandleIndex;
319 void RegisterPickers() VTK_OVERRIDE;
322 void MovePoint(
double *p1,
double *p2);
323 void Scale(
double *p1,
double *p2,
int X,
int Y);
324 void Translate(
double *p1,
double *p2);
325 void Spin(
double *p1,
double *p2,
double *vpn);
336 void CreateDefaultProperties();
340 void CalculateCentroid();
344 double HandleSizeFactor;
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
create a polygonal sphere centered at the origin
a simple class to control print indentation
create an array of quadrilaterals located in a plane
vtkSetMacro(IgnoreDriverBugs, bool)
When set known driver bugs are ignored during driver feature detection.
create a line defined by two end points
map vtkPolyData to graphics primitives
ray-cast cell picker for all kinds of Prop3Ds
vtkBooleanMacro(IgnoreDriverBugs, bool)
When set known driver bugs are ignored during driver feature detection.
static vtkObject * New()
Create an object with Debug turned off, modified time initialized to zero, and reference counting on...
represent and manipulate 3D points