KSeExpr  4.0.4.0
Noise.h
Go to the documentation of this file.
1 // SPDX-FileCopyrightText: 2011-2019 Disney Enterprises, Inc.
2 // SPDX-License-Identifier: LicenseRef-Apache-2.0
3 // SPDX-FileCopyrightText: 2020 L. E. Segovia <amy@amyspark.me>
4 // SPDX-License-Identifier: GPL-3.0-or-later
5 
6 #ifndef _noise_h_
7 #define _noise_h_
8 namespace KSeExpr {
9 
11 template <int d_in, int d_out, class T>
12 void Noise(const T* in, T* out);
13 
16 template <int d_in, int d_out, class T>
17 void PNoise(const T* in, const int* period, T* out);
18 
20 template <int d_in, int d_out, bool turbulence, class T>
21 void FBM(const T* in, T* out, int octaves, T lacunarity, T gain);
22 
24 template <int d_in, int d_out, class T>
25 void CellNoise(const T* in, T* out);
26 }
27 #endif
void Noise(const T *in, T *out)
Noise with d_in dimensional domain, d_out dimensional abcissa.
Definition: Noise.cpp:146
void CellNoise(const T *in, T *out)
Computes cellular noise (non-interpolated piecewise constant cell random values)
Definition: Noise.cpp:130
void PNoise(const T *in, const int *period, T *out)
Periodic Noise with d_in dimensional domain, d_out dimensional abcissa.
Definition: Noise.cpp:163
void FBM(const T *in, T *out, int octaves, T lacunarity, T gain)
Fractional Brownian Motion. If turbulence is true then turbulence computed.
Definition: Noise.cpp:181