00001
00002
00003
00004
00005
00016 #ifndef _SIGNIMAGERESLICE_H
00017 #define _SIGNIMAGERESLICE_H
00018
00019 #include <string>
00020 #include <map>
00021 #include <SignDLL.h>
00022
00023 class vtkImageData;
00024 class vtkImageReslice;
00025 class vtkTransform;
00026 class vtkMatrix4x4;
00027
00028 class SIGN_EXPORT SignImageReslice
00029 {
00030 public:
00032 SignImageReslice();
00034 ~SignImageReslice();
00035
00037 void SetImageData(vtkImageData *im);
00039 const vtkMatrix4x4 *GetImageMatrix();
00041 vtkImageData *GetImageData();
00042
00046 void SetPlane(std::string p);
00048 std::string GetPlane();
00050 void SetLocator(float pos[3]);
00054 void SetOrientation(vtkMatrix4x4* matrix);
00055 void Update();
00056
00057 private:
00058
00059 float currPos[3];
00060 vtkImageData *imageData;
00061 vtkImageReslice *reslice;
00062 vtkMatrix4x4 *imageMatrix;
00063 std::string plane;
00064
00065 double *inputSpacing;
00066 double outputSpacing[4];
00067
00068
00069
00070 };
00071
00072 #endif