Support Forum G3D Web Page |
G3D Innovation Engine http://casual-effects.com/g3d Copyright 2000-2019, Morgan McGuire All rights reserved Available under the BSD License. More...
Namespaces | |
G3D | |
Macros | |
#define | __USE_ISOC991 |
#define | __USE_ISOC9X1 |
#define | _ISOC99_SOURCE1 |
#define | _ISOC9X_SOURCE1 |
#define | fuzzyEpsilon32 (0.00002f) |
#define | fuzzyEpsilon64 (0.0000005) |
#define | G3D_DECLARE_SYMBOL(s) static const String SYMBOL_##s = #s |
Defines SYMBOL_s as a static const String with the value s. More... | |
Typedefs | |
typedef float | G3D::Biradiance |
typedef float | G3D::float32 |
typedef double | G3D::float64 |
typedef int16_t | G3D::int16 |
typedef int32_t | G3D::int32 |
typedef int64_t | G3D::int64 |
typedef int8_t | G3D::int8 |
typedef float | G3D::Irradiance |
typedef float | G3D::Power |
typedef float | G3D::Radiance |
typedef float | G3D::Radiosity |
typedef uint16_t | G3D::uint16 |
typedef uint32_t | G3D::uint32 |
typedef uint64_t | G3D::uint64 |
typedef uint8_t | G3D::uint8 |
Functions | |
double | G3D::abs (double fValue) |
double | G3D::aCos (double fValue) |
float | G3D::acos (float fValue) |
bool | G3D::all (float x) |
Returns true if x is not exactly equal to 0.0f. More... | |
bool | G3D::any (float x) |
Returns true if x is not exactly equal to 0.0f. More... | |
double | G3D::aSin (double fValue) |
double | G3D::aTan (double fValue) |
double | G3D::aTan2 (double fY, double fX) |
int | G3D::ceilPow2 (unsigned int in) |
Return the next power of 2 higher than the input If the input is already a power of 2, the output will be the same as the input. More... | |
int | G3D::ceilPow2 (int in) |
int | G3D::ceilPow2 (float in) |
int | G3D::clamp (int val, int low, int hi) |
double | G3D::clamp (double val, double low, double hi) |
float | G3D::clamp (float val, float low, float hi) |
double | G3D::distance (double x, double y) |
double | G3D::distance (double x, double y, double z) |
float | G3D::distance (float x, float y) |
float | G3D::distance (float x, float y, float z) |
float | G3D::dot (float a, float b) |
a * b (for DirectX/Cg support) More... | |
double | G3D::drand48 () |
double | G3D::eps (double a, double b) |
Computes an appropriate epsilon for comparing a and b. More... | |
float | G3D::eps (float a, float b) |
float | G3D::finf () |
uint16 | G3D::flipEndian16 (const uint16 x) |
Given a 16-bit integer, returns the integer with the bytes in the opposite order. More... | |
uint32 | G3D::flipEndian32 (const uint32 x) |
Given a 32-bit integer, returns the integer with the bytes in the opposite order. More... | |
float | G3D::fnan () |
float | G3D::fract (float x) |
double | G3D::fract (double x) |
bool | G3D::fuzzyEq (double a, double b) |
Note that fuzzyEq(a, b) && fuzzyEq(b, c) does not imply fuzzyEq(a, c), although that will be the case on some occasions. More... | |
bool | G3D::fuzzyEq (float a, float b) |
bool | G3D::fuzzyGe (double a, double b) |
Is a near or greater than b? More... | |
bool | G3D::fuzzyGt (double a, double b) |
Is a strictly greater than b? (Guaranteed false if a <= b). More... | |
bool | G3D::fuzzyLe (double a, double b) |
Is a near or less than b? More... | |
bool | G3D::fuzzyLt (double a, double b) |
Is a strictly less than b? (Guaranteed false if a >= b) More... | |
bool | G3D::fuzzyNe (double a, double b) |
True if a is definitely not equal to b. More... | |
float | G3D::gaussRandom (float mean=0.0f, float stdev=1.0f) |
Normally distributed random number. More... | |
double | G3D::halfPi () |
void | G3D::hammersleySequence2D (int i, const int N, float &x, float &y) |
Returns the ith Hammersley point from a N-point sequence on the unit square, [0, 1]. More... | |
int | G3D::highestBit (uint32 x) |
Returnes the 0-based index of the highest 1 bit from the left. More... | |
int | G3D::iAbs (int iValue) |
int | G3D::iCeil (double fValue) |
int | G3D::iClamp (int val, int low, int hi) |
Clamps the value to the range [low, hi] (inclusive) More... | |
int16 | G3D::iClamp (int16 val, int16 low, int16 hi) |
int | G3D::iFloor (double fValue) |
int | G3D::iMax (int x, int y) |
int | G3D::iMin (int x, int y) |
int | G3D::iMod3 (int x) |
Computes x % 3. More... | |
double | G3D::inf () |
This value should not be tested against directly, instead G3D::isNan() and G3D::isFinite() will return reliable results. More... | |
int | G3D::iRound (double fValue) |
Fast round to integer using the lrint routine. More... | |
int | G3D::iRound (float f) |
Fast round to integer using the lrint routine. More... | |
bool | G3D::isEven (int num) |
bool | G3D::isFinite (double x) |
Returns true if the argument is a finite real number. More... | |
bool | G3D::isFinite (float x) |
int | G3D::iSign (int iValue) |
int | G3D::iSign (double fValue) |
int | G3D::iSign (float f) |
bool | G3D::isNaN (double x) |
Returns true if the argument is NaN (not a number). More... | |
bool | G3D::isNaN (float x) |
bool | G3D::isNaN (int x) |
bool | G3D::isNaN (uint64 x) |
bool | G3D::isOdd (int num) |
bool | G3D::isPow2 (int num) |
True if num is a power of two. More... | |
bool | G3D::isPow2 (uint64 num) |
bool | G3D::isPow2 (uint32 x) |
int | G3D::iWrap (int val, int hi) |
Wraps the value to the range [0, hi) (exclusive on the high end). More... | |
double | G3D::lerp (double a, double b, double f) |
Returns a + (b - a) * f; More... | |
float | G3D::lerp (float a, float b, float f) |
float | G3D::lerpAngle (float a, float b, float t) |
A lerp() for angles in radians that guarantees moving the shortest way around the circle. More... | |
double | G3D::log2 (double x) |
float | G3D::log2 (float x) |
double | G3D::log2 (int x) |
template<class T > | |
T | G3D::max (const T &x, const T &y) |
template<class T > | |
T | G3D::max (const T &x, const T &y, const T &z) |
template<class T > | |
T | G3D::max (const T &x, const T &y, const T &z, const T &w) |
template<class T > | |
T | G3D::min (const T &x, const T &y) |
template<class T > | |
T | G3D::min (const T &x, const T &y, const T &z) |
template<class T > | |
T | G3D::min (const T &x, const T &y, const T &z, const T &w) |
float | G3D::mod1 (float t) |
double | G3D::mod1 (double t) |
float | G3D::mul (float a, float b) |
a * b (for DirectX/Cg support) More... | |
double | G3D::nan () |
This value should not be tested against directly, instead G3D::isNan() and G3D::isFinite() will return reliable results. More... | |
int | G3D::nextMod3 (int i) |
float | G3D::normalize (float v) |
v / v (for DirectX/Cg support) More... | |
double | G3D::pi () |
float | G3D::pif () |
int | std::pow (int a, int b) |
int | G3D::pow2 (unsigned int x) |
Returns 2^x. More... | |
template<class T > | |
T | G3D::pow5 (T x) |
Returns x5 More... | |
double | G3D::round (double f) |
float | G3D::round (float f) |
int | G3D::roundStochastically (float f) |
Rounds so that the mean of a set of rounded numbers is close to the mean of the original numbers. More... | |
float | G3D::rsq (float x) |
Computes 1 / sqrt(x). More... | |
double | G3D::rsqrt (double x) |
float | G3D::rsqrt (float x) |
double | G3D::sign (double fValue) |
float | G3D::sign (float x) |
float | G3D::signedPow (float b, float e) |
Computes |b|^e * sign(b) More... | |
double | G3D::signedPow (double b, double e) |
Computes |b|^e * sign(b) More... | |
double | G3D::sinc (double x) |
sin(x)/x More... | |
float | G3D::smootherstep (float edge0, float edge1, float x) |
Perlin's C2 continous variation on smoothstep() More... | |
float | G3D::smoothstep (float edge0, float edge1, float x) |
The GLSL smoothstep function. More... | |
double | G3D::square (double fValue) |
float | G3D::square (float x) |
int | G3D::square (int x) |
float | G3D::squareMagnitude (float x) |
Preserves sign while squaring magnitude. More... | |
double | G3D::squareMagnitude (double x) |
Preserves sign while squaring magnitude. More... | |
int | G3D::squareMagnitude (int x) |
Preserves sign while squaring magnitude. More... | |
double | G3D::sumSquares (double x, double y) |
double | G3D::sumSquares (double x, double y, double z) |
float | G3D::sumSquares (float x, float y) |
float | G3D::sumSquares (float x, float y, float z) |
double | G3D::toDegrees (double rad) |
float | G3D::toDegrees (float rad) |
float | G3D::toDegrees (int rad) |
double | G3D::toRadians (double deg) |
float | G3D::toRadians (float deg) |
float | G3D::toRadians (int deg) |
double | G3D::twoPi () |
unsigned int | G3D::uiClamp (unsigned int val, unsigned int low, unsigned int hi) |
float | G3D::uniformRandom (float low, float hi) |
double | G3D::uniformRandomD (double low, double hi) |
float | G3D::wrap (float t, float lo, float hi) |
Computes a floating point modulo; the result is t wrapped to the range [lo, hi). More... | |
float | G3D::wrap (float t, float hi) |
double | G3D::wrap (double t, double lo, double hi) |
double | G3D::wrap (double t, double hi) |
Variables | |
double | G3D::ignoreDouble |
For use with default output arguments. More... | |
float | G3D::ignoreFloat |
For use with default output arguments. More... | |
int | G3D::ignoreInt |
For use with default output arguments. More... | |
G3D Innovation Engine http://casual-effects.com/g3d Copyright 2000-2019, Morgan McGuire All rights reserved Available under the BSD License.
#define __USE_ISOC991 |
#define __USE_ISOC9X1 |
#define _ISOC99_SOURCE1 |
#define _ISOC9X_SOURCE1 |
#define fuzzyEpsilon32 (0.00002f) |
Referenced by G3D::eps().
#define fuzzyEpsilon64 (0.0000005) |
Referenced by G3D::eps().
#define G3D_DECLARE_SYMBOL | ( | s | ) | static const String SYMBOL_##s = #s |
Defines SYMBOL_s as a static const String with the value s.
Useful for avoiding heap allocation from C-string constants being converted at runtime.
|
inline |