00001 /******************************************************************************* 00002 * MyPainter.h 00003 * 00004 * (C) 2007 AG Aktives Sehen <agas@uni-koblenz.de> 00005 * Universitaet Koblenz-Landau 00006 * 00007 * Additional information: 00008 * $Id: $ 00009 *******************************************************************************/ 00010 00011 #ifndef TOFPAINTER_H 00012 #define TOFPAINTER_H 00013 00014 #include "PainterPlugin.h" 00015 #include "Workers/BaseLib/Vec.h" 00016 #include "Workers/BaseLib/Vec3.h" 00017 #include "Workers/SceneGraph/SceneGraph.h" 00018 00024 class TofPainter: public PainterPlugin 00025 { 00026 Q_OBJECT 00027 00028 public: 00029 00031 TofPainter(); 00032 00034 ~TofPainter(); 00035 00037 virtual void paint ( float next2DLayer ); 00038 00039 public slots: 00040 00042 virtual void processMessage ( Message* newMessage ); 00043 00044 private: 00045 00046 void initBuffers( int height=0, int width = 0 ); 00047 00048 SceneGraph m_SceneGraph; 00049 bool m_SceneGraphInitialized; 00050 00051 int m_Height; 00052 int m_Width; 00053 00054 float *m_Amplitudes; 00055 float *m_Depths; 00056 BaseLib::Math::Vec3f *m_Points; 00057 00058 float m_ColorFactor; 00059 float m_AmplitudeScaling; 00060 float m_AmplitudeThreshold; 00061 int m_ViewMode; 00062 00063 unsigned int m_LastDataTime; 00064 unsigned int m_DisplayDuration; 00065 00066 double m_Transformation[16]; 00067 }; 00068 00069 #endif