35 #ifndef vtkImageCroppingRegionsWidget_h
36 #define vtkImageCroppingRegionsWidget_h
69 vtkGetVector6Macro(PlanePositions,
double);
71 {this->SetPlanePositions(pos[0], pos[1], pos[2], pos[3], pos[4], pos[5]);}
73 {this->SetPlanePositions(pos[0], pos[1], pos[2], pos[3], pos[4], pos[5]);}
74 virtual void SetPlanePositions(
double xMin,
double xMax,
75 double yMin,
double yMax,
76 double zMin,
double zMax);
81 virtual void SetCroppingRegionFlags(
int flags);
82 vtkGetMacro(CroppingRegionFlags,
int);
89 SLICE_ORIENTATION_YZ = 0,
90 SLICE_ORIENTATION_XZ = 1,
91 SLICE_ORIENTATION_XY = 2
94 vtkGetMacro(SliceOrientation,
int);
106 virtual void SetSlice(
int num);
107 vtkGetMacro(Slice,
int);
112 virtual void SetLine1Color(
double r,
double g,
double b);
114 { this->SetLine1Color(rgb[0], rgb[1], rgb[2]); }
115 virtual double *GetLine1Color();
116 virtual void GetLine1Color(
double rgb[3]);
121 virtual void SetLine2Color(
double r,
double g,
double b);
123 { this->SetLine2Color(rgb[0], rgb[1], rgb[2]); }
124 virtual double *GetLine2Color();
125 virtual void GetLine2Color(
double rgb[3]);
130 virtual void SetLine3Color(
double r,
double g,
double b);
132 { this->SetLine3Color(rgb[0], rgb[1], rgb[2]); }
133 virtual double *GetLine3Color();
134 virtual void GetLine3Color(
double rgb[3]);
139 virtual void SetLine4Color(
double r,
double g,
double b);
141 { this->SetLine4Color(rgb[0], rgb[1], rgb[2]); }
142 virtual double *GetLine4Color();
143 virtual void GetLine4Color(
double rgb[3]);
151 virtual void UpdateAccordingToInput();
156 void MoveHorizontalLine();
157 void MoveVerticalLine();
158 void MoveIntersectingLines();
159 void UpdateCursorIcon();
160 void OnButtonPress();
161 void OnButtonRelease();
170 CroppingPlanesPositionChangedEvent = 10050
187 double PlanePositions[6];
192 double GetSlicePosition();
206 void SetMouseCursor(
int state);
223 int ComputeWorldCoordinate(
int x,
int y,
double* coord);
225 void UpdateOpacity();
226 void UpdateGeometry();
227 void ConstrainPlanePositions(
double positions[6]);
Abstract class for a volume mapper.
abstract base class for most VTK objects
static void ProcessEvents(vtkObject *object, unsigned long event, void *clientdata, void *calldata)
a actor that draws 2D data
virtual void SetEnabled(int)
concrete dataset represents vertices, lines, polygons, and triangle strips
a simple class to control print indentation
topologically and geometrically regular array of data
create a line defined by two end points