source: trunk/VUT/GtpVisibilityPreprocessor/src/Exporter.h @ 162

Revision 162, 872 bytes checked in by bittner, 19 years ago (diff)

functional raycasting version

Line 
1#ifndef __EXPORTER_H
2#define __EXPORTER_H
3
4#include <string>
5#include <vector>
6using namespace std;
7
8class KdTree;
9class SceneGraphNode;
10class Ray;
11class AxisAlignedBox3;
12class MeshInstance;
13
14class Exporter
15{
16protected:
17  string mFilename;
18  bool wireframe;
19
20public:
21 
22  Exporter(const string filename):mFilename(filename),wireframe(false)
23  {
24  }
25 
26  virtual bool ExportScene(SceneGraphNode *node) = 0;
27
28  virtual bool
29  ExportBox(const AxisAlignedBox3 &box) = 0;
30
31  virtual bool
32  ExportKdTree(const KdTree &tree) = 0;
33
34  virtual bool
35  ExportRays(const vector<Ray> &rays, const float length=1000) = 0;
36
37  virtual void
38  ExportMeshInstance(MeshInstance *mesh) = 0;
39 
40  SetWireframe() { wireframe = true; }
41  SetFilled() { wireframe = false; }
42
43  static Exporter *
44  GetExporter(const string filename);
45
46};
47 
48
49
50#endif
Note: See TracBrowser for help on using the repository browser.