19 #include "Geometry/mathlib.h"
66 return vec3(0.0, 0.0, 0.0);
Sampler class and its sub-classes describe ray generators used in AcousticRayTracer....
Sampler(Sampler *sampler)
decimal _phi
Global equatorial angle.
decimal getTheta() const
Get/Set the polar angle.
virtual void setNbRays(const unsigned int &nbRays)
void setTheta(const decimal &Theta)
decimal _theta
Global polar angle.
void setPhi(const decimal &Phi)
unsigned int _nb_rays
Number of rays to launch.
virtual void init()
Initialize the sample.
Sampler(const Sampler &other)
Copy constructors.
virtual unsigned int getNbRays() const
Get/Set the number of rays to launch.
decimal getPhi() const
Get/Set the equatorial polar angle.
virtual unsigned int computeDiffractionNbr(const decimal &theta)
Return the number of rays to launch after a diffraction event.
virtual Sampler * Clone()
Clone a sample.
Sampler(const unsigned int &nbRays=0, const decimal &Theta=(decimal) M_PIDIV2, const decimal &Phi=(decimal) M_2PI)
Default constructor.
virtual bool isAcceptableSample(vec3 v)
Return true for an acceptable sample.
virtual vec3 getSample()
Return the sample.
virtual ~Sampler()
Destructor.
base_vec3< decimal > vec3