Advertisement
Guest User

Untitled

a guest
Sep 23rd, 2017
71
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C++ 1.33 KB | None | 0 0
  1. #include <noise\module\ridgedmulti.h>
  2. #include <noise\module\scalebias.h>
  3. #include <noise\module\scalepoint.h>
  4.  
  5. namespace noise
  6. {
  7.     namespace module
  8.     {
  9.         const double DEFAULT_HILLTURBULENCE_FREQUENCY = DEFAULT_RIDGED_FREQUENCY;
  10.         const double DEFAULT_HILLTURBULENCE_POWER = 1.0;
  11.         const int DEFAULT_HILLTURBULENCE_ROUGHNESS = 3;
  12.         const int DEFAULT_HILLTURBULENCE_SEED = DEFAULT_RIDGED_SEED;
  13.  
  14.         class HillTurbulence : public Module
  15.         {
  16.         public:
  17.             //Functions
  18.             HillTurbulence();
  19.             ~HillTurbulence();
  20.  
  21.             double GetFrequency () const;
  22.  
  23.             double GetPower () const
  24.             {
  25.                 return m_power;
  26.             }
  27.  
  28.             int GetRoughnessCount () const
  29.             {
  30.                 return yDistortModule.GetOctaveCount ();
  31.             }
  32.  
  33.             int GetSeed () const;
  34.  
  35.             virtual int GetSourceModuleCount () const
  36.             {
  37.                 return 1;
  38.             }
  39.  
  40.             virtual double GetValue (double x, double y, double z) const;
  41.  
  42.             void SetFrequency (double frequency)
  43.             {
  44.                 yDistortModule.SetFrequency (frequency);
  45.             }
  46.  
  47.             void SetPower (double power)
  48.             {
  49.                 m_power = power;
  50.             }
  51.  
  52.             void SetRoughness (int roughness)
  53.             {
  54.                 yDistortModule.SetOctaveCount (roughness);
  55.             }
  56.  
  57.             void SetSeed (int seed);
  58.  
  59.             //Variables
  60.             RidgedMulti yDistortModule;
  61.             ScaleBias scaleBiasModule;
  62.             ScalePoint scalePModule;
  63.  
  64.         protected:
  65.             //Variables
  66.             double m_power;
  67.         };
  68.     }
  69. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement