00001
00002
00003
00004
00005
00006
00007
00008
00009
00010 #ifndef __mitkMIPVRScene_h
00011 #define __mitkMIPVRScene_h
00012
00013 #include "mitkRCPtr.h"
00014 #include "mitkVis2Scene3D.h"
00015 #include "modules/mitkMIPVR.h"
00016 #include "mitkICVolume.h"
00017
00018 class mitkCoherentVolume;
00019
00027 class MITK_VISUALIZATION2_API mitkMIPVRScene : public mitkVis2Scene3D
00028 {
00029 public:
00030 MITK_TYPE(mitkMIPVRScene,mitkVis2Scene3D)
00031 mitkMIPVRScene();
00032
00036 virtual void RenderGL();
00037
00042 void SetData(mitkICVolume *data);
00043
00047 void SetDataModified();
00048
00053 void SetCoherentData(mitkCoherentVolume *CVolume);
00054
00058 void SetCoherentDataModified();
00059
00065 void SetWidthCenter(float windowWidth,float windowCenter);
00066
00071 void SetWindowWidth(float windowWidth);
00072
00077 void SetWindowCenter(float windowCenter);
00078
00083 float GetWindowWidth();
00084
00089 float GetWindowCenter();
00090
00095 void SetCroppingBounds(const float CroppingBounds[6]);
00096
00101 void GetCroppingBounds(float CroppingBounds[6]);
00102
00103 mitkMIPVR& GetKernelModule() { return m_module; }
00104
00105
00106 protected:
00107 virtual ~mitkMIPVRScene();
00108 virtual void GetSize3D(float size[3]);
00109
00110 private:
00111 mitkMIPVRScene(const mitkMIPVRScene&);
00112 void operator = (const mitkMIPVRScene&);
00113
00114 private:
00115 mitkRCPtr<mitkICVolume> m_Data;
00116
00117 mitkMIPVR m_module;
00118 };
00119
00120 #endif