chombo-discharge
Public Member Functions | Protected Attributes | List of all members
PerlinRodSdf Class Reference

A rod geometry, but with noise on one of the end caps. More...

#include <CD_PerlinRodSdf.H>

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

Public Member Functions

 PerlinRodSdf ()=delete
 No weak construction.
 
 PerlinRodSdf (const Real &a_rad, const RealVect &a_center1, const RealVect &a_center2, const bool &a_inside, const Real &a_noiseAmp, const RealVect &a_noiseFreq, const Real &a_persistence, const int &a_octaves, const bool &a_reseed=false)
 Constructor. More...
 
 PerlinRodSdf (const PerlinRodSdf &a_inputIF)
 Copy constructor. More...
 
virtual ~PerlinRodSdf ()
 Destructor.
 
virtual Real value (const RealVect &a_pos) const
 Value function. More...
 
virtual BaseIF * newImplicitFunction () const
 Factory function.
 
- Public Member Functions inherited from PerlinSphereSdf
 PerlinSphereSdf ()
 No weak construction.
 
 PerlinSphereSdf (const Real &a_rad, const RealVect &a_center, const bool &a_inside, const Real &a_noiseAmp, const RealVect &a_noiseFreq, const Real &a_persistence, const int &a_octaves, const bool &a_reseed=false)
 Constructor. More...
 
 PerlinSphereSdf (const PerlinSphereSdf &a_inputIF)
 Copy constructor. More...
 
virtual ~PerlinSphereSdf ()
 Destructor (does nothing)
 

Protected Attributes

RefCountedPtr< BaseIF > m_baseif
 Basis rod, used for copying.
 
- Protected Attributes inherited from PerlinSphereSdf
Real m_rad
 Radius.
 
RealVect m_center
 Center.
 
bool m_inside
 Inside/outside.
 
RefCountedPtr< BaseIF > m_perlinIF
 Noise function.
 

Detailed Description

A rod geometry, but with noise on one of the end caps.

Constructor & Destructor Documentation

◆ PerlinRodSdf() [1/2]

PerlinRodSdf::PerlinRodSdf ( const Real &  a_rad,
const RealVect &  a_center1,
const RealVect &  a_center2,
const bool &  a_inside,
const Real &  a_noiseAmp,
const RealVect &  a_noiseFreq,
const Real &  a_persistence,
const int &  a_octaves,
const bool &  a_reseed = false 
)

Constructor.

Parameters
[in]a_radRod radius
[in]a_center1One end of the rod
[in]a_center2Other end of the rod.
[in]a_insideInside or outside
[in]a_noiseAmpNoise amplitude
[in]a_noiseFreqNoise frequency
[in]a_persistenceFactor for noise octaves.
[in]a_octavesNumber of octaves
[in]a_reseedIf true, reseed the RNG. Otherwise, the the original Perlin hash table.
Note
The persistence argument indicates how we add octaves. With 0.5 we use half the amplitude and twice the frequency for the next octave.

◆ PerlinRodSdf() [2/2]

PerlinRodSdf::PerlinRodSdf ( const PerlinRodSdf a_inputIF)

Copy constructor.

Parameters
[in]a_inputIFOther object

Member Function Documentation

◆ value()

Real PerlinRodSdf::value ( const RealVect &  a_pos) const
virtual

Value function.

Parameters
[in]a_posPosition

Reimplemented from PerlinSphereSdf.


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