VTK
vtkImagePlaneWidget.h
Go to the documentation of this file.
1 /*=========================================================================
2 
3  Program: Visualization Toolkit
4  Module: vtkImagePlaneWidget.h
5 
6  Copyright (c) Ken Martin, Will Schroeder, Bill Lorensen
7  All rights reserved.
8  See Copyright.txt or http://www.kitware.com/Copyright.htm for details.
9 
10  This software is distributed WITHOUT ANY WARRANTY; without even
11  the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
12  PURPOSE. See the above copyright notice for more information.
13 
14 =========================================================================*/
108 #ifndef vtkImagePlaneWidget_h
109 #define vtkImagePlaneWidget_h
110 
111 #include "vtkInteractionWidgetsModule.h" // For export macro
112 #include "vtkPolyDataSourceWidget.h"
113 
114 class vtkActor;
116 class vtkDataSetMapper;
117 class vtkImageData;
118 class vtkImageMapToColors;
119 class vtkImageReslice;
120 class vtkLookupTable;
121 class vtkMatrix4x4;
122 class vtkPlaneSource;
123 class vtkPoints;
124 class vtkPolyData;
125 class vtkProperty;
126 class vtkTextActor;
127 class vtkTextProperty;
128 class vtkTexture;
129 class vtkTransform;
130 
131 #define VTK_NEAREST_RESLICE 0
132 #define VTK_LINEAR_RESLICE 1
133 #define VTK_CUBIC_RESLICE 2
134 
136 {
137 public:
140 
142  void PrintSelf(ostream& os, vtkIndent indent);
143 
145 
146  virtual void SetEnabled(int);
147  virtual void PlaceWidget(double bounds[6]);
148  void PlaceWidget()
149  {this->Superclass::PlaceWidget();}
150  void PlaceWidget(double xmin, double xmax, double ymin, double ymax,
151  double zmin, double zmax)
152  {this->Superclass::PlaceWidget(xmin,xmax,ymin,ymax,zmin,zmax);}
154 
157 
159 
160  void SetOrigin(double x, double y, double z);
161  void SetOrigin(double xyz[3]);
162  double* GetOrigin();
163  void GetOrigin(double xyz[3]);
165 
167 
169  void SetPoint1(double x, double y, double z);
170  void SetPoint1(double xyz[3]);
171  double* GetPoint1();
172  void GetPoint1(double xyz[3]);
174 
176 
178  void SetPoint2(double x, double y, double z);
179  void SetPoint2(double xyz[3]);
180  double* GetPoint2();
181  void GetPoint2(double xyz[3]);
183 
185 
186  double* GetCenter();
187  void GetCenter(double xyz[3]);
189 
191 
192  double* GetNormal();
193  void GetNormal(double xyz[3]);
195 
197  void GetVector1(double v1[3]);
198 
200  void GetVector2(double v2[3]);
201 
204 
206  void SetSliceIndex(int index);
207 
210 
213 
215 
217  vtkGetMacro(ResliceInterpolate,int);
219  { this->SetResliceInterpolate(VTK_NEAREST_RESLICE); }
221  { this->SetResliceInterpolate(VTK_LINEAR_RESLICE); }
223  { this->SetResliceInterpolate(VTK_CUBIC_RESLICE); }
225 
228 
230 
231  vtkSetMacro(RestrictPlaneToVolume,int);
232  vtkGetMacro(RestrictPlaneToVolume,int);
233  vtkBooleanMacro(RestrictPlaneToVolume,int);
235 
237 
239  vtkSetMacro(UserControlledLookupTable,int);
240  vtkGetMacro(UserControlledLookupTable,int);
241  vtkBooleanMacro(UserControlledLookupTable,int);
243 
245 
249  vtkSetMacro(TextureInterpolate,int);
250  vtkGetMacro(TextureInterpolate,int);
251  vtkBooleanMacro(TextureInterpolate,int);
253 
255 
257  virtual void SetTextureVisibility(int);
258  vtkGetMacro(TextureVisibility,int);
259  vtkBooleanMacro(TextureVisibility,int);
261 
269 
276 
280  void UpdatePlacement(void);
281 
285 
287 
294 
296 
301  vtkGetObjectMacro(SelectedPlaneProperty,vtkProperty);
303 
305 
308  vtkGetMacro(PlaneOrientation,int);
310  { this->SetPlaneOrientation(0); }
312  { this->SetPlaneOrientation(1); }
314  { this->SetPlaneOrientation(2); }
316 
322 
324 
332 
334 
336  vtkSetMacro(DisplayText,int);
337  vtkGetMacro(DisplayText,int);
338  vtkBooleanMacro(DisplayText,int);
340 
342 
346 
348 
352 
354 
356  vtkSetClampMacro(MarginSizeX,double, 0.0, 0.5);
357  vtkGetMacro(MarginSizeX, double);
358  vtkSetClampMacro(MarginSizeY,double, 0.0, 0.5);
359  vtkGetMacro(MarginSizeY, double);
361 
363 
368 
370 
372  vtkGetObjectMacro(TexturePlaneProperty,vtkProperty);
374 
376 
380  void SetWindowLevel(double window, double level, int copy = 0);
381  void GetWindowLevel(double wl[2]);
382  double GetWindow(){return this->CurrentWindow;}
383  double GetLevel(){return this->CurrentLevel;}
385 
388  int GetCursorData(double xyzv[4]);
389 
394 
396 
398  vtkGetVectorMacro(CurrentCursorPosition,double,3);
400 
402 
405  vtkGetMacro(CurrentImageValue,double);
407 
409 
413 
415 
421  vtkSetMacro(UseContinuousCursor,int);
422  vtkGetMacro(UseContinuousCursor,int);
423  vtkBooleanMacro(UseContinuousCursor,int);
425 
427 
428  void SetInteraction(int interact);
429  vtkGetMacro(Interaction,int);
430  vtkBooleanMacro(Interaction,int);
432 
433  //BTX
435 
436  enum
437  {
438  VTK_CURSOR_ACTION = 0,
439  VTK_SLICE_MOTION_ACTION = 1,
440  VTK_WINDOW_LEVEL_ACTION = 2
441  };
442  //ETX
443  vtkSetClampMacro(LeftButtonAction,int, VTK_CURSOR_ACTION, VTK_WINDOW_LEVEL_ACTION);
444  vtkGetMacro(LeftButtonAction, int);
445  vtkSetClampMacro(MiddleButtonAction,int, VTK_CURSOR_ACTION, VTK_WINDOW_LEVEL_ACTION);
446  vtkGetMacro(MiddleButtonAction, int);
447  vtkSetClampMacro(RightButtonAction,int, VTK_CURSOR_ACTION, VTK_WINDOW_LEVEL_ACTION);
448  vtkGetMacro(RightButtonAction, int);
450 
451  //BTX
453 
459  enum
460  {
461  VTK_NO_MODIFIER = 0,
462  VTK_SHIFT_MODIFIER = 1,
463  VTK_CONTROL_MODIFIER = 2
464  };
465  //ETX
466  vtkSetClampMacro(LeftButtonAutoModifier,int, VTK_NO_MODIFIER, VTK_CONTROL_MODIFIER);
467  vtkGetMacro(LeftButtonAutoModifier, int);
468  vtkSetClampMacro(MiddleButtonAutoModifier,int, VTK_NO_MODIFIER, VTK_CONTROL_MODIFIER);
469  vtkGetMacro(MiddleButtonAutoModifier, int);
470  vtkSetClampMacro(RightButtonAutoModifier,int, VTK_NO_MODIFIER, VTK_CONTROL_MODIFIER);
471  vtkGetMacro(RightButtonAutoModifier, int);
473 
474 protected:
477 
479 
483 
487 
488  //BTX
489  enum
490  {
491  VTK_NO_BUTTON = 0,
492  VTK_LEFT_BUTTON = 1,
493  VTK_MIDDLE_BUTTON = 2,
494  VTK_RIGHT_BUTTON = 3
495  };
496  //ETX
498 
499  //BTX - manage the state of the widget
500  int State;
502  {
503  Start=0,
511  Outside
512  };
513  //ETX
514 
515  // Handles the events
516  static void ProcessEvents(vtkObject* object,
517  unsigned long event,
518  void* clientdata,
519  void* calldata);
520 
521  // internal utility method that adds observers to the RenderWindowInteractor
522  // so that our ProcessEvents is eventually called. this method is called
523  // by SetEnabled as well as SetInteraction
524  void AddObservers();
525 
526  // ProcessEvents() dispatches to these methods.
527  virtual void OnMouseMove();
528  virtual void OnLeftButtonDown();
529  virtual void OnLeftButtonUp();
530  virtual void OnMiddleButtonDown();
531  virtual void OnMiddleButtonUp();
532  virtual void OnRightButtonDown();
533  virtual void OnRightButtonUp();
534  virtual void OnChar();
535 
536  virtual void StartCursor();
537  virtual void StopCursor();
538  virtual void StartSliceMotion();
539  virtual void StopSliceMotion();
540  virtual void StartWindowLevel();
541  virtual void StopWindowLevel();
542 
543  // controlling ivars
544  int Interaction; // Is the widget responsive to mouse events
550  double CurrentLevel;
552  double InitialLevel;
559 
560  // The geometric represenation of the plane and it's outline
564  void HighlightPlane(int highlight);
566 
567  // Re-builds the plane outline based on the plane source
569 
570  // Do the picking
572 
573  // Register internal Pickers within PickingManager
574  virtual void RegisterPickers();
575 
576  // for negative window values.
577  void InvertTable();
578 
579  // Methods to manipulate the plane
580  void WindowLevel(int X, int Y);
581  void Push(double *p1, double *p2);
582  void Spin(double *p1, double *p2);
583  void Rotate(double *p1, double *p2, double *vpn);
584  void Scale(double *p1, double *p2, int X, int Y);
585  void Translate(double *p1, double *p2);
586 
596 
597  // Properties used to control the appearance of selected objects and
598  // the manipulator in general. The plane property is actually that for
599  // the outline. The TexturePlaneProperty can be used to control the
600  // lighting etc. of the resliced image data.
607 
608  // Reslice and texture management
609  void UpdatePlane();
611 
612  // The cross-hair cursor
615  double CurrentCursorPosition[3];
616  double CurrentImageValue; // Set to VTK_DOUBLE_MAX when invalid
618  void UpdateCursor(int,int);
619  void ActivateCursor(int);
620  int UpdateContinuousCursor(double *q);
621  int UpdateDiscreteCursor(double *q);
623 
624  // The text to display W/L, image data
626  char TextBuff[128];
627  void GenerateText();
629  void ActivateText(int);
630 
631  // Oblique reslice control
632  double RotateAxis[3];
633  double RadiusVector[3];
634  void AdjustState();
635 
636  // Visible margins to assist user interaction
642  void ActivateMargins(int);
643  double MarginSizeX;
644  double MarginSizeY;
645 
646 private:
647  vtkImagePlaneWidget(const vtkImagePlaneWidget&); //Not implemented
648  void operator=(const vtkImagePlaneWidget&); //Not implemented
649 };
650 
651 #endif
vtkImagePlaneWidget::GetResliceOutput
vtkImageData * GetResliceOutput()
vtkPoints
represent and manipulate 3D points
Definition: vtkPoints.h:39
vtkImagePlaneWidget::ManageTextDisplay
void ManageTextDisplay()
vtkgl::z
GLdouble GLdouble z
Definition: vtkgl.h:11754
vtkImagePlaneWidget::StartSliceMotion
virtual void StartSliceMotion()
vtkImagePlaneWidget::GetOrigin
void GetOrigin(double xyz[3])
vtkImagePlaneWidget::GetNormal
void GetNormal(double xyz[3])
vtkImagePlaneWidget::MiddleButtonAction
int MiddleButtonAction
Definition: vtkImagePlaneWidget.h:481
vtkImagePlaneWidget::GetSliceIndex
int GetSliceIndex()
vtkGetObjectMacro
#define vtkGetObjectMacro(name, type)
Definition: vtkSetGet.h:232
vtkgl::v2
GLfloat GLfloat GLfloat v2
Definition: vtkgl.h:12015
VTK_LINEAR_RESLICE
#define VTK_LINEAR_RESLICE
Definition: vtkImagePlaneWidget.h:132
vtkImagePlaneWidget::OnRightButtonUp
virtual void OnRightButtonUp()
vtkImagePlaneWidget::Transform
vtkTransform * Transform
Definition: vtkImagePlaneWidget.h:590
vtkImagePlaneWidget::CreateDefaultLookupTable
vtkLookupTable * CreateDefaultLookupTable()
vtkImagePlaneWidget::GenerateMargins
void GenerateMargins()
vtkImagePlaneWidget::Translate
void Translate(double *p1, double *p2)
vtkImagePlaneWidget::WidgetState
WidgetState
Definition: vtkImagePlaneWidget.h:502
vtkImagePlaneWidget::SetInputConnection
void SetInputConnection(vtkAlgorithmOutput *aout)
vtkImagePlaneWidget::MiddleButtonAutoModifier
int MiddleButtonAutoModifier
Definition: vtkImagePlaneWidget.h:485
vtkImagePlaneWidget::CursorActor
vtkActor * CursorActor
Definition: vtkImagePlaneWidget.h:614
vtkImagePlaneWidget::CreateDefaultProperties
void CreateDefaultProperties()
vtkImagePlaneWidget::ColorMap
vtkImageMapToColors * ColorMap
Definition: vtkImagePlaneWidget.h:592
vtkImagePlaneWidget::RestrictPlaneToVolume
int RestrictPlaneToVolume
Definition: vtkImagePlaneWidget.h:546
vtkImagePlaneWidget::SetSliceIndex
void SetSliceIndex(int index)
vtkImagePlaneWidget::Spinning
@ Spinning
Definition: vtkImagePlaneWidget.h:507
vtkImagePlaneWidget::OriginalWindow
double OriginalWindow
Definition: vtkImagePlaneWidget.h:547
vtkImagePlaneWidget::~vtkImagePlaneWidget
~vtkImagePlaneWidget()
vtkImagePlaneWidget::MarginActor
vtkActor * MarginActor
Definition: vtkImagePlaneWidget.h:638
vtkImagePlaneWidget::CursorPolyData
vtkPolyData * CursorPolyData
Definition: vtkImagePlaneWidget.h:613
vtkImagePlaneWidget::OnMouseMove
virtual void OnMouseMove()
vtkImagePlaneWidget::LastButtonPressed
int LastButtonPressed
Definition: vtkImagePlaneWidget.h:497
vtkImagePlaneWidget::OnMiddleButtonDown
virtual void OnMiddleButtonDown()
vtkImagePlaneWidget::OriginalLevel
double OriginalLevel
Definition: vtkImagePlaneWidget.h:548
vtkImagePlaneWidget::OnLeftButtonUp
virtual void OnLeftButtonUp()
vtkImagePlaneWidget::TextureVisibility
int TextureVisibility
Definition: vtkImagePlaneWidget.h:478
vtkImagePlaneWidget::UpdateContinuousCursor
int UpdateContinuousCursor(double *q)
vtkImagePlaneWidget::Reslice
vtkImageReslice * Reslice
Definition: vtkImagePlaneWidget.h:588
vtkImagePlaneWidget::SetPoint1
void SetPoint1(double x, double y, double z)
vtkImagePlaneWidget::SetTexturePlaneProperty
virtual void SetTexturePlaneProperty(vtkProperty *)
vtkImagePlaneWidget::UpdatePlane
void UpdatePlane()
vtkPlaneSource
create an array of quadrilaterals located in a plane
Definition: vtkPlaneSource.h:60
vtkImagePlaneWidget::SetSelectedPlaneProperty
virtual void SetSelectedPlaneProperty(vtkProperty *)
vtkImagePlaneWidget::GeneratePlaneOutline
void GeneratePlaneOutline()
vtkImagePlaneWidget::UserControlledLookupTable
int UserControlledLookupTable
Definition: vtkImagePlaneWidget.h:557
vtkImagePlaneWidget::LeftButtonAction
int LeftButtonAction
Definition: vtkImagePlaneWidget.h:480
vtkImagePlaneWidget::GetPolyDataAlgorithm
vtkPolyDataAlgorithm * GetPolyDataAlgorithm()
vtkImagePlaneWidget::SetLookupTable
virtual void SetLookupTable(vtkLookupTable *)
vtkTypeMacro
#define vtkTypeMacro(thisClass, superclass)
Definition: vtkSetGet.h:642
vtkImagePlaneWidget::InvertTable
void InvertTable()
vtkImagePlaneWidget::SetPicker
void SetPicker(vtkAbstractPropPicker *)
vtkImagePlaneWidget::DisplayText
int DisplayText
Definition: vtkImagePlaneWidget.h:558
vtkImagePlaneWidget::StartCursor
virtual void StartCursor()
vtkImagePlaneWidget::SetResliceInterpolate
void SetResliceInterpolate(int)
vtkImagePlaneWidget::PrintSelf
void PrintSelf(ostream &os, vtkIndent indent)
vtkImagePlaneWidget::AddObservers
void AddObservers()
vtkObject
abstract base class for most VTK objects
Definition: vtkObject.h:62
vtkImagePlaneWidget::SetOrigin
void SetOrigin(double x, double y, double z)
vtkImagePlaneWidget::SetPoint1
void SetPoint1(double xyz[3])
vtkInteractionWidgetsModule.h
vtkImagePlaneWidget::MarginPolyData
vtkPolyData * MarginPolyData
Definition: vtkImagePlaneWidget.h:637
vtkgl::x
GLint GLint GLint GLint GLint x
Definition: vtkgl.h:11318
vtkImageMapToColors
map the input image through a lookup table
Definition: vtkImageMapToColors.h:44
vtkImagePlaneWidget::GetSlicePosition
double GetSlicePosition()
vtkImagePlaneWidget::LeftButtonAutoModifier
int LeftButtonAutoModifier
Definition: vtkImagePlaneWidget.h:484
vtkImagePlaneWidget::CurrentLevel
double CurrentLevel
Definition: vtkImagePlaneWidget.h:550
vtkTransform
describes linear transformations via a 4x4 matrix
Definition: vtkTransform.h:60
vtkGetVectorMacro
#define vtkGetVectorMacro(name, type, count)
Definition: vtkSetGet.h:424
vtkImagePlaneWidget::GetCursorData
int GetCursorData(double xyzv[4])
vtkImagePlaneWidget::StartWindowLevelPositionY
int StartWindowLevelPositionY
Definition: vtkImagePlaneWidget.h:554
vtkImagePlaneWidget::StopCursor
virtual void StopCursor()
vtkgl::event
struct _cl_event * event
Definition: vtkgl.h:14387
vtkImagePlaneWidget::SetMarginProperty
virtual void SetMarginProperty(vtkProperty *)
VTK_NEAREST_RESLICE
#define VTK_NEAREST_RESLICE
Definition: vtkImagePlaneWidget.h:131
vtkImagePlaneWidget::GetTexture
vtkTexture * GetTexture()
vtkgl::v1
GLfloat GLfloat v1
Definition: vtkgl.h:12014
vtkImagePlaneWidget::GetPoint1
double * GetPoint1()
vtkImagePlaneWidget::UpdateMargins
void UpdateMargins()
vtkImagePlaneWidget::PlaceWidget
void PlaceWidget()
Definition: vtkImagePlaneWidget.h:148
vtkImagePlaneWidget::StartWindowLevelPositionX
int StartWindowLevelPositionX
Definition: vtkImagePlaneWidget.h:553
vtkImagePlaneWidget::SetPoint2
void SetPoint2(double xyz[3])
vtkImagePlaneWidget::UpdateCursor
void UpdateCursor(int, int)
vtkImagePlaneWidget::SetWindowLevel
void SetWindowLevel(double window, double level, int copy=0)
vtkImagePlaneWidget::PlanePicker
vtkAbstractPropPicker * PlanePicker
Definition: vtkImagePlaneWidget.h:571
vtkImagePlaneWidget::ProcessEvents
static void ProcessEvents(vtkObject *object, unsigned long event, void *clientdata, void *calldata)
vtkImagePlaneWidget::StopWindowLevel
virtual void StopWindowLevel()
vtkImagePlaneWidget::GenerateText
void GenerateText()
vtkImagePlaneWidget::New
static vtkImagePlaneWidget * New()
vtkX3D::position
@ position
Definition: vtkX3D.h:261
vtkImagePlaneWidget::TextActor
vtkTextActor * TextActor
Definition: vtkImagePlaneWidget.h:625
vtkSetClampMacro
#define vtkSetClampMacro(name, type, min, max)
Definition: vtkSetGet.h:143
vtkImagePlaneWidget::GetVector2
void GetVector2(double v2[3])
vtkImagePlaneWidget::UseContinuousCursor
int UseContinuousCursor
Definition: vtkImagePlaneWidget.h:622
vtkTexture
handles properties associated with a texture map
Definition: vtkTexture.h:70
vtkImagePlaneWidget::SetResliceInterpolateToLinear
void SetResliceInterpolateToLinear()
Definition: vtkImagePlaneWidget.h:220
vtkImagePlaneWidget::HighlightPlane
void HighlightPlane(int highlight)
vtkImagePlaneWidget::Push
void Push(double *p1, double *p2)
vtkImagePlaneWidget::Scaling
@ Scaling
Definition: vtkImagePlaneWidget.h:510
vtkImagePlaneWidget::ActivateCursor
void ActivateCursor(int)
vtkImagePlaneWidget::GetWindow
double GetWindow()
Definition: vtkImagePlaneWidget.h:382
vtkImagePlaneWidget::GenerateTexturePlane
void GenerateTexturePlane()
vtkImagePlaneWidget::GetLevel
double GetLevel()
Definition: vtkImagePlaneWidget.h:383
vtkImagePlaneWidget::SetInteraction
void SetInteraction(int interact)
vtkImagePlaneWidget::GetPoint2
double * GetPoint2()
vtkImagePlaneWidget::OnLeftButtonDown
virtual void OnLeftButtonDown()
vtkImagePlaneWidget::UpdateDiscreteCursor
int UpdateDiscreteCursor(double *q)
vtkImagePlaneWidget::SetResliceInterpolateToNearestNeighbour
void SetResliceInterpolateToNearestNeighbour()
Definition: vtkImagePlaneWidget.h:218
vtkImagePlaneWidget::WindowLevelling
@ WindowLevelling
Definition: vtkImagePlaneWidget.h:505
vtkImagePlaneWidget::SetResliceInterpolateToCubic
void SetResliceInterpolateToCubic()
Definition: vtkImagePlaneWidget.h:222
vtkImagePlaneWidget::GetCursorDataStatus
int GetCursorDataStatus()
vtkActor
represents an object (geometry & properties) in a rendered scene
Definition: vtkActor.h:51
vtkImagePlaneWidget::PlaceWidget
virtual void PlaceWidget(double bounds[6])
vtkImagePlaneWidget::SetTextProperty
void SetTextProperty(vtkTextProperty *tprop)
vtkImageData
topologically and geometrically regular array of data
Definition: vtkImageData.h:45
vtkTextActor
An actor that displays text. Scaled or unscaled.
Definition: vtkTextActor.h:55
vtkIndent
a simple class to control print indentation
Definition: vtkIndent.h:39
vtkMatrix4x4
represent and manipulate 4x4 transformation matrices
Definition: vtkMatrix4x4.h:39
vtkImagePlaneWidget::MarginProperty
vtkProperty * MarginProperty
Definition: vtkImagePlaneWidget.h:604
vtkImagePlaneWidget::GetOrigin
double * GetOrigin()
vtkImagePlaneWidget::ActivateText
void ActivateText(int)
vtkImagePlaneWidget::State
int State
Definition: vtkImagePlaneWidget.h:500
vtkImagePlaneWidget::SetPlaneOrientation
void SetPlaneOrientation(int)
vtkImagePlaneWidget::PlaneProperty
vtkProperty * PlaneProperty
Definition: vtkImagePlaneWidget.h:601
vtkImagePlaneWidget::StartWindowLevel
virtual void StartWindowLevel()
vtkImageReslice
Reslices a volume along a new set of axes.
Definition: vtkImageReslice.h:77
vtkImagePlaneWidget::CursorProperty
vtkProperty * CursorProperty
Definition: vtkImagePlaneWidget.h:603
vtkImagePlaneWidget::SetOrigin
void SetOrigin(double xyz[3])
vtkImagePlaneWidget::SetEnabled
virtual void SetEnabled(int)
vtkImagePlaneWidget::GetTextProperty
vtkTextProperty * GetTextProperty()
vtkImagePlaneWidget::SelectedPlaneProperty
vtkProperty * SelectedPlaneProperty
Definition: vtkImagePlaneWidget.h:602
vtkGetMacro
#define vtkGetMacro(name, type)
Definition: vtkSetGet.h:93
vtkImagePlaneWidget::ActivateMargins
void ActivateMargins(int)
vtkImagePlaneWidget::StopSliceMotion
virtual void StopSliceMotion()
vtkImagePlaneWidget::GetWindowLevel
void GetWindowLevel(double wl[2])
vtkImagePlaneWidget::Spin
void Spin(double *p1, double *p2)
vtkgl::zmax
GLclampd zmax
Definition: vtkgl.h:17479
vtkImagePlaneWidget::ImageData
vtkImageData * ImageData
Definition: vtkImagePlaneWidget.h:587
vtkgl::level
GLint level
Definition: vtkgl.h:11316
vtkImagePlaneWidget::Moving
@ Moving
Definition: vtkImagePlaneWidget.h:509
vtkImagePlaneWidget::InitialWindow
double InitialWindow
Definition: vtkImagePlaneWidget.h:551
vtkAbstractPropPicker
abstract API for pickers that can pick an instance of vtkProp
Definition: vtkAbstractPropPicker.h:79
vtkImagePlaneWidget::Rotate
void Rotate(double *p1, double *p2, double *vpn)
vtkImagePlaneWidget::Rotating
@ Rotating
Definition: vtkImagePlaneWidget.h:508
vtkImagePlaneWidget::PlaneOutlinePolyData
vtkPolyData * PlaneOutlinePolyData
Definition: vtkImagePlaneWidget.h:562
vtkImagePlaneWidget::SetPlaneOrientationToZAxes
void SetPlaneOrientationToZAxes()
Definition: vtkImagePlaneWidget.h:313
vtkImagePlaneWidget::SetPoint2
void SetPoint2(double x, double y, double z)
vtkTextProperty
represent text properties.
Definition: vtkTextProperty.h:39
vtkBooleanMacro
vtkBooleanMacro(IgnoreDriverBugs, bool)
vtkImagePlaneWidget::RightButtonAction
int RightButtonAction
Definition: vtkImagePlaneWidget.h:482
vtkSetMacro
vtkSetMacro(IgnoreDriverBugs, bool)
vtkLookupTable
map scalar values into colors via a lookup table
Definition: vtkLookupTable.h:74
vtkImagePlaneWidget::TexturePlaneProperty
vtkProperty * TexturePlaneProperty
Definition: vtkImagePlaneWidget.h:605
vtkImagePlaneWidget::RightButtonAutoModifier
int RightButtonAutoModifier
Definition: vtkImagePlaneWidget.h:486
vtkImagePlaneWidget::SetColorMap
virtual void SetColorMap(vtkImageMapToColors *)
vtkgl::index
GLuint index
Definition: vtkgl.h:11983
vtkImagePlaneWidget::MarginSelectMode
int MarginSelectMode
Definition: vtkImagePlaneWidget.h:639
vtkImagePlaneWidget::InitialLevel
double InitialLevel
Definition: vtkImagePlaneWidget.h:552
VTKINTERACTIONWIDGETS_EXPORT
#define VTKINTERACTIONWIDGETS_EXPORT
Definition: vtkInteractionWidgetsModule.h:15
vtkgl::y
GLint GLint GLint GLint GLint GLint y
Definition: vtkgl.h:11318
vtkImagePlaneWidget::SetCursorProperty
virtual void SetCursorProperty(vtkProperty *)
vtk3DWidget::PlaceWidget
virtual void PlaceWidget()
vtkImagePlaneWidget::Interaction
int Interaction
Definition: vtkImagePlaneWidget.h:544
vtkImagePlaneWidget::OnMiddleButtonUp
virtual void OnMiddleButtonUp()
vtkAlgorithmOutput
Proxy object to connect input/output ports.
Definition: vtkAlgorithmOutput.h:39
vtkPolyDataSourceWidget
abstract PolyDataSource-based 3D widget
Definition: vtkPolyDataSourceWidget.h:45
vtkImagePlaneWidget::Texture
vtkTexture * Texture
Definition: vtkImagePlaneWidget.h:593
vtkPolyData
concrete dataset represents vertices, lines, polygons, and triangle strips
Definition: vtkPolyData.h:84
vtkImagePlaneWidget::TexturePlaneActor
vtkActor * TexturePlaneActor
Definition: vtkImagePlaneWidget.h:591
vtkImagePlaneWidget::SetPlaneProperty
virtual void SetPlaneProperty(vtkProperty *)
vtkImagePlaneWidget::GetCenter
double * GetCenter()
vtkImagePlaneWidget::MarginSizeX
double MarginSizeX
Definition: vtkImagePlaneWidget.h:643
vtkImagePlaneWidget::MarginSizeY
double MarginSizeY
Definition: vtkImagePlaneWidget.h:644
vtkImagePlaneWidget::vtkImagePlaneWidget
vtkImagePlaneWidget()
vtkProperty
represent surface properties of a geometric object
Definition: vtkProperty.h:64
vtkImagePlaneWidget::Pushing
@ Pushing
Definition: vtkImagePlaneWidget.h:506
vtkImagePlaneWidget
3D widget for reslicing image data
Definition: vtkImagePlaneWidget.h:136
vtkImagePlaneWidget::GetVector1
void GetVector1(double v1[3])
vtkImagePlaneWidget::SetPlaneOrientationToXAxes
void SetPlaneOrientationToXAxes()
Definition: vtkImagePlaneWidget.h:309
vtkImagePlaneWidget::CurrentImageValue
double CurrentImageValue
Definition: vtkImagePlaneWidget.h:616
vtkImagePlaneWidget::PlaneOutlineActor
vtkActor * PlaneOutlineActor
Definition: vtkImagePlaneWidget.h:563
vtkImagePlaneWidget::ResliceAxes
vtkMatrix4x4 * ResliceAxes
Definition: vtkImagePlaneWidget.h:589
vtkImagePlaneWidget::GetPoint1
void GetPoint1(double xyz[3])
vtkImagePlaneWidget::WindowLevel
void WindowLevel(int X, int Y)
vtkImagePlaneWidget::TextureInterpolate
int TextureInterpolate
Definition: vtkImagePlaneWidget.h:556
vtkImagePlaneWidget::PlaneOrientation
int PlaneOrientation
Definition: vtkImagePlaneWidget.h:545
q
VTKWRAPPINGJAVA_EXPORT jlong q(JNIEnv *env, jobject obj)
vtkImagePlaneWidget::Cursoring
@ Cursoring
Definition: vtkImagePlaneWidget.h:504
vtkImagePlaneWidget::PlaneSource
vtkPlaneSource * PlaneSource
Definition: vtkImagePlaneWidget.h:561
vtkImagePlaneWidget::BuildRepresentation
void BuildRepresentation()
vtkImagePlaneWidget::GetNormal
double * GetNormal()
vtkImagePlaneWidget::PlaceWidget
void PlaceWidget(double xmin, double xmax, double ymin, double ymax, double zmin, double zmax)
Definition: vtkImagePlaneWidget.h:150
vtkImagePlaneWidget::SetSlicePosition
void SetSlicePosition(double position)
vtkImagePlaneWidget::GenerateCursor
void GenerateCursor()
VTK_CUBIC_RESLICE
#define VTK_CUBIC_RESLICE
Definition: vtkImagePlaneWidget.h:133
vtkImagePlaneWidget::CurrentWindow
double CurrentWindow
Definition: vtkImagePlaneWidget.h:549
vtkImagePlaneWidget::AdjustState
void AdjustState()
vtkImagePlaneWidget::ResliceInterpolate
int ResliceInterpolate
Definition: vtkImagePlaneWidget.h:555
vtkImagePlaneWidget::GetPolyData
void GetPolyData(vtkPolyData *pd)
vtkImagePlaneWidget::LookupTable
vtkLookupTable * LookupTable
Definition: vtkImagePlaneWidget.h:594
vtkImagePlaneWidget::OnChar
virtual void OnChar()
vtkImagePlaneWidget::SetTextureVisibility
virtual void SetTextureVisibility(int)
vtkPolyDataSourceWidget.h
vtkImagePlaneWidget::Scale
void Scale(double *p1, double *p2, int X, int Y)
vtkImagePlaneWidget::GetPoint2
void GetPoint2(double xyz[3])
vtkImagePlaneWidget::RegisterPickers
virtual void RegisterPickers()
vtkImagePlaneWidget::GetCenter
void GetCenter(double xyz[3])
vtkImagePlaneWidget::UpdatePlacement
void UpdatePlacement(void)
vtkImagePlaneWidget::OnRightButtonDown
virtual void OnRightButtonDown()
vtkPolyDataAlgorithm
Superclass for algorithms that produce only polydata as output.
Definition: vtkPolyDataAlgorithm.h:44
vtkDataSetMapper
map vtkDataSet and derived classes to graphics primitives
Definition: vtkDataSetMapper.h:42
vtkImagePlaneWidget::SetPlaneOrientationToYAxes
void SetPlaneOrientationToYAxes()
Definition: vtkImagePlaneWidget.h:311