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)
override 126 {this->Superclass::PlaceWidget(xmin,xmax,ymin,ymax,zmin,zmax);}
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,
vtkTypeBool, 0, 1);
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&);
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();
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