source: GTP/trunk/Lib/Vis/Preprocessing/src/SamplingPreprocessor.h @ 1771

Revision 1771, 1.0 KB checked in by bittner, 18 years ago (diff)

merge, preparing sampling strategy support for mixed distributions, filter changes, histogram output for preprocessor

Line 
1#ifndef _SamplingPreprocessor_H__
2#define _SamplingPreprocessor_H__
3
4#include <fstream>
5using namespace std;
6
7#include "Preprocessor.h"
8#include "VssRay.h"
9
10namespace GtpVisibilityPreprocessor {
11
12class Exporter;
13
14/** Sampling based visibility preprocessing. The implementation is based on heuristical
15    sampling of view space
16        */
17class SamplingPreprocessor : public Preprocessor {
18public:
19               
20  SamplingPreprocessor();
21  ~SamplingPreprocessor();
22
23  virtual bool ComputeVisibility();
24
25
26protected:
27        /** Sets up ray for sampling.
28        */
29  void
30  SetupRay(Ray &ray,
31                   const Vector3 &point,
32                   const Vector3 &direction,
33                   const int type,
34                   const Ray::Intersection &source);
35 
36 
37 
38 
39  /** Verify if the exact visibility for this object was established.
40   */
41  void
42  VerifyVisibility(Intersectable *object);
43 
44
45protected:
46
47
48        int mPass;
49        int mSamplesPerPass;
50        int mTotalSamples;
51       
52        ObjectContainer mObjects;
53
54        RayContainer mSampleRays;
55        VssRayContainer mVssSampleRays;
56};
57
58}
59
60#endif
Note: See TracBrowser for help on using the repository browser.