00001 //-------------------------------------------------- 00013 //--------------------------------------------------- 00014 00015 #ifndef IMEDGINE_META_VOLUME_PIXEL_DATA_VIEWER_H 00016 #define IMEDGINE_META_VOLUME_PIXEL_DATA_VIEWER_H 00017 00018 #include "../global/global_definitions.h" 00019 00020 #include "../gui/dataset_configuration_widget_base.h" 00021 #include <QWidget> 00022 #include <iostream> 00023 00024 namespace imedgine 00025 { 00026 00027 class MetaVolumePixelView; 00028 00029 //-------------------------------------------------- 00046 //-------------------------------------------------- 00047 00048 class MetaVolumePixelDataViewer : public QWidget, private Ui::DatasetConfigurationWidgetBase 00049 { 00050 Q_OBJECT 00051 public: 00052 00053 //-------------------------------------------------- 00056 MetaVolumePixelDataViewer( 00057 MetaVolumePixelView* meta_view, QWidget* parent); 00058 00059 //-------------------------------------------------- 00062 00063 virtual ~MetaVolumePixelDataViewer(); 00064 00065 //-------------------------------------------------- 00070 00071 void setIntensityInGui(unsigned int window, int level); 00072 00073 //-------------------------------------------------- 00077 00078 void setAffineTransformationMatrixInGui(matrix_type transformation_matrix); 00079 00080 //-------------------------------------------------- 00084 00085 void setOffsetVectorInGui(offset_vector_type offset_vector); 00086 00087 public slots: 00088 00089 //-------------------------------------------------- 00093 00094 void intensityWindowChanged(int new_intensity_window); 00095 00096 //-------------------------------------------------- 00100 00101 void intensityLevelChanged(int new_intensity_level); 00102 00103 //-------------------------------------------------- 00107 00108 void focusPointXDimensionChanged(index_type new_x_position); 00109 00110 //-------------------------------------------------- 00114 00115 void focusPointYDimensionChanged(index_type new_y_position); 00116 00117 //-------------------------------------------------- 00121 00122 void focusPointZDimensionChanged(index_type new_z_position); 00123 00124 //-------------------------------------------------- 00128 00129 void affineTransformationMatrixChanged(); 00130 00131 //-------------------------------------------------- 00136 00137 void resetAffineTransformationMatrix(); 00138 00139 protected: 00140 00141 //-------------------------------------------------- 00144 MetaVolumePixelView* meta_view_; 00145 00146 private: 00147 00148 //-------------------------------------------------- 00152 void initializeConfigurationVisibility(); 00153 00154 //-------------------------------------------------- 00158 void initializeVisibleRegionConfiguration(); 00159 00160 //-------------------------------------------------- 00164 void initializeAffineTransformationConfiguration(); 00165 00166 00167 //-------------------------------------------------- 00171 void initializeConnections(); 00172 00173 //-------------------------------------------------- 00176 MetaVolumePixelDataViewer(MetaVolumePixelDataViewer const&) {} 00177 00178 //-------------------------------------------------- 00181 MetaVolumePixelDataViewer& operator = (MetaVolumePixelDataViewer const&) 00182 { 00183 return(*this); 00184 } 00185 00186 private slots: 00187 00188 //-------------------------------------------------- 00192 void visibleRegionShowLess(); 00193 00194 //-------------------------------------------------- 00198 00199 void toggleWindowLevelVisibility(); 00200 00201 00202 //-------------------------------------------------- 00206 00207 void toggleAffineTransformationVisibility(); 00208 00209 00210 }; 00211 00212 } 00213 00214 #endif 00215 00216 00217