30 #ifndef _D_QVTK_IMAGE_VIEWER_HPP
31 #define _D_QVTK_IMAGE_VIEWER_HPP
33 #include <QApplication>
35 #include "QVtkViewerWidget.h"
36 #include "Gui/include/private/DImageViewer.hpp"
37 #include "Core/include/DTypes.h"
38 #include "Base/include/private/DMeasures.hpp"
65 imageImport->SetDataScalarTypeToUnsignedChar();
67 imageImport->SetDataScalarTypeToUnsignedShort();
69 imageImport->SetDataScalarTypeToShort();
73 colorOpacityTransfertFunction->AddSegment(0, 0., 1, 0.);
83 imageImport->SetDataScalarTypeToUnsignedChar();
85 imageImport->SetDataScalarTypeToUnsignedShort();
87 imageImport->SetDataScalarTypeToShort();
93 colorOpacityTransfertFunction->AddSegment(0, 0., 1, 0.);
104 enum RepresentationType { NONE, COMPOSITE, MIP };
111 this->image->getSize(imSize);
112 imageImport->SetWholeExtent(0, imSize[0] - 1, 0, imSize[1] - 1, 0,
114 imageImport->SetDataExtent(0, imSize[0] - 1, 0, imSize[1] - 1, 0,
116 imageImport->SetImportVoidPointer(this->image->getVoidPointer());
118 cube->SetBounds(0, imSize[0] - 1, 0, imSize[1] - 1, 0, imSize[2] - 1);
121 camera->SetFocalPoint(imSize[0] / 2, imSize[1] / 2, imSize[2] / 2);
122 int d = 2.5 * (imSize[0] > imSize[1] ? imSize[0] : imSize[1]);
123 camera->SetPosition(imSize[0], imSize[1] / 2, -d);
126 virtual void setAutoRange(
bool on)
128 opacityTransfertFunction->RemoveAllPoints();
130 vector<T> r =
rangeVal(*this->image);
131 opacityTransfertFunction->AddSegment(r[0], 0., r[1], 1.0);
137 virtual void onSizeChanged(
size_t ,
size_t ,
142 virtual void drawImage()
149 QVtkViewerWidget::update();
154 QVtkViewerWidget::hide();
159 QVtkViewerWidget::showNormal();
169 virtual void showLabel()
171 QVtkViewerWidget::showLabel();
175 virtual bool isVisible()
177 return QVtkViewerWidget::isVisible();
180 virtual void setName(
const char *_name)
182 QString buf = _name + QString(
" (") +
183 QString(parentClass::image->getTypeAsString()) +
185 QVtkViewerWidget::setWindowTitle(buf);
188 virtual void drawOverlay(
const Image<T> & )
192 virtual void clearOverlay()
196 virtual void setCurSlice(
int)
200 void setRepresentationType(RepresentationType type)
202 QVtkViewerWidget::setRepresentationType(
203 QVtkViewerWidget::RepresentationType(type));
208 QVtkViewerWidget::showAxes();
213 QVtkViewerWidget::hideAxes();
216 void setInterpolationTypeToLinear()
218 QVtkViewerWidget::setInterpolationTypeToLinear();
221 void setInterpolationTypeToNearest()
223 QVtkViewerWidget::setInterpolationTypeToNearest();
227 void initLookup(
int typeMax)
229 QVtkViewerWidget::initLookup(typeMax);
237 #endif // _D_QVTK_IMAGE_VIEWER_HPP