source: GTP/trunk/Lib/Vis/Preprocessing/src/QtInterface/GlobalLinesRenderer.h @ 1940

Revision 1940, 1.0 KB checked in by mattausch, 17 years ago (diff)
Line 
1#ifndef __GLOBALLINESRENDERER_H
2#define __GLOBALLINESRENDERER_H
3
4#include "common.h"
5#include "Containers.h"
6
7class Beam;
8class Intersectable;
9class QGLPixelBuffer;
10
11struct VssRayContainer;
12
13namespace GtpVisibilityPreprocessor {
14
15
16class __declspec(dllexport) GlobalLinesRenderer
17{
18        GlobalLinesRenderer(QGLPixelBuffer *buffer1, QGLPixelBuffer *buffer2);
19        ~GlobalLinesRenderer();
20
21        void CastGlobalLines(Beam &beam, const int samples);
22
23        void InitGL();
24
25        /** Computes rays from information gained with hw sampling
26        */
27        void ComputeRays(Intersectable *sourceObj, VssRayContainer &rays);
28
29        float GetPixelError(int &pvsSize);
30
31        int ComputePvs(ObjectContainer &objects, ObjectContainer &pvs) const;
32
33private:
34
35        /** Draws the geometry for one pass.
36        */
37        void DrawGeometry();
38
39        void ApplyDepthPeeling(Beam &beam, const int samples);
40
41        void SetupProjection(const Vector3 &viewPoint,
42                                                 const Beam &beam);
43
44        QGLPixelBuffer *mNewBuffer;
45        QGLPixelBuffer *mOldBuffer;
46};
47
48
49};
50
51#endif
52
Note: See TracBrowser for help on using the repository browser.