ARender.h

Go to the documentation of this file.
00001 #ifndef ARENDER_H_
00002 #define ARENDER_H_
00003 
00004 #include <QPixmap>
00005 #include "Data.h"
00006 
00007 class QPainter;
00008 
00014 class ARender {
00015         protected:
00016                 ARender(const Data& aData) :    mData(aData), 
00017                                                                                 mImageSize(mData.xdim(), mData.ydim()) 
00018                                                                                 {}
00019                                                                                 
00020         public:
00021                 virtual ~ARender() {}
00022 
00027                 virtual QSize getImageSize() const { return mImageSize; }
00033                 virtual void setImageSize(const QSize& s) { mImageSize = s; }
00034 
00039                 virtual void render(QPixmap* pixmap) = 0;
00040 
00044                 Vector<float> getFlow(int aX, int aY) const; 
00045                 
00049                 float getDataPiece(int aX, int aY, unsigned int aDataIndex) const;
00050                 
00051         protected:
00055                 Vector<> getDataAt(float x, float y, float z) const;
00056 
00061                 QPointF imageToWorldCoords(int aX, int aY) const;
00062 
00068                 void setupCoordSystem(QPainter& aPainter) const;
00074                 void setupCoordSystem(QMatrix& aMatrix) const;
00075 
00076                 const Data& mData;
00077                 QSize mImageSize;
00078 
00079 };
00080 
00081 #endif

Generated on Mon Jan 23 19:44:27 2006 for Visualization by  doxygen 1.4.6