Code_TYMPAN  4.2.0
Industrial site acoustic simulation
Public Member Functions | Private Member Functions | Private Attributes | List of all members
UniformSphericSampler2 Class Reference

Another sampler class for uniform spherical sampling. More...

#include <UniformSphericSampler2.h>

Inheritance diagram for UniformSphericSampler2:
Inheritance graph
[legend]
Collaboration diagram for UniformSphericSampler2:
Collaboration graph
[legend]

Public Member Functions

 UniformSphericSampler2 (const unsigned int &nbRays=0, const decimal &Theta=(decimal) M_PIDIV2, const decimal &Phi=(decimal) M_2PI)
 Constructors. More...
 
 UniformSphericSampler2 (const UniformSphericSampler2 &other)
 
 UniformSphericSampler2 (UniformSphericSampler2 *sampler)
 
virtual SamplerClone ()
 Clone a sample. More...
 
virtual ~UniformSphericSampler2 ()
 Destructor. More...
 
virtual vec3 getSample ()
 Return the sample. More...
 
virtual bool isAcceptableSample (vec3 v)
 Return true for an acceptable sample. More...
 
virtual void init ()
 Initialize the sample. More...
 
unsigned int getRealNbRays () const
 Return the launched rays real number. More...
 
virtual unsigned int computeDiffractionNbr (const decimal &thetaCalcul)
 Return the number of rays to launch after a diffraction event. More...
 
- Public Member Functions inherited from Sampler
 Sampler (const unsigned int &nbRays=0, const decimal &Theta=(decimal) M_PIDIV2, const decimal &Phi=(decimal) M_2PI)
 Default constructor. More...
 
 Sampler (const Sampler &other)
 Copy constructors. More...
 
 Sampler (Sampler *sampler)
 
virtual ~Sampler ()
 Destructor. More...
 
virtual unsigned int getNbRays () const
 Get/Set the number of rays to launch. More...
 
virtual void setNbRays (const unsigned int &nbRays)
 
decimal getTheta () const
 Get/Set the polar angle. More...
 
void setTheta (const decimal &Theta)
 
decimal getPhi () const
 Get/Set the equatorial polar angle. More...
 
void setPhi (const decimal &Phi)
 

Private Member Functions

void computeN1 ()
 
void computeThetaCalcul (unsigned int i)
 
void computeN2 ()
 
void computeTrueNbRays ()
 

Private Attributes

unsigned int _real_nb_rays
 Real number of rays launched. More...
 
unsigned int _n1
 Number of slices. More...
 
unsigned int _n2
 Number of rays along a specific slice. More...
 
decimal _dr
 Radius of elementary element of sphere. More...
 
decimal _phi0
 Angle offset between a slice and the previous on. More...
 
decimal _d_theta
 Angle step along longitude. More...
 
decimal _d_phi
 Angle step along given slice. More...
 
decimal _thetaCalcul
 Current angle along a longitude. More...
 
unsigned int _i
 
unsigned int _j
 Current indices. More...
 

Additional Inherited Members

- Protected Attributes inherited from Sampler
unsigned int _nb_rays
 Number of rays to launch. More...
 
decimal _theta
 Global polar angle. More...
 
decimal _phi
 Global equatorial angle. More...
 

Detailed Description

Another sampler class for uniform spherical sampling.

Definition at line 35 of file UniformSphericSampler2.h.

Constructor & Destructor Documentation

◆ UniformSphericSampler2() [1/3]

UniformSphericSampler2::UniformSphericSampler2 ( const unsigned int &  nbRays = 0,
const decimal &  Theta = (decimal) M_PIDIV2,
const decimal &  Phi = (decimal) M_2PI 
)
inline

Constructors.

Definition at line 39 of file UniformSphericSampler2.h.

◆ UniformSphericSampler2() [2/3]

UniformSphericSampler2::UniformSphericSampler2 ( const UniformSphericSampler2 other)
inline

Definition at line 56 of file UniformSphericSampler2.h.

◆ UniformSphericSampler2() [3/3]

UniformSphericSampler2::UniformSphericSampler2 ( UniformSphericSampler2 sampler)
inline

Definition at line 71 of file UniformSphericSampler2.h.

◆ ~UniformSphericSampler2()

virtual UniformSphericSampler2::~UniformSphericSampler2 ( )
inlinevirtual

Destructor.

Definition at line 92 of file UniformSphericSampler2.h.

Member Function Documentation

◆ Clone()

virtual Sampler* UniformSphericSampler2::Clone ( )
inlinevirtual

Clone a sample.

Reimplemented from Sampler.

Definition at line 86 of file UniformSphericSampler2.h.

◆ computeDiffractionNbr()

virtual unsigned int UniformSphericSampler2::computeDiffractionNbr ( const decimal &  theta)
inlinevirtual

Return the number of rays to launch after a diffraction event.

Reimplemented from Sampler.

Definition at line 134 of file UniformSphericSampler2.h.

◆ computeN1()

void UniformSphericSampler2::computeN1 ( )
inlineprivate

Definition at line 140 of file UniformSphericSampler2.h.

◆ computeN2()

void UniformSphericSampler2::computeN2 ( )
inlineprivate

Definition at line 152 of file UniformSphericSampler2.h.

◆ computeThetaCalcul()

void UniformSphericSampler2::computeThetaCalcul ( unsigned int  i)
inlineprivate

Definition at line 147 of file UniformSphericSampler2.h.

◆ computeTrueNbRays()

void UniformSphericSampler2::computeTrueNbRays ( )
inlineprivate

Definition at line 160 of file UniformSphericSampler2.h.

◆ getRealNbRays()

unsigned int UniformSphericSampler2::getRealNbRays ( ) const
inline

Return the launched rays real number.

Definition at line 132 of file UniformSphericSampler2.h.

◆ getSample()

virtual vec3 UniformSphericSampler2::getSample ( )
inlinevirtual

Return the sample.

Reimplemented from Sampler.

Definition at line 94 of file UniformSphericSampler2.h.

Here is the call graph for this function:

◆ init()

virtual void UniformSphericSampler2::init ( )
inlinevirtual

Initialize the sample.

Reimplemented from Sampler.

Definition at line 119 of file UniformSphericSampler2.h.

◆ isAcceptableSample()

virtual bool UniformSphericSampler2::isAcceptableSample ( vec3  v)
inlinevirtual

Return true for an acceptable sample.

Reimplemented from Sampler.

Definition at line 117 of file UniformSphericSampler2.h.

Member Data Documentation

◆ _d_phi

decimal UniformSphericSampler2::_d_phi
private

Angle step along given slice.

Definition at line 177 of file UniformSphericSampler2.h.

◆ _d_theta

decimal UniformSphericSampler2::_d_theta
private

Angle step along longitude.

Definition at line 176 of file UniformSphericSampler2.h.

◆ _dr

decimal UniformSphericSampler2::_dr
private

Radius of elementary element of sphere.

Definition at line 174 of file UniformSphericSampler2.h.

◆ _i

unsigned int UniformSphericSampler2::_i
private

Definition at line 179 of file UniformSphericSampler2.h.

◆ _j

unsigned int UniformSphericSampler2::_j
private

Current indices.

Definition at line 179 of file UniformSphericSampler2.h.

◆ _n1

unsigned int UniformSphericSampler2::_n1
private

Number of slices.

Definition at line 172 of file UniformSphericSampler2.h.

◆ _n2

unsigned int UniformSphericSampler2::_n2
private

Number of rays along a specific slice.

Definition at line 173 of file UniformSphericSampler2.h.

◆ _phi0

decimal UniformSphericSampler2::_phi0
private

Angle offset between a slice and the previous on.

Definition at line 175 of file UniformSphericSampler2.h.

◆ _real_nb_rays

unsigned int UniformSphericSampler2::_real_nb_rays
private

Real number of rays launched.

Definition at line 171 of file UniformSphericSampler2.h.

◆ _thetaCalcul

decimal UniformSphericSampler2::_thetaCalcul
private

Current angle along a longitude.

Definition at line 178 of file UniformSphericSampler2.h.


The documentation for this class was generated from the following file: