CS::Math::Noise Namespace Reference (Crystal Space 2.0 Public API Reference)

| ## Public API Reference

- Main Page
- Related Pages
- Modules
- Namespaces
- Classes
- Files

- Namespace List
- Namespace Members

Namespaces | Enumerations | Functions | Variables
CS::Math::Noise Namespace Reference

Noise generation and utilities. More...

## Namespaces
namespace | Model
| Geometric models for noise generation.
namespace | Module
| Noise modules for the combination of noise functions.
## Enumerations
enum | NoiseQuality { QUALITY_FAST = 0, QUALITY_STD = 1, QUALITY_BEST = 2 }
| Enumerates the noise quality. More...
## Functions
int | ClampValue (int value, int lowerBound, int upperBound)
| Clamps a value onto a clamping range.
double | CubicInterp (double n0, double n1, double n2, double n3, double a)
| Performs cubic interpolation between two values bound between two other values.
template<class T >
T | GetMax (const T &a, const T &b)
| Returns the maximum of two values.
template<class T >
T | GetMin (const T &a, const T &b)
| Returns the minimum of two values.
double | GradientCoherentNoise3D (double x, double y, double z, int seed=0, NoiseQuality noiseQuality=QUALITY_STD)
| Generates a gradient-coherent-noise value from the coordinates of a three-dimensional input value.
double | GradientNoise3D (double fx, double fy, double fz, int ix, int iy, int iz, int seed=0)
| Generates a gradient-noise value from the coordinates of a three-dimensional input value and the integer coordinates of a nearby three-dimensional value.
int | IntValueNoise3D (int x, int y, int z, int seed=0)
| Generates an integer-noise value from the coordinates of a three-dimensional input value.
void | LatLonToXYZ (double lat, double lon, double &x, double &y, double &z)
| Converts latitude/longitude coordinates on a unit sphere into 3D Cartesian coordinates.
double | LinearInterp (double n0, double n1, double a)
| Performs linear interpolation between two values.
double | MakeInt32Range (double n)
| Modifies a floating-point value so that it can be stored in a CS::Math::Noise::int32 variable.
double | SCurve3 (double a)
| Maps a value onto a cubic S-curve.
double | SCurve5 (double a)
| Maps a value onto a quintic S-curve.
template<class T >
void | SwapValues (T &a, T &b)
| Swaps two values.
double | ValueCoherentNoise3D (double x, double y, double z, int seed=0, NoiseQuality noiseQuality=QUALITY_STD)
| Generates a value-coherent-noise value from the coordinates of a three-dimensional input value.
double | ValueNoise3D (int x, int y, int z, int seed=0)
| Generates a value-noise value from the coordinates of a three-dimensional input value.
## Variables
const double | DEG_TO_RAD = PI / 180.0
| Converts an angle from degrees to radians.
const double | PI = 3.1415926535897932385
| Pi.
const double | RAD_TO_DEG = 1.0 / DEG_TO_RAD
| Converts an angle from radians to degrees.
const double | SQRT_2 = 1.4142135623730950488
| Square root of 2.
const double | SQRT_3 = 1.7320508075688772935
| Square root of 3.

## Detailed Description

Noise generation and utilities.

Objects from this namespace use the libnoise library, see http://libnoise.sourceforge.net for more information.

## Function Documentation

int CS::Math::Noise::ClampValue | ( | int | value,
|  | int | lowerBound,
|  | int | upperBound
| ) |  | `[inline]`

Clamps a value onto a clamping range.

Parameters:

  value | The value to clamp.
  lowerBound | The lower bound of the clamping range.
  upperBound | The upper bound of the clamping range.

Returns:
  - value if value lies between lowerBound and upperBound.
  - lowerBound if value is less than lowerBound.
  - upperBound if value is greater than upperBound.

This function does not modify any parameters.

Definition at line 42 of file misc.h.