Go to the documentation of this file.00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018 #ifndef _vtk_Logo_Rendering_h_
00019 #define _vtk_Logo_Rendering_h_
00020
00021
00022 #include <mitkBaseData.h>
00023
00024 class vtkRenderer;
00025 class vtkRenderWindow;
00026 class vtkMapper;
00027 class vtkCamera;
00028 class vtkImageActor;
00029 class vtkImageMapper;
00030 class vtkLookupTable;
00031 class vtkPolyData;
00032 class vtkPNGReader;
00033 class vtkImageImport;
00034
00035 namespace mitk {
00036
00037 class RenderWindow;
00043 class MITK_CORE_EXPORT ManufacturerLogo : public BaseData
00044 {
00045 public:
00046
00047 mitkClassMacro( ManufacturerLogo, BaseData );
00048
00049 itkNewMacro( Self );
00050
00051 enum LogoPosition{ UpperLeft, UpperRight, LowerLeft, LowerRight, Middle };
00052
00053
00054
00060 virtual void SetRenderWindow( vtkRenderWindow* renderWindow );
00061
00065 virtual void SetLogoSource(const char* filename);
00069 virtual void SetOpacity(double opacity);
00074 virtual void SetZoomFactor( double factor );
00075
00080 virtual void Enable();
00081
00086 virtual void Disable();
00087
00092 virtual bool IsEnabled();
00093
00098 virtual void SetRequestedRegionToLargestPossibleRegion();
00099
00104 virtual bool RequestedRegionIsOutsideOfTheBufferedRegion();
00105
00110 virtual bool VerifyRequestedRegion();
00111
00116 virtual void SetRequestedRegion(itk::DataObject*);
00117
00122 virtual vtkRenderWindow* GetRenderWindow();
00123
00129 virtual vtkRenderer* GetVtkRenderer();
00130
00134 virtual vtkImageActor* GetActor();
00135
00139 virtual vtkImageMapper* GetMapper();
00140
00145 virtual void ForceMBILogoVisible(bool visible);
00146
00147 protected:
00148 void SetupCamera();
00149 void SetupPosition();
00150
00154 ManufacturerLogo();
00155
00159 ~ManufacturerLogo();
00160
00161 vtkRenderWindow* m_RenderWindow;
00162 vtkRenderer* m_Renderer;
00163 vtkImageActor* m_Actor;
00164 vtkImageMapper* m_Mapper;
00165 vtkPNGReader* m_PngReader;
00166 vtkCamera* m_Camera;
00167 vtkImageImport* m_VtkImageImport;
00168
00169 std::string m_FileName;
00170
00171 bool m_IsEnabled;
00172 bool m_ForceShowMBIDepartmentLogo;
00173
00174 LogoPosition m_LogoPosition;
00175 double m_ZoomFactor;
00176 double m_Opacity;
00177
00178 char * m_ImageData;
00179
00180 };
00181
00182 }
00183 #endif