26 #ifndef IMAGE_COMPONENT_H
27 #define IMAGE_COMPONENT_H
34 #include <vtkPolyData.h>
35 #include <vtkSmartPointer.h>
36 #include <vtkImageData.h>
37 #include <vtkTransform.h>
38 #include <vtkImageFlip.h>
39 #include <vtkWindowLevelLookupTable.h>
70 Q_PROPERTY(QString imageName READ getImageName WRITE setImageName)
73 Q_PROPERTY(QVariantMap imageSize READ getImageSize)
76 Q_PROPERTY(QVector3D voxelSize READ getVoxelSize)
79 Q_PROPERTY(QVector3D origin READ getImageOrigin)
82 Q_PROPERTY(
bool viewIn3D READ getViewIn3D WRITE setViewIn3D);
125 ImageComponent(vtkSmartPointer<vtkImageData> anImageData,
const QString &name,
bool copy=
false)
132 virtual
void setSelected(const
bool b, const
bool recursive=false);
135 QString getImageName() const;
136 void setImageName(const QString& );
139 vtkSmartPointer<vtkImageData> getImageData();
148 void getLastPixelPicked(
int * x,
int * y,
int * z );
154 int getNumberOfColors() const;
157 double getMinColor() const;
160 double getMaxColor() const;
163 int getNumberOfSlices() const;
166 virtual
void setLut(vtkSmartPointer<vtkWindowLevelLookupTable> lookupTable);
169 virtual vtkSmartPointer<vtkWindowLevelLookupTable> getLut();
173 virtual
void refresh() const;
190 virtual
void replaceImageData(vtkSmartPointer<vtkImageData> anImageData,
bool copy=false);
193 QVariantMap getImageSize() const;
194 QVector3D getVoxelSize() const;
195 QVector3D getImageOrigin() const;
196 bool getViewIn3D() const;
197 void setViewIn3D(
bool);
201 virtual
void setImageData(vtkSmartPointer<vtkImageData> anImageData,
bool copy);
206 virtual
void initRepresentation() {};
209 void initLookupTable();
212 void buildImageComponents();
214 void updateImageComponents();
218 vtkSmartPointer<vtkPolyData> getBoundingBox();
235 vtkSmartPointer<vtkWindowLevelLookupTable>
lut;
238 int currentPixelPicked[3];
257 #endif //IMAGE_COMPONENT_H