vtkImageStencilData.h
Go to the documentation of this file.00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00038 #ifndef __vtkImageStencilData_h
00039 #define __vtkImageStencilData_h
00040
00041
00042 #include "vtkDataObject.h"
00043
00044 class VTK_IMAGING_EXPORT vtkImageStencilData : public vtkDataObject
00045 {
00046 public:
00047 static vtkImageStencilData *New();
00048 vtkTypeRevisionMacro(vtkImageStencilData, vtkDataObject);
00049 void PrintSelf(ostream& os, vtkIndent indent);
00050
00051 void Initialize();
00052 void DeepCopy(vtkDataObject *o);
00053 void ShallowCopy(vtkDataObject *f);
00054 void InternalImageStencilDataCopy(vtkImageStencilData *s);
00055
00058 int GetDataObjectType() { return VTK_DATA_OBJECT; }
00059
00061 int GetExtentType() { return VTK_3D_EXTENT; };
00062
00064
00072 int GetNextExtent(int &r1, int &r2, int xMin, int xMax,
00073 int yIdx, int zIdx, int &iter);
00075
00081 void InsertNextExtent(int r1, int r2, int yIdx, int zIdx);
00082
00084
00087 vtkSetVector3Macro(Spacing, double);
00088 vtkGetVector3Macro(Spacing, double);
00090
00092
00095 vtkSetVector3Macro(Origin, double);
00096 vtkGetVector3Macro(Origin, double);
00098
00100
00103 void SetExtent(int extent[6]);
00104 void SetExtent(int x1, int x2, int y1, int y2, int z1, int z2);
00105 int* GetExtent();
00106 void GetExtent(int& x1, int& x2, int& y1, int& y2, int& z1, int& z2);
00107 void GetExtent(int* extent);
00109
00111
00113 vtkSetVector3Macro(OldSpacing, double);
00114 vtkGetVector3Macro(OldSpacing, double);
00116
00118
00120 vtkSetVector3Macro(OldOrigin, double);
00121 vtkGetVector3Macro(OldOrigin, double);
00123
00126 void AllocateExtents();
00127
00134 void UpdateData();
00135
00140 void PropagateUpdateExtent();
00141
00147 void TriggerAsynchronousUpdate();
00148
00149 protected:
00150 vtkImageStencilData();
00151 ~vtkImageStencilData();
00152
00155 int SpacingOrOriginHasChanged();
00156
00158
00160 double OldSpacing[3];
00161 double OldOrigin[3];
00163
00165
00166 double Spacing[3];
00167 double Origin[3];
00169
00171
00172 int NumberOfExtentEntries;
00173 int *ExtentListLengths;
00174 int **ExtentLists;
00176 private:
00177 vtkImageStencilData(const vtkImageStencilData&);
00178 void operator=(const vtkImageStencilData&);
00179 };
00180
00181 #endif
00182
00183
00184