99#ifndef vtkImagePlaneWidget_h
100#define vtkImagePlaneWidget_h
102#include "vtkInteractionWidgetsModule.h"
105VTK_ABI_NAMESPACE_BEGIN
123#define VTK_NEAREST_RESLICE 0
124#define VTK_LINEAR_RESLICE 1
125#define VTK_CUBIC_RESLICE 2
128#define VTK_IMAGE_PLANE_WIDGET_MAX_TEXTBUFF 128
149 double xmin,
double xmax,
double ymin,
double ymax,
double zmin,
double zmax)
override
167 void GetOrigin(
double xyz[3]);
174 void SetPoint1(
double x,
double y,
double z);
175 void SetPoint1(
double xyz[3]);
177 void GetPoint1(
double xyz[3]);
184 void SetPoint2(
double x,
double y,
double z);
185 void SetPoint2(
double xyz[3]);
187 void GetPoint2(
double xyz[3]);
195 void GetCenter(
double xyz[3]);
203 void GetNormal(
double xyz[3]);
209 void GetVector1(
double v1[3]);
214 void GetVector2(
double v2[3]);
224 void SetSliceIndex(
int index);
229 double GetSlicePosition();
234 void SetSlicePosition(
double position);
240 void SetResliceInterpolate(
int);
241 vtkGetMacro(ResliceInterpolate,
int);
242 void SetResliceInterpolateToNearestNeighbour()
356 vtkGetMacro(PlaneOrientation,
int);
413 vtkSetClampMacro(MarginSizeX,
double, 0.0, 0.5);
414 vtkGetMacro(MarginSizeX,
double);
415 vtkSetClampMacro(MarginSizeY,
double, 0.0, 0.5);
416 vtkGetMacro(MarginSizeY,
double);
466 vtkGetVectorMacro(CurrentCursorPosition,
double, 3);
475 vtkGetMacro(CurrentImageValue,
double);
514 VTK_CURSOR_ACTION = 0,
515 VTK_SLICE_MOTION_ACTION = 1,
516 VTK_WINDOW_LEVEL_ACTION = 2
518 vtkSetClampMacro(LeftButtonAction,
int, VTK_CURSOR_ACTION, VTK_WINDOW_LEVEL_ACTION);
519 vtkGetMacro(LeftButtonAction,
int);
520 vtkSetClampMacro(MiddleButtonAction,
int, VTK_CURSOR_ACTION, VTK_WINDOW_LEVEL_ACTION);
521 vtkGetMacro(MiddleButtonAction,
int);
522 vtkSetClampMacro(RightButtonAction,
int, VTK_CURSOR_ACTION, VTK_WINDOW_LEVEL_ACTION);
523 vtkGetMacro(RightButtonAction,
int);
538 VTK_SHIFT_MODIFIER = 1,
539 VTK_CONTROL_MODIFIER = 2
541 vtkSetClampMacro(LeftButtonAutoModifier,
int, VTK_NO_MODIFIER, VTK_CONTROL_MODIFIER);
542 vtkGetMacro(LeftButtonAutoModifier,
int);
543 vtkSetClampMacro(MiddleButtonAutoModifier,
int, VTK_NO_MODIFIER, VTK_CONTROL_MODIFIER);
544 vtkGetMacro(MiddleButtonAutoModifier,
int);
545 vtkSetClampMacro(RightButtonAutoModifier,
int, VTK_NO_MODIFIER, VTK_CONTROL_MODIFIER);
546 vtkGetMacro(RightButtonAutoModifier,
int);
567 VTK_MIDDLE_BUTTON = 2,
589 vtkObject*
object,
unsigned long event,
void* clientdata,
void* calldata);
651 void Push(
double* p1,
double* p2);
652 void Spin(
double* p1,
double* p2);
653 void Rotate(
double* p1,
double* p2,
double* vpn);
654 void Scale(
double* p1,
double* p2,
int X,
int Y);
685 double CurrentCursorPosition[3];
702 double RotateAxis[3];
703 double RadiusVector[3];
abstract API for pickers that can pick an instance of vtkProp
represents an object (geometry & properties) in a rendered scene
Proxy object to connect input/output ports.
map vtkDataSet and derived classes to graphics primitives
topologically and geometrically regular array of data
map the input image through a lookup table
Reslices a volume along a new set of axes.
a simple class to control print indentation
map scalar values into colors via a lookup table
represent and manipulate 4x4 transformation matrices
abstract base class for most VTK objects
create an array of quadrilaterals located in a plane
represent and manipulate 3D points
Superclass for algorithms that produce only polydata as output.
concrete dataset represents vertices, lines, polygons, and triangle strips
represent surface properties of a geometric object
An actor that displays text.
represent text properties.
handles properties associated with a texture map
#define VTK_SIZEHINT(...)