00001 #ifndef VIEWWIDGETIMPL_H 00002 #define VIEWWIDGETIMPL_H 00003 00004 00005 #include "viewWidget.h" 00006 #include "TMyVolMod.h" 00007 #include "transferFunction.h" 00008 #include "TKameraInterface.h" 00009 #include "TRendererInterface.h" 00010 #include "TTransferFuncInterface.h" 00011 #include <QEvent.h> 00012 #include <qcombobox.h> 00013 #include "TImageRendSettImpl.h" 00014 00015 class TMyVolMod; 00016 class TMyCanvasView; 00017 00018 00020 00024 class viewWidgetImpl : public viewWidget 00025 { 00026 Q_OBJECT 00027 00028 public: 00030 00033 viewWidgetImpl (QWidget *parent); 00035 ~viewWidgetImpl () {for (int i=0;i<rendererZahl;i++) delete rendererList[i];} 00036 void xySliding (int value); 00037 void xzSliding (int value); 00038 void yzSliding (int value); 00039 void previewRender(); 00040 void reapplyShading(); 00041 void startWinSliding (int value); 00042 void endWinSliding (int value); 00043 void editorButtonPressed (); 00044 void sliceModeChanged(int); 00045 void rendererChanged(int); 00046 void kameraChanged(int); 00047 void renderImage(); 00048 void camSettings(); 00049 void renderSettings(); 00050 void redrawCams(TMyCanvasView* caller, bool isLeft); 00051 void nnSliceMode (bool flag); 00052 void biSliceMode (bool flag); 00053 00054 QImage *imageBuffer; 00055 public slots: 00057 00060 void fileOpen (); 00061 00062 private: 00063 TKoo3d<int> aktViewRef; 00064 TKoo3d<int> aktViewEnd; 00065 void resizeEvent (QResizeEvent *event); 00066 int rendererZahl; 00067 int kamZahl; 00068 TTransferFuncInterface* transfer; 00069 TRendererInterface* rendererList[32]; 00070 TRendererInterface* aktRenderer; 00071 TKameraInterface* kamList[32]; 00072 TKameraInterface* aktKam; 00073 00074 TFilterInterface* filterList[32]; 00075 int filterZahl; 00076 00077 TMyVolMod *volMod; 00078 transferFunction *transFunc; 00079 bool opened; 00080 int sliceRenderMode; 00081 TKameraInterface* kam; 00082 00083 }; 00084 00085 00086 #endif // VIEWIDGETIMPL_H