43 #ifndef SVK_IMAGE_DATA_H
44 #define SVK_IMAGE_DATA_H
46 #include <vtkObjectFactory.h>
47 #include <vtkImageData.h>
49 #include <vtkVertex.h>
53 #include <vtkGenericCell.h>
55 #include <vtkPoints.h>
56 #include <vtkPointData.h>
57 #include <vtkCellData.h>
58 #include <vtkUnsignedCharArray.h>
59 #include <vtkUnsignedShortArray.h>
60 #include <vtkShortArray.h>
61 #include <vtkFloatArray.h>
62 #include <vtkDataSetAttributes.h>
63 #include <vtkXMLDataElement.h>
64 #include <vtkIndent.h>
113 virtual void PrintSelf( ostream &os, vtkIndent indent );
133 virtual void DeepCopy( vtkDataObject* src );
134 virtual void DeepCopy(
138 virtual void ShallowCopy( vtkDataObject* src );
139 virtual void ShallowCopy(
143 virtual void ZeroCopy(
147 virtual void CopyAndFillComponents(
148 vtkImageData* src,
double fillValue,
152 virtual void CopyAndCastFrom( vtkImageData* inData,
int extent[6] );
153 virtual void CopyAndCastFrom(
154 vtkImageData* inData,
int x0,
int x1,
int y0,
int y1,
int z0,
int z1
156 virtual void CopyStructure( vtkDataSet* ds );
157 virtual void CopyDcos( vtkDataObject* src );
158 virtual void CopyVtkImage( vtkImageData* sourceImage,
double dcos[][3] );
161 virtual double * GetPoint (vtkIdType ptId);
166 const double *p = this->GetPoint(
id);
167 x[0] = p[0]; x[1] = p[1]; x[2] = p[2];
170 virtual vtkCell * GetCell (vtkIdType cellId);
171 virtual void GetCell (vtkIdType cellId, vtkGenericCell *cell);
172 virtual void GetCellBounds (vtkIdType cellId,
double bounds[6]);
173 virtual vtkIdType FindPoint (
double x,
double y,
double z);
174 virtual vtkIdType FindPoint (
double x[3]);
175 virtual vtkIdType FindCell (
184 virtual vtkIdType FindCell (
187 vtkGenericCell *gencell,
194 virtual vtkCell * FindAndGetCell (
203 virtual int GetCellType (vtkIdType cellId);
204 virtual void GetCellPoints (vtkIdType cellId, vtkIdList *ptIds);
205 virtual void GetPointCells (vtkIdType ptId, vtkIdList *cellIds);
206 virtual void ComputeBounds ();
207 virtual int ComputeStructuredCoordinates (
double x[3],
int ijk[3],
double pcoords[3]);
208 virtual void GetVoxelGradient (
int i,
int j,
int k, vtkDataArray *s, vtkDataArray *g);
209 virtual void GetPointGradient (
int i,
int j,
int k, vtkDataArray *s,
double g[3]);
210 virtual void SetAxisUpdateExtent (
int axis,
int min,
int max);
211 virtual void GetAxisUpdateExtent (
int axis,
int &min,
int &max);
213 virtual void SetDcos(
double x[3][3]);
214 virtual void GetDcos(
double x[3][3]);
220 int GetIDFromIndex(
int indexX,
int indexY,
int indexZ);
221 virtual void GetNumberOfVoxels(
int numVoxels[3]) = 0;
222 void GetIndexFromID(
int voxelID,
int* indexX,
int* indexY,
int* indexZ);
223 void GetIndexFromID(
int voxelID,
int* index);
224 void GetIndexFromPosition(
double posLPS[3],
int* index);
225 void GetIndexFromPosition(
double posLPS[3],
double* index);
226 virtual void GetPositionFromIndex(
int* index,
double* posLPS);
227 virtual void GetSliceOrigin(
232 virtual void GetSliceCenter(
237 virtual void GetSliceNormal(
241 virtual int GetClosestSlice(
244 double tolerance = -1
246 virtual int GetNumberOfSlices(
251 virtual void GetDataBasis(
double basisVector[3], DataBasis basis );
253 virtual void GetImageCenter(
double* center );
254 void GetDataRange(
double range[2],
int component );
255 void SetDataRange(
double range[2],
int component );
260 void SyncVTKImageDataToDcmHeader();
264 vtkSetStringMacro(SourceFileName);
265 vtkGetStringMacro(SourceFileName);
282 virtual void UpdateSvkParams();
283 virtual void UpdateRange(
int component );
284 int FindMatchingSlice(
289 double tolerance = -1
296 unsigned long lastUpdateTime;
298 void CastDataArrays(
int vtkDataArrayType, vtkDataSetAttributes* fieldData );
306 #endif //SVK_IMAGE_DATA_H
RangeComponent
Definition: svkImageData.h:116
Definition: svkImageData.h:124
virtual void GetPoint(vtkIdType id, double x[3])
Definition: svkImageData.h:164
svkDcmHeader * dcmHeader
Definition: svkImageData.h:274
Definition: svkImageData.h:118
data GetDcmHeader() -> RemoveDimensionIndex(svkDcmHeader::EPSI_ACQ_INDEX)
Definition: svkProvenance.h:62
svkImageData * source
Definition: svkImageData.h:277
Definition: svkImageData.h:125
Definition: svkImageData.h:126
Definition: svkImageData.h:127
Definition: svkImageData.h:107
svkProvenance * provenance
Definition: svkImageData.h:275
char * SourceFileName
Definition: svkImageData.h:276