mi::math Namespace Reference
[Math API]
Description
Namespace for the Math API.
Namespaces
- namespace
- Namespace for basic math functors in the Math API. More...
- namespace
- Namespace for generic functions in the Math API. More...
Classes
- class
- Axis-aligned N-dimensional bounding box class template of fixed dimension. More...
- struct
- Storage class for an axis-aligned N-dimensional bounding box class template of fixed dimension. More...
- class
- Standard RGBA color class with floating point elements and operations. More...
- struct
- Generic storage class template for an RGBA color representation storing four floating points elements. More...
- class
- NxM-dimensional matrix class template of fixed dimensions. More...
- struct
- Specialization for 1x1-matrix. More...
- struct
- Specialization for 1x2-matrix. More...
- struct
- Specialization for 1x3-matrix. More...
- struct
- Specialization for 1x4-matrix. More...
- struct
- Specialization for 2x1-matrix. More...
- struct
- Specialization for 2x2-matrix. More...
- struct
- Specialization for 2x3-matrix. More...
- struct
- Specialization for 2x4-matrix. More...
- struct
- Specialization for 3x1-matrix. More...
- struct
- Specialization for 3x2-matrix. More...
- struct
- Specialization for 3x3-matrix. More...
- struct
- Specialization for 3x4-matrix. More...
- struct
- Specialization for 4x1-matrix. More...
- struct
- Specialization for 4x2-matrix. More...
- struct
- Specialization for 4x3-matrix. More...
- struct
- Specialization for 4x4-matrix. More...
- struct
- Storage class for a NxM-dimensional matrix class template of fixed dimensions. More...
- class
- Spectrum with floating point elements and operations. More...
- struct
- Generic storage class template for a Spectrum representation storing three floating point elements. More...
- class
- Fixed-size math vector class template with generic operations. More...
- struct
- Specialization for dimension 1 to create x member. More...
- struct
- Specialization for dimension 2 to create x and y member. More...
- struct
- Specialization for dimension 3 to create x, y, and z members. More...
- struct
- Specialization for dimension 4 to create x, y, z, and w members. More...
- struct
- Generic storage class template for math vector representations storing DIM elements of type T. More...
Enumerations
- enum {CLIP_RGB, CLIP_ALPHA, CLIP_RAW }
- Supported clipping modes. More...
- enum {FROM_ITERATOR }
- Enum used for initializing a vector from an iterator. More...
Functions
- Color ( const Color& c)
- Returns a color with the elementwise absolute values of the color c. More...
- Spectrum ( const Spectrum& c)
- Returns a spectrum with the elementwise absolute values of the spectrum c. More...
- template< typename T, Size> Vector < T , DIM > ( const Vector_struct < T , DIM >& v)
- Returns a vector with the elementwise absolute values of the vector v. More...
- Color ( const Color& c)
- Returns a color with the elementwise arc cosine of the color c. More...
- Float32 ( Float32 s)
- Returns the arc cosine of s in radians. More...
- Float64 ( Float64 s)
- Returns the arc cosine of s in radians. More...
- Spectrum ( const Spectrum& c)
- Returns a spectrum with the elementwise arc cosine of the spectrum c. More...
- template< typename T, Size> Vector < T , DIM > ( const Vector_struct < T , DIM >& v)
- Returns a vector with the elementwise arc cosine of the vector v. More...
- bool ( const Color& c)
- Returns true if all elements of c are not equal to zero. More...
- bool ( Uint8 v)
- Returns true if v is not equal to zero. More...
- bool ( Uint16 v)
- Returns true if v is not equal to zero. More...
- bool ( Uint32 v)
- Returns true if v is not equal to zero. More...
- bool ( Uint64 v)
- Returns true if v is not equal to zero. More...
- bool ( Sint8 v)
- Returns true if v is not equal to zero. More...
- bool ( Sint16 v)
- Returns true if v is not equal to zero. More...
- bool ( Sint32 v)
- Returns true if v is not equal to zero. More...
- bool ( Sint64 v)
- Returns true if v is not equal to zero. More...
- bool ( Float32 v)
- Returns true if v is not equal to zero. More...
- bool ( Float64 v)
- Returns true if v is not equal to zero. More...
- bool ( const Spectrum& c)
- Returns true if all elements of c are not equal to zero. More...
- template< typename T, Size>bool ( const Vector_struct < T , DIM >& v)
- Returns true if all of all elements of v returns true. More...
- bool ( const Color& c)
- Returns true if any element of c is not equal to zero. More...
- bool ( Uint8 v)
- Returns true if v is not equal to zero. More...
- bool ( Uint16 v)
- Returns true if v is not equal to zero. More...
- bool ( Uint32 v)
- Returns true if v is not equal to zero. More...
- bool ( Uint64 v)
- Returns true if v is not equal to zero. More...
- bool ( Sint8 v)
- Returns true if v is not equal to zero. More...
- bool ( Sint16 v)
- Returns true if v is not equal to zero. More...
- bool ( Sint32 v)
- Returns true if v is not equal to zero. More...
- bool ( Sint64 v)
- Returns true if v is not equal to zero. More...
- bool ( Float32 v)
- Returns true if v is not equal to zero. More...
- bool ( Float64 v)
- Returns true if v is not equal to zero. More...
- bool ( const Spectrum& c)
- Returns true if any element of c is not equal to zero. More...
- template< typename T, Size>bool ( const Vector_struct < T , DIM >& v)
- Returns true if any of any element of v returns true. More...
- Color ( const Color& c)
- Returns a color with the elementwise arc sine of the color c. More...
- Float32 ( Float32 s)
- Returns the arc sine of s in radians. More...
- Float64 ( Float64 s)
- Returns the arc sine of s in radians. More...
- Spectrum ( const Spectrum& c)
- Returns a spectrum with the elementwise arc sine of the spectrum c. More...
- template< typename T, Size> Vector < T , DIM > ( const Vector_struct < T , DIM >& v)
- Returns a vector with the elementwise arc sine of the vector v. More...
- Color ( const Color& c)
- Returns a color with the elementwise arc tangent of the color c. More...
- Float32 ( Float32 s)
- Returns the arc tangent of s. More...
- Float64 ( Float64 s)
- Returns the arc tangent of s. More...
- Spectrum ( const Spectrum& c)
- Returns a spectrum with the elementwise arc tangent of the spectrum c. More...
- template< typename T, Size> Vector < T , DIM > ( const Vector_struct < T , DIM >& v)
- Returns a vector with the elementwise arc tangent of the vector v. More...
- Color ( const Color& c, const Color& d)
- Returns a color with the elementwise arc tangent of the color c / d. More...
- Float32 ( Float32 s, Float32 t)
- Returns the arc tangent of s / t. More...
- Float64 ( Float64 s, Float64 t)
- Returns the arc tangent of s / t. More...
- Spectrum ( const Spectrum& c, const Spectrum& d)
- Returns a spectrum with the elementwise arc tangent of the spectrum c / d. More...
- template< typename T, Size> Vector < T , DIM > ( const Vector_struct < T , DIM >& v, const Vector_struct < T , DIM >& w)
- Returns a vector with the elementwise arc tangent of the vector v / w. More...
- Color ( const Color& c)
- Returns a color with the elementwise smallest integral value that is not less than the element in color c. More...
- Float32 ( Float32 s)
- Returns the smallest integral value that is not less than s. More...
- Float64 ( Float64 s)
- Returns the smallest integral value that is not less than s. More...
- Spectrum ( const Spectrum& c)
- Returns a spectrum with the elementwise smallest integral value that is not less than the element in spectrum c. More...
- template< typename T, Size> Vector < T , DIM > ( const Vector_struct < T , DIM >& v)
- Returns a vector with the elementwise smallest integral value that is not less than the element in vector v. More...
- Color ( const Color& c, const Color& low, const Color& high)
- Returns the color c elementwise clamped to the range [low, high]. More...
- Color ( const Color& c, const Color& low, Float32 high)
- Returns the color c elementwise clamped to the range [low, high]. More...
- Color ( const Color& c, Float32 low, const Color& high)
- Returns the color c elementwise clamped to the range [low, high]. More...
- Color ( const Color& c, Float32 low, Float32 high)
- Returns the color c elementwise clamped to the range [low, high]. More...
- Uint8 ( Uint8 s, Uint8 low, Uint8 high)
- Returns the value s if it is in the range [low, high], the value low if s < low, or the value high if s > high. More...
- Uint16 ( Uint16 s, Uint16 low, Uint16 high)
- Returns the value s if it is in the range [low, high], the value low if s < low, or the value high if s > high. More...
- Uint32 ( Uint32 s, Uint32 low, Uint32 high)
- Returns the value s if it is in the range [low, high], the value low if s < low, or the value high if s > high. More...
- Uint64 ( Uint64 s, Uint64 low, Uint64 high)
- Returns the value s if it is in the range [low, high], the value low if s < low, or the value high if s > high. More...
- Sint8 ( Sint8 s, Sint8 low, Sint8 high)
- Returns the value s if it is in the range [low, high], the value low if s < low, or the value high if s > high. More...
- Sint16 ( Sint16 s, Sint16 low, Sint16 high)
- Returns the value s if it is in the range [low, high], the value low if s < low, or the value high if s > high. More...
- Sint32 ( Sint32 s, Sint32 low, Sint32 high)
- Returns the value s if it is in the range [low, high], the value low if s < low, or the value high if s > high. More...
- Sint64 ( Sint64 s, Sint64 low, Sint64 high)
- Returns the value s if it is in the range [low, high], the value low if s < low, or the value high if s > high. More...
- Float32 ( Float32 s, Float32 low, Float32 high)
- Returns the value s if it is in the range [low, high], the value low if s < low, or the value high if s > high. More...
- Float64 ( Float64 s, Float64 low, Float64 high)
- Returns the value s if it is in the range [low, high], the value low if s < low, or the value high if s > high. More...
- Spectrum ( const Spectrum& c, const Spectrum& low, const Spectrum& high)
- Returns the spectrum c elementwise clamped to the range [low, high]. More...
- Spectrum ( const Spectrum& c, const Spectrum& low, Float32 high)
- Returns the spectrum c elementwise clamped to the range [low, high]. More...
- Spectrum ( const Spectrum& c, Float32 low, const Spectrum& high)
- Returns the spectrum c elementwise clamped to the range [low, high]. More...
- Spectrum ( const Spectrum& c, Float32 low, Float32 high)
- Returns the spectrum c elementwise clamped to the range [low, high]. More...
- template< typename T, Size> Vector < T , DIM > ( const Vector_struct < T , DIM >& v, const Vector_struct < T , DIM >& low, const Vector_struct < T , DIM >& high)
- Returns the vector v elementwise clamped to the range [low, high]. More...
- template< typename T, Size> Vector < T , DIM > ( const Vector_struct < T , DIM >& v, const Vector_struct < T , DIM >& low, T high)
- Returns the vector v elementwise clamped to the range [low, high]. More...
- template< typename T, Size> Vector < T , DIM > ( const Vector_struct < T , DIM >& v, T low, const Vector_struct < T , DIM >& high)
- Returns the vector v elementwise clamped to the range [low, high]. More...
- template< typename T, Size> Vector < T , DIM > ( const Vector_struct < T , DIM >& v, T low, T high)
- Returns the vector v elementwise clamped to the range [low, high]. More...
- template< typename T, Size> Bbox < T , DIM > ( const Bbox < T , DIM >& bbox1, const Bbox < T , DIM >& bbox2)
- Clip bbox1 at bbox2 and return the result. More...
- template< typename T2, Size, typename T1, Size> Vector < T2 , DIM2 > ( const Vector < T1 , DIM1 >& v, const T2& fill = T2(0))
- Converts the vector v of type Vector<T1, DIM1> to a vector of type Vector<T2, DIM2>. More...
- Color ( const Color& c)
- Returns a color with the elementwise cosine of the color c. More...
- Float32 ( Float32 a)
- Returns the cosine of a. The angle a is specified in radians. More...
- Float64 ( Float64 a)
- Returns the cosine of a. The angle a is specified in radians. More...
- Spectrum ( const Spectrum& c)
- Returns a spectrum with the elementwise cosine of the spectrum c. More...
- template< typename T, Size> Vector < T , DIM > ( const Vector_struct < T , DIM >& v)
- Returns a vector with the elementwise cosine of the vector v. More...
- template< typename T>T ( const Vector_struct < T , 2 >& lhs, const Vector_struct < T , 2 >& rhs)
- Returns the two-times-two determinant result for the two vectors lhs and rhs. More...
- template< typename T> Vector < T , 3 > ( const Vector_struct < T , 3 >& lhs, const Vector_struct < T , 3 >& rhs)
- Returns the three-dimensional cross product result for the two vectors lhs and rhs. More...
- Color ( const Color& c)
- Converts elementwise radians in c to degrees. More...
- Float32 ( Float32 r)
- Converts radians r to degrees. More...
- Float64 ( Float64 r)
- Converts radians r to degrees. More...
- Spectrum ( const Spectrum& c)
- Converts elementwise radians in c to degrees. More...
- template< typename T, Size> Vector < T , DIM > ( const Vector_struct < T , DIM >& v)
- Converts elementwise radians in v to degrees. More...
- Sint32 ( Sint32 a, Sint32 b)
- Returns the inner product (a.k.a. dot or scalar product) of two integers. More...
- Float32 ( Float32 a, Float32 b)
- Returns the inner product (a.k.a. dot or scalar product) of two scalars. More...
- Float64 ( Float64 a, Float64 b)
- Returns the inner product (a.k.a. dot or scalar product) of two scalars. More...
- template< class V>V::value_type ( const V& lhs, const V& rhs)
- Returns the inner product (a.k.a. dot or scalar product) of two vectors. More...
- template< typename T, Size> Vector < bool , DIM > ( const Vector < T , DIM >& lhs, const Vector < T , DIM >& rhs)
- Returns the boolean vector result of an elementwise equality comparison. More...
- template< typename T, Size> Vector < bool , DIM > ( const Vector < T , DIM >& lhs, const Vector < T , DIM >& rhs)
- Returns the boolean vector result of an elementwise greater-than comparison. More...
- template< typename T, Size> Vector < bool , DIM > ( const Vector < T , DIM >& lhs, const Vector < T , DIM >& rhs)
- Returns the boolean vector result of an elementwise greater-than-or-equal comparison. More...
- template< typename T, Size> Vector < bool , DIM > ( const Vector < T , DIM >& lhs, const Vector < T , DIM >& rhs)
- Returns the boolean vector result of an elementwise less-than comparison. More...
- template< typename T, Size> Vector < bool , DIM > ( const Vector < T , DIM >& lhs, const Vector < T , DIM >& rhs)
- Returns the boolean vector result of an elementwise less-than-or-equal comparison. More...
- template< typename T, Size> Vector < bool , DIM > ( const Vector < T , DIM >& lhs, const Vector < T , DIM >& rhs)
- Returns the boolean vector result of an elementwise inequality comparison. More...
- Color ( const Color& lhs, const Color& rhs)
- Returns elementwise max for each element in color lhs that is less than the corresponding element in color rhs. More...
- Spectrum ( const Spectrum& lhs, const Spectrum& rhs)
- Returns elementwise max for each element in spectrum lhs that is less than the corresponding element in spectrum rhs. More...
- template< typename T, Size> Vector < T , DIM > ( const Vector_struct < T , DIM >& lhs, const Vector_struct < T , DIM >& rhs)
- Returns elementwise maximum of two vectors. More...
- Color ( const Color& lhs, const Color& rhs)
- Returns elementwise min for each element in color lhs that is less than the corresponding element in color rhs. More...
- Spectrum ( const Spectrum& lhs, const Spectrum& rhs)
- Returns elementwise min for each element in spectrum lhs that is less than the corresponding element in spectrum rhs. More...
- template< typename T, Size> Vector < T , DIM > ( const Vector_struct < T , DIM >& lhs, const Vector_struct < T , DIM >& rhs)
- Returns elementwise minimum of two vectors. More...
- template< class V>V::value_type ( const V& lhs, const V& rhs)
- Returns the Euclidean distance from the vector lhs to the vector rhs. More...
- Color ( const Color& c)
- Returns a color with elementwise e to the power of the element in the color c. More...
- Float32 ( Float32 s)
- Returns the constant e to the power of s (exponential function). More...
- Float64 ( Float64 s)
- Returns the constant e to the power of s (exponential function). More...
- Spectrum ( const Spectrum& c)
- Returns a spectrum with elementwise e to the power of the element in the spectrum c. More...
- template< typename T, Size> Vector < T , DIM > ( const Vector_struct < T , DIM >& v)
- Returns a vector with elementwise e to the power of the element in the vector v. More...
- Color ( const Color& c)
- Returns a color with elementwise 2 to the power of the element in the color c. More...
- Float32 ( Float32 s)
- Returns the constant 2 to the power of s (exponential function). More...
- Float64 ( Float64 s)
- Returns the constant 2 to the power of s (exponential function). More...
- Spectrum ( const Spectrum& c)
- Returns a spectrum with elementwise 2 to the power of the element in the spectrum c. More...
- template< typename T, Size> Vector < T , DIM > ( const Vector_struct < T , DIM >& v)
- Returns a vector with elementwise 2 to the power of the element in the vector v. More...
- Float32 ( Float32 x)
- A fast implementation of exp for floats. More...
- Float32 ( Float32 i)
- A fast implementation of log2(x) for floats. More...
- Float32 ( Float32 b, Float32 e)
- A fast implementation of pow(x,y) for floats. More...
- Float32 ( Float32 x)
- A fast implementation of pow(2,x) for floats. More...
- Float32 ( Float32 i)
- A fast implementation of sqrt(x) for floats. More...
- Color ( const Color& c)
- Returns a color with the elementwise largest integral value that is not greater than the element in color c. More...
- Float32 ( Float32 s)
- Returns the largest integral value that is not greater than s. More...
- Float64 ( Float64 s)
- Returns the largest integral value that is not greater than s. More...
- Spectrum ( const Spectrum& c)
- Returns a spectrum with the elementwise largest integral value that is not greater than the element in spectrum c. More...
- template< typename T, Size> Vector < T , DIM > ( const Vector_struct < T , DIM >& v)
- Returns a vector with the elementwise largest integral value that is not greater than the element in vector v. More...
- Color ( const Color& a, const Color& b)
- Returns elementwise a modulo b, in other words, the remainder of a/b. More...
- Color ( const Color& a, Float32 b)
- Returns elementwise a modulo b, in other words, the remainder of a/b. More...
- Float32 ( Float32 a, Float32 b)
- Returns a modulo b, in other words, the remainder of a/b. More...
- Float64 ( Float64 a, Float64 b)
- Returns a modulo b, in other words, the remainder of a/b. More...
- Spectrum ( const Spectrum& a, const Spectrum& b)
- Returns elementwise a modulo b, in other words, the remainder of a/b. More...
- Spectrum ( const Spectrum& a, Float32 b)
- Returns elementwise a modulo b, in other words, the remainder of a/b. More...
- template< typename T, Size> Vector < T , DIM > ( const Vector_struct < T , DIM >& a, const Vector_struct < T , DIM >& b)
- Returns elementwise a modulo b, in other words, the remainder of a/b. More...
- template< typename T, Size> Vector < T , DIM > ( const Vector_struct < T , DIM >& a, T b)
- Returns elementwise a modulo b, in other words, the remainder of a/b. More...
- Color ( const Color& c)
- Returns a color with the elementwise positive fractional part of the color c. More...
- Float32 ( Float32 s)
- Returns the positive fractional part of s. More...
- Float64 ( Float64 s)
- Returns the positive fractional part of s. More...
- Spectrum ( const Spectrum& c)
- Returns a spectrum with the elementwise positive fractional part of the spectrum c. More...
- template< typename T, Size> Vector < T , DIM > ( const Vector_struct < T , DIM >& v)
- Returns a vector with the elementwise positive fractional part of the vector v. More...
- MI_HOST_DEVICE_INLINE void ( const Uint8 rgbe[4], Color& color)
- Decodes a color from RGBE representation. More...
- MI_HOST_DEVICE_INLINE void ( const Uint32 rgbe, Color& color)
- Decodes a color from RGBE representation. More...
- MI_HOST_DEVICE_INLINE void ( const Uint8 rgbe[4], Float32 color[3])
- Decodes a color from RGBE representation. More...
- MI_HOST_DEVICE_INLINE void ( const Uint32 rgbe, Float32 color[3])
- Decodes a color from RGBE representation. More...
- MI_HOST_DEVICE_INLINE void ( const Uint8 rgbe[4], Spectrum& c)
- Decodes a color from RGBE representation. More...
- MI_HOST_DEVICE_INLINE void ( const Uint32 rgbe, Spectrum& c)
- Decodes a color from RGBE representation. More...
- Color ( const Color& color, Float32 gamma_factor)
- Returns a gamma corrected color. More...
- Spectrum ( const Spectrum& spectrum, Float32 gamma_factor)
- Returns a gamma corrected spectrum. More...
- bool ( const Color& lhs, const Color& rhs, Float32 e)
- Compares the two given values elementwise for equality within the given epsilon. More...
- bool ( Float32 left, Float32 right, Float32 e)
- Compares the two given values for equality within the given epsilon. More...
- bool ( Float64 left, Float64 right, Float64 e)
- Compares the two given values for equality within the given epsilon. More...
- bool ( const Spectrum& lhs, const Spectrum& rhs, Float32 e)
- Compares the two given values elementwise for equality within the given epsilon. More...
- template< typename T, Size>bool ( const Vector_struct < T , DIM >& left, const Vector_struct < T , DIM >& right, T e)
- Compares the two given values elementwise for equality within the given epsilon. More...
- template< class V>bool ( const V& lhs, const V& rhs)
- Returns true if vector lhs is elementwise equal to vector rhs, and false otherwise. More...
- template< class V>bool ( const V& lhs, const V& rhs)
- Returns true if vector lhs is elementwise not equal to vector rhs, and false otherwise. More...
- bool ( const Color& c)
- Indicates whether all components of the color are finite. More...
- bool ( const Float32 x)
- Checks a single-precision floating point number for neither "not a number" nor "infinity". More...
- bool ( const Float64 x)
- Checks a double-precision floating point number for neither "not a number" nor "infinity". More...
- bool ( const Spectrum& c)
- Indicates whether all components of the spectrum are finite. More...
- bool ( const Color& c)
- Indicates whether any component of the color is infinite. More...
- bool ( const Float32 x)
- Checks a single-precision floating point number for "infinity". More...
- bool ( const Float64 x)
- Checks a double-precision floating point number for "infinity". More...
- bool ( const Spectrum& c)
- Indicates whether any component of the spectrum is infinite. More...
- bool ( const Color& c)
- Indicates whether any component of the color is "not a number". More...
- bool ( const Float32 x)
- Checks a single-precision floating point number for "not a number". More...
- bool ( const Float64 x)
- Checks a double-precision floating point number for "not a number". More...
- bool ( const Spectrum& c)
- Indicates whether any component of the spectrum is "not a number". More...
- Uint32 ( Uint32 v)
- Returns the number of leading zeros of v, 32-bit version. More...
- Uint32 ( Uint64 v)
- Returns the number of leading zeros of v, 64-bit version. More...
- Float32 ( Float32 a)
- Returns the Euclidean norm of the scalar a (its absolute value). More...
- Float64 ( Float64 a)
- Returns the Euclidean norm of the scalar a (its absolute value). More...
- template< class V>V::value_type ( const V& v)
- Returns the Euclidean norm of the vector v. More...
- template< typename T, Size> Bbox < T , DIM > ( const Bbox < T , DIM >& bbox1, const Bbox < T , DIM >& bbox2, T t)
- Returns the linear interpolation between bbox1 and bbox2, i.e., it returns (1-t) * bbox1 + t * bbox2. More...
- Color ( const Color& c1, const Color& c2, const Color& t)
- Returns the elementwise linear interpolation between c1 and c2, i.e., it returns (1-t) * c1 + t * c2. More...
- Color ( const Color& c1, const Color& c2, Float32 t)
- Returns the linear interpolation between c1 and c2, i.e., it returns (1-t) * c1 + t * c2. More...
- Float32 ( Float32 s1, Float32 s2, Float32 t)
- Returns the linear interpolation between s1 and s2, i.e., it returns (1-t) * s1 + t * s2. More...
- Float64 ( Float64 s1, Float64 s2, Float64 t)
- Returns the linear interpolation between s1 and s2, i.e., it returns (1-t) * s1 + t * s2. More...
- Spectrum ( const Spectrum& c1, const Spectrum& c2, const Spectrum& t)
- Returns the elementwise linear interpolation between c1 and c2, i.e., it returns (1-t) * c1 + t * c2. More...
- Spectrum ( const Spectrum& c1, const Spectrum& c2, Float32 t)
- Returns the linear interpolation between c1 and c2, i.e., it returns (1-t) * c1 + t * c2. More...
- template< typename T, Size> Vector < T , DIM > ( const Vector_struct < T , DIM >& v1, const Vector_struct < T , DIM >& v2, const Vector_struct < T , DIM >& t)
- Returns the elementwise linear interpolation between v1 and v2, i.e., it returns (1-t) * v1 + t * v2. More...
- template< typename T, Size> Vector < T , DIM > ( const Vector_struct < T , DIM >& v1, const Vector_struct < T , DIM >& v2, T t)
- Returns the linear interpolation between v1 and v2, i.e., it returns (1-t) * v1 + t * v2. More...
- template< class V>Comparison_result ( const V& lhs, const V& rhs)
- Compares two vectors lexicographically. More...
- template< class V>bool ( const V& lhs, const V& rhs)
- Returns true if vector lhs is lexicographically greater than vector rhs, and false otherwise. More...
- template< class V>bool ( const V& lhs, const V& rhs)
- Returns true if vector lhs is lexicographically greater than or equal to vector rhs, and false otherwise. More...
- template< class V>bool ( const V& lhs, const V& rhs)
- Returns true if vector lhs is lexicographically less than vector rhs, and false otherwise. More...
- template< class V>bool ( const V& lhs, const V& rhs)
- Returns true if vector lhs is lexicographically less than or equal to vector rhs, and false otherwise. More...
- Color ( const Color& c)
- Returns a color with elementwise natural logarithm of the color c. More...
- Float32 ( Float32 s)
- Returns the natural logarithm of s. More...
- Float64 ( Float64 s)
- Returns the natural logarithm of s. More...
- Spectrum ( const Spectrum& c)
- Returns a spectrum with elementwise natural logarithm of the spectrum c. More...
- template< typename T, Size> Vector < T , DIM > ( const Vector_struct < T , DIM >& v)
- Returns a vector with the elementwise natural logarithm of the vector v. More...
- Color ( const Color& c)
- Returns a color with elementwise base 10 logarithm of the color c. More...
- Float32 ( Float32 s)
- Returns the base 10 logarithm of s. More...
- Float64 ( Float64 s)
- Returns the base 10 logarithm of s. More...
- Spectrum ( const Spectrum& c)
- Returns a spectrum with elementwise base 10 logarithm of the spectrum c. More...
- template< typename T, Size> Vector < T , DIM > ( const Vector_struct < T , DIM >& v)
- Returns a vector with the elementwise base 10 logarithm of the vector v. More...
- Color ( const Color& c)
- Returns a color with elementwise base 2 logarithm of the color c. More...
- Float32 ( Float32 s)
- Returns the base 2 logarithm of s. More...
- Float64 ( Float64 s)
- Returns the base 2 logarithm of s. More...
- Spectrum ( const Spectrum& c)
- Returns a spectrum with elementwise base 2 logarithm of the spectrum c. More...
- template< typename T, Size> Vector < T , DIM > ( const Vector_struct < T , DIM >& v)
- Returns a vector with the elementwise base 2 logarithm of the vector v. More...
- Sint32 ( const Uint32 v)
- Returns the integer log2 of v. More...
- Sint32 ( const Uint64 v)
- Returns the integer log2 of v. More...
- Sint32 ( const Float32 v)
- Returns the integer log2 of v. More...
- Sint32 ( const Float64 v)
- Returns the integer log2 of v. More...
- template< typename Integer>Sint32 ( const Integer v)
- Returns the integer log2 of v, i.e., rounded up to the next integer. More...
- template< typename T>void ( const Vector < T , 3 >& n, Vector < T , 3 >* u, Vector < T , 3 >* v)
- Computes a basis of 3D space with one given vector. More...
- template< typename T>void ( const Vector < T , 3 >& n, const Vector < T , 3 >& u, const Vector < T , 3 >& v, Vector < T , 3 >* t, Vector < T , 3 >* b)
- Computes a basis of 3D space with one given vector, plane, and direction. More...
- template< typename T, Size, Size>T* ( Matrix_struct < T , ROW , COL >& mat)
- Returns the base pointer to the matrix data. More...
- template< typename T, Size, Size>const T* ( const Matrix_struct < T , ROW , COL >& mat)
- Returns the base pointer to the matrix data. More...
- Color ( const Color& c, Color& i)
- Returns the elementwise fractional part of c and stores the elementwise integral part of c in i. More...
- Float32 ( Float32 s, Float32& i)
- Returns the fractional part of s and stores the integral part of s in i. More...
- Float64 ( Float64 s, Float64& i)
- Returns the fractional part of s and stores the integral part of s in i. More...
- Spectrum ( const Spectrum& c, Spectrum& i)
- Returns the elementwise fractional part of c and stores the elementwise integral part of c in i. More...
- template< typename T, Size> Vector < T , DIM > ( const Vector_struct < T , DIM >& v, Vector < T , DIM >& i)
- Returns the elementwise fractional part of v and stores the elementwise integral part of v in i. More...
- template< Size> Vector < bool , DIM > ( const Vector < bool , DIM >& vec)
- Returns the elementwise logical not of a boolean vector. More...
- template< typename T, Size>bool ( const Bbox < T , DIM >& lhs, const Bbox < T , DIM >& rhs)
- Returns true if lhs is elementwise not equal to rhs. More...
- bool ( const Color& lhs, const Color& rhs)
- Returns true if lhs is elementwise not equal to rhs. More...
- template< typename T, Size, Size>bool ( const Matrix < T , ROW , COL >& lhs, const Matrix < T , ROW , COL >& rhs)
- Returns true if lhs is elementwise not equal to rhs. More...
- bool ( const Spectrum& lhs, const Spectrum& rhs)
- Returns true if lhs is elementwise not equal to rhs. More...
- template< typename T, Size> Vector < T , DIM > ( const Vector_struct < T , DIM >& lhs, const Vector_struct < T , DIM >& rhs)
- Computes lhs modulo rhs elementwise and returns the new result. More...
- template< typename T, Size> Vector < T , DIM > ( const Vector < T , DIM >& lhs, const Vector < T , DIM >& rhs)
- Computes lhs modulo rhs elementwise and returns the new result. More...
- template< typename T, typename TT, Size> Vector < T , DIM > ( const Vector_struct < T , DIM >& v, TT s)
- Computes v modulo s elementwise and returns the new result. More...
- template< typename T, Size> Vector < T , DIM >& ( Vector < T , DIM >& lhs, const Vector_struct < T , DIM >& rhs)
- Computes lhs modulo rhs elementwise and returns the modified lhs. More...
- template< typename T, Size> Vector < T , DIM >& ( Vector < T , DIM >& lhs, const Vector < T , DIM >& rhs)
- Computes lhs modulo rhs elementwise and returns the modified lhs. More...
- template< typename T, typename TT, Size> Vector < T , DIM >& ( Vector < T , DIM >& v, TT s)
- Computes v modulo s elementwise and returns the modified vector v. More...
- template< Size> Vector < bool , DIM > ( const Vector < bool , DIM >& lhs, const Vector < bool , DIM >& rhs)
- Returns the elementwise logical and of two boolean vectors. More...
- template< Size> Vector < bool , DIM > ( bool lhs, const Vector < bool , DIM >& rhs)
- Returns the elementwise logical and of a bool and a boolean vector. More...
- template< Size> Vector < bool , DIM > ( const Vector < bool , DIM >& lhs, bool rhs)
- Returns the elementwise logical and of a boolean vector and a bool. More...
- template< typename T, Size> Bbox < T , DIM > ( const Bbox < T , DIM >& bbox, T factor)
- Returns a bounding box that is a version of bbox scaled by factor, i.e., bbox.max and bbox.min are multiplied by factor. More...
- Color ( const Color& lhs, const Color& rhs)
- Multiplies rhs elementwise with lhs and returns the new result. More...
- Color ( const Color& c, Float32 s)
- Multiplies the color c elementwise with the scalar s and returns the new result. More...
- Color ( Float32 s, const Color& c)
- Multiplies the color c elementwise with the scalar s and returns the new result. More...
- template< typename T, Size, Size, Size, Size> Matrix < T , ROW1 , COL2 > ( const Matrix < T , ROW1 , COL1 >& lhs, const Matrix < T , ROW2 , COL2 >& rhs)
- Performs matrix multiplication, lhs times rhs, and returns the new result. More...
- template< typename T, Size, Size, Size> Vector < T , ROW > ( const Matrix < T , ROW , COL >& mat, const Vector < T , DIM >& vec)
- Multiplies the (column) vector vec from the right with the matrix mat and returns the resulting vector. More...
- template< Size, typename T, Size, Size> Vector < T , COL > ( const Vector < T , DIM >& vec, const Matrix < T , ROW , COL >& mat)
- Multiplies the (row) vector vec from the left with the matrix mat and returns the resulting vector. More...
- template< typename T, Size, Size> Matrix < T , ROW , COL > ( const Matrix < T , ROW , COL >& mat, T factor)
- Multiplies the matrix mat elementwise with the scalar factor and returns the new result. More...
- template< typename T, Size, Size> Matrix < T , ROW , COL > ( T factor, const Matrix < T , ROW , COL >& mat)
- Multiplies the matrix mat elementwise with the scalar factor and returns the new result. More...
- Spectrum ( const Spectrum& lhs, const Spectrum& rhs)
- Multiplies rhs elementwise with lhs and returns the new result. More...
- Spectrum ( const Spectrum& c, Float32 s)
- Multiplies the spectrum c elementwise with the scalar s and returns the new result. More...
- Spectrum ( Float32 s, const Spectrum& c)
- Multiplies the spectrum c elementwise with the scalar s and returns the new result. More...
- template< typename T, Size> Vector < T , DIM > ( const Vector_struct < T , DIM >& lhs, const Vector_struct < T , DIM >& rhs)
- Multiplies rhs elementwise with lhs and returns the new result. More...
- template< typename T, Size> Vector < T , DIM > ( const Vector < T , DIM >& lhs, const Vector < T , DIM >& rhs)
- Multiplies rhs elementwise with lhs and returns the new result. More...
- template< typename T, typename TT, Size> Vector < T , DIM > ( const Vector_struct < T , DIM >& v, TT s)
- Multiplies the vector v elementwise with the scalar s and returns the new result. More...
- template< typename T, typename TT, Size> Vector < T , DIM > ( TT s, const Vector_struct < T , DIM >& v)
- Multiplies the vector v elementwise with the scalar s and returns the new result. More...
- template< typename T, Size> Bbox < T , DIM >& ( Bbox < T , DIM >& bbox, T factor)
- Scales bbox by factor, i.e., bbox.max and bbox.min are multiplied by factor. More...
- Color& ( Color& lhs, const Color& rhs)
- Multiplies rhs elementwise with lhs and returns the modified lhs. More...
- Color& ( Color& c, Float32 s)
- Multiplies the color c elementwise with the scalar s and returns the modified color c. More...
- template< typename T, Size, Size> Matrix < T , ROW , COL >& ( Matrix < T , ROW , COL >& lhs, const Matrix < T , COL , COL >& rhs)
- Performs matrix multiplication, lhs times rhs, assigns it to lhs, and returns the modified lhs. More...
- template< typename T, Size, Size> Matrix < T , ROW , COL >& ( Matrix < T , ROW , COL >& mat, T factor)
- Multiplies the matrix mat elementwise with the scalar factor and returns the modified matrix mat. More...
- Spectrum& ( Spectrum& lhs, const Spectrum& rhs)
- Multiplies rhs elementwise with lhs and returns the modified lhs. More...
- Spectrum& ( Spectrum& c, Float32 s)
- Multiplies the spectrum c elementwise with the scalar s and returns the modified spectrum c. More...
- template< typename T, Size> Vector < T , DIM >& ( Vector < T , DIM >& lhs, const Vector_struct < T , DIM >& rhs)
- Multiplies rhs elementwise with lhs and returns the modified lhs. More...
- template< typename T, Size> Vector < T , DIM >& ( Vector < T , DIM >& lhs, const Vector < T , DIM >& rhs)
- Multiplies rhs elementwise with lhs and returns the modified lhs. More...
- template< typename T, typename TT, Size> Vector < T , DIM >& ( Vector < T , DIM >& v, TT s)
- Multiplies the vector v elementwise with the scalar s and returns the modified vector v. More...
- template< typename T, Size> Bbox < T , DIM > ( const Bbox < T , DIM >& bbox, T value)
- Returns a bounding box that is the bbox increased by a constant value at each face, i.e., value is added to bbox.max and subtracted from bbox.min. More...
- Color ( const Color& lhs, const Color& rhs)
- Adds lhs and rhs elementwise and returns the new result. More...
- template< typename T, Size, Size> Matrix < T , ROW , COL > ( const Matrix < T , ROW , COL >& lhs, const Matrix < T , ROW , COL >& rhs)
- Adds lhs and rhs elementwise and returns the new result. More...
- Spectrum ( const Spectrum& lhs, const Spectrum& rhs)
- Adds lhs and rhs elementwise and returns the new result. More...
- template< typename T, Size> Vector < T , DIM > ( const Vector_struct < T , DIM >& lhs, const Vector_struct < T , DIM >& rhs)
- Adds lhs and rhs elementwise and returns the new result. More...
- template< typename T, Size> Vector < T , DIM > ( const Vector < T , DIM >& lhs, const Vector < T , DIM >& rhs)
- Adds lhs and rhs elementwise and returns the new result. More...
- template< typename T, Size> Vector < T , DIM >& ( Vector < T , DIM >& vec)
- Pre-increments all elements of vec and returns the result. Modifies vec. More...
- template< typename T, Size> Bbox < T , DIM >& ( Bbox < T , DIM >& bbox, T value)
- Increases bbox by a constant value at each face, i.e., value is added to bbox.max and subtracted from bbox.min. More...
- Color& ( Color& lhs, const Color& rhs)
- Adds rhs elementwise to lhs and returns the modified lhs. More...
- template< typename T, Size, Size> Matrix < T , ROW , COL >& ( Matrix < T , ROW , COL >& lhs, const Matrix < T , ROW , COL >& rhs)
- Adds rhs elementwise to lhs and returns the modified lhs. More...
- Spectrum& ( Spectrum& lhs, const Spectrum& rhs)
- Adds rhs elementwise to lhs and returns the modified lhs. More...
- template< typename T, Size> Vector < T , DIM >& ( Vector < T , DIM >& lhs, const Vector_struct < T , DIM >& rhs)
- Adds rhs elementwise to lhs and returns the modified lhs. More...
- template< typename T, Size> Vector < T , DIM >& ( Vector < T , DIM >& lhs, const Vector < T , DIM >& rhs)
- Adds rhs elementwise to lhs and returns the modified lhs. More...
- template< typename T, Size> Bbox < T , DIM > ( const Bbox < T , DIM >& bbox, T value)
- Returns a bounding box that is the bbox shrunk by a constant value at each face, i.e., value is subtracted from bbox.max and added to bbox.min. More...
- Color ( const Color& lhs, const Color& rhs)
- Subtracts rhs elementwise from lhs and returns the new result. More...
- Color ( const Color& c)
- Negates the color c elementwise and returns the new result. More...
- template< typename T, Size, Size> Matrix < T , ROW , COL > ( const Matrix < T , ROW , COL >& lhs, const Matrix < T , ROW , COL >& rhs)
- Subtracts rhs elementwise from lhs and returns the new result. More...
- template< typename T, Size, Size> Matrix < T , ROW , COL > ( const Matrix < T , ROW , COL >& mat)
- Negates the matrix mat elementwise and returns the new result. More...
- Spectrum ( const Spectrum& lhs, const Spectrum& rhs)
- Subtracts rhs elementwise from lhs and returns the new result. More...
- Spectrum ( const Spectrum& c)
- Negates the spectrum c elementwise and returns the new result. More...
- template< typename T, Size> Vector < T , DIM > ( const Vector_struct < T , DIM >& lhs, const Vector_struct < T , DIM >& rhs)
- Subtracts rhs elementwise from lhs and returns the new result. More...
- template< typename T, Size> Vector < T , DIM > ( const Vector_struct < T , DIM >& v)
- Negates the vector v elementwise and returns the new result. More...
- template< typename T, Size> Vector < T , DIM > ( const Vector < T , DIM >& lhs, const Vector < T , DIM >& rhs)
- Subtracts rhs elementwise from lhs and returns the new result. More...
- template< typename T, Size> Vector < T , DIM > ( const Vector < T , DIM >& v)
- Negates the vector v elementwise and returns the new result. More...
- template< typename T, Size> Vector < T , DIM >& ( Vector < T , DIM >& vec)
- Pre-decrements all elements of vec and returns the result. Modifies vec. More...
- template< typename T, Size> Bbox < T , DIM >& ( Bbox < T , DIM >& bbox, T value)
- Shrinks bbox by a constant value at each face, i.e., value is subtracted from bbox.max and added to bbox.min. More...
- Color& ( Color& lhs, const Color& rhs)
- Subtracts rhs elementwise from lhs and returns the modified lhs. More...
- template< typename T, Size, Size> Matrix < T , ROW , COL >& ( Matrix < T , ROW , COL >& lhs, const Matrix < T , ROW , COL >& rhs)
- Subtracts rhs elementwise from lhs and returns the modified lhs. More...
- Spectrum& ( Spectrum& lhs, const Spectrum& rhs)
- Subtracts rhs elementwise from lhs and returns the modified lhs. More...
- template< typename T, Size> Vector < T , DIM >& ( Vector < T , DIM >& lhs, const Vector_struct < T , DIM >& rhs)
- Subtracts rhs elementwise from lhs and returns the modified lhs. More...
- template< typename T, Size> Vector < T , DIM >& ( Vector < T , DIM >& lhs, const Vector < T , DIM >& rhs)
- Subtracts rhs elementwise from lhs and returns the modified lhs. More...
- template< typename T, Size> Bbox < T , DIM > ( const Bbox < T , DIM >& bbox, T divisor)
- Returns a bounding box that is a version of bbox divided by divisor, i.e., bbox.max and bbox.min are divided by divisor. More...
- Color ( const Color& lhs, const Color& rhs)
- Divides rhs elementwise by lhs and returns the new result. More...
- Color ( const Color& c, Float32 s)
- Divides the color c elementwise by the scalar s and returns the new result. More...
- Spectrum ( const Spectrum& lhs, const Spectrum& rhs)
- Divides rhs elementwise by lhs and returns the new result. More...
- Spectrum ( const Spectrum& c, Float32 s)
- Divides the spectrum c elementwise by the scalar s and returns the new result. More...
- template< typename T, typename U, Size> Vector < T , DIM > ( const Vector_struct < T , DIM >& lhs, const Vector_struct < U , DIM >& rhs)
- Divides rhs elementwise by lhs and returns the new result. More...
- template< typename T, typename U, Size> Vector < T , DIM > ( const Vector < T , DIM >& lhs, const Vector < U , DIM >& rhs)
- Divides rhs elementwise by lhs and returns the new result. More...
- template< typename T, typename TT, Size> Vector < T , DIM > ( const Vector_struct < T , DIM >& v, TT s)
- Divides the vector v elementwise by the scalar s and returns the new result. More...
- template< typename T, Size> Bbox < T , DIM >& ( Bbox < T , DIM >& bbox, T divisor)
- Divide bbox by divisor, i.e., bbox.max and bbox.min are divided by divisor. More...
- Color& ( Color& lhs, const Color& rhs)
- Divides lhs elementwise by rhs and returns the modified lhs. More...
- Color& ( Color& c, Float32 s)
- Divides the color c elementwise by the scalar s and returns the modified color c. More...
- Spectrum& ( Spectrum& lhs, const Spectrum& rhs)
- Divides lhs elementwise by rhs and returns the modified lhs. More...
- Spectrum& ( Spectrum& c, Float32 s)
- Divides the spectrum c elementwise by the scalar s and returns the modified spectrum c. More...
- template< typename T, typename U, Size> Vector < T , DIM >& ( Vector < T , DIM >& lhs, const Vector_struct < U , DIM >& rhs)
- Divides lhs elementwise by rhs and returns the modified lhs. More...
- template< typename T, typename U, Size> Vector < T , DIM >& ( Vector < T , DIM >& lhs, const Vector < U , DIM >& rhs)
- Divides lhs elementwise by rhs and returns the modified lhs. More...
- template< typename T, typename TT, Size> Vector < T , DIM >& ( Vector < T , DIM >& v, TT s)
- Divides the vector v elementwise by the scalar s and returns the modified vector v. More...
- template< typename T, Size>bool ( const Bbox < T , DIM >& lhs, const Bbox < T , DIM >& rhs)
- Returns true if lhs is lexicographically less than rhs. More...
- bool ( const Color& lhs, const Color& rhs)
- Returns true if lhs is lexicographically less than rhs. More...
- template< typename T, Size, Size>bool ( const Matrix < T , ROW , COL >& lhs, const Matrix < T , ROW , COL >& rhs)
- Returns true if lhs is lexicographically less than rhs. More...
- bool ( const Spectrum& lhs, const Spectrum& rhs)
- Returns true if lhs is lexicographically less than rhs. More...
- template< typename T, Size>bool ( const Bbox < T , DIM >& lhs, const Bbox < T , DIM >& rhs)
- Returns true if lhs is lexicographically less than or equal to rhs. More...
- bool ( const Color& lhs, const Color& rhs)
- Returns true if lhs is lexicographically less than or equal to rhs. More...
- template< typename T, Size, Size>bool ( const Matrix < T , ROW , COL >& lhs, const Matrix < T , ROW , COL >& rhs)
- Returns true if lhs is lexicographically less than or equal to rhs. More...
- bool ( const Spectrum& lhs, const Spectrum& rhs)
- Returns true if lhs is lexicographically less than or equal to rhs. More...
- template< typename T, Size>bool ( const Bbox < T , DIM >& lhs, const Bbox < T , DIM >& rhs)
- Returns true if lhs is elementwise equal to rhs. More...
- bool ( const Color& lhs, const Color& rhs)
- Returns true if lhs is elementwise equal to rhs. More...
- template< typename T, Size, Size>bool ( const Matrix < T , ROW , COL >& lhs, const Matrix < T , ROW , COL >& rhs)
- Returns true if lhs is elementwise equal to rhs. More...
- bool ( const Spectrum& lhs, const Spectrum& rhs)
- Returns true if lhs is elementwise equal to rhs. More...
- template< typename T, Size>bool ( const Bbox < T , DIM >& lhs, const Bbox < T , DIM >& rhs)
- Returns true if lhs is lexicographically greater than rhs. More...
- bool ( const Color& lhs, const Color& rhs)
- Returns true if lhs is lexicographically greater than rhs. More...
- template< typename T, Size, Size>bool ( const Matrix < T , ROW , COL >& lhs, const Matrix < T , ROW , COL >& rhs)
- Returns true if lhs is lexicographically greater than rhs. More...
- bool ( const Spectrum& lhs, const Spectrum& rhs)
- Returns true if lhs is lexicographically greater than rhs. More...
- template< typename T, Size>bool ( const Bbox < T , DIM >& lhs, const Bbox < T , DIM >& rhs)
- Returns true if lhs is lexicographically greater than or equal to rhs. More...
- bool ( const Color& lhs, const Color& rhs)
- Returns true if lhs is lexicographically greater than or equal to rhs. More...
- template< typename T, Size, Size>bool ( const Matrix < T , ROW , COL >& lhs, const Matrix < T , ROW , COL >& rhs)
- Returns true if lhs is lexicographically greater than or equal to rhs. More...
- bool ( const Spectrum& lhs, const Spectrum& rhs)
- Returns true if lhs is lexicographically greater than or equal to rhs. More...
- template< Size> Vector < bool , DIM > ( const Vector < bool , DIM >& lhs, const Vector < bool , DIM >& rhs)
- Returns the elementwise logical xor of two boolean vectors. More...
- template< Size> Vector < bool , DIM > ( bool lhs, const Vector < bool , DIM >& rhs)
- Returns the elementwise logical xor of a bool and a boolean vector. More...
- template< Size> Vector < bool , DIM > ( const Vector < bool , DIM >& lhs, bool rhs)
- Returns the elementwise logical xor of a boolean vector and a bool. More...
- template< Size> Vector < bool , DIM > ( const Vector < bool , DIM >& lhs, const Vector < bool , DIM >& rhs)
- Returns the elementwise logical or of two boolean vectors. More...
- template< Size> Vector < bool , DIM > ( bool lhs, const Vector < bool , DIM >& rhs)
- Returns the elementwise logical or of a bool and a boolean vector. More...
- template< Size> Vector < bool , DIM > ( const Vector < bool , DIM >& lhs, bool rhs)
- Returns the elementwise logical or of a boolean vector and a bool. More...
- Color ( const Color& a, const Color& b)
- Returns the color a elementwise to the power of b. More...
- Color ( const Color& a, Float32 b)
- Returns the color a elementwise to the power of b. More...
- Uint32 ( Uint32 a, Uint32 b)
- Returns a to the power of b. More...
- Uint64 ( Uint64 a, Uint64 b)
- Returns a to the power of b. More...
- Sint32 ( Sint32 a, Sint32 b)
- Returns a to the power of b. More...
- Sint64 ( Sint64 a, Sint64 b)
- Returns a to the power of b. More...
- Float32 ( Float32 a, Float32 b)
- Returns a to the power of b. More...
- Float64 ( Float64 a, Float64 b)
- Returns a to the power of b. More...
- Spectrum ( const Spectrum& a, const Spectrum& b)
- Returns the spectrum a elementwise to the power of b. More...
- Spectrum ( const Spectrum& a, Float32 b)
- Returns the spectrum a elementwise to the power of b. More...
- template< typename T, Size> Vector < T , DIM > ( const Vector_struct < T , DIM >& a, const Vector_struct < T , DIM >& b)
- Returns the vector a elementwise to the power of b. More...
- template< typename T, Size> Vector < T , DIM > ( const Vector_struct < T , DIM >& a, T b)
- Returns the vector a elementwise to the power of b. More...
- Color ( const Color& c)
- Converts elementwise degrees in c to radians. More...
- Float32 ( Float32 d)
- Converts degrees d to radians. More...
- Float64 ( Float64 d)
- Converts degrees d to radians. More...
- Spectrum ( const Spectrum& c)
- Converts elementwise degrees in c to radians. More...
- template< typename T, Size> Vector < T , DIM > ( const Vector_struct < T , DIM >& v)
- Converts elementwise degrees in v to radians. More...
- Color ( const Color& c)
- Returns a color with the elements of color c rounded to nearest integers. More...
- Float32 ( Float32 s)
- Returns s rounded to the nearest integer value. More...
- Float64 ( Float64 s)
- Returns s rounded to the nearest integer value. More...
- Spectrum ( const Spectrum& c)
- Returns a spectrum with the elements of spectrum c rounded to nearest integers. More...
- template< typename T, Size> Vector < T , DIM > ( const Vector_struct < T , DIM >& v)
- Returns a vector with the elements of vector v rounded to nearest integers. More...
- Color ( const Color& c)
- Returns the reciprocal of the square root of each element of c. More...
- Float32 ( Float32 s)
- Returns the reciprocal of the square root of s. More...
- Float64 ( Float64 s)
- Returns the reciprocal of the square root of s. More...
- Spectrum ( const Spectrum& c)
- Returns the reciprocal of the square root of each element of c. More...
- template< typename T, Size> Vector < T , DIM > ( const Vector_struct < T , DIM >& v)
- Returns the reciprocal of the square root of each element of v. More...
- Color ( const Color& c)
- Returns the color c clamped elementwise to the range [0,1]. More...
- Float32 ( Float32 s)
- Returns the value s clamped to the range [0,1]. More...
- Float64 ( Float64 s)
- Returns the value s clamped to the range [0,1]. More...
- Spectrum ( const Spectrum& c)
- Returns the spectrum c clamped elementwise to the range [0,1]. More...
- template< typename T, Size> Vector < T , DIM > ( const Vector_struct < T , DIM >& v)
- Returns the vector v clamped elementwise to the range [0,1]. More...
- template< class V>void ( V& v, const V& low, const V& high)
- Bounds the value of vector v elementwise to the given low and high vector values. More...
- Color ( const Color& c)
- Returns the elementwise sign of color c. More...
- Sint8 ( Sint8 s)
- Returns -1 if s<0, 0 if s==0, and +1 if s>0. More...
- Sint16 ( Sint16 s)
- Returns -1 if s<0, 0 if s==0, and +1 if s>0. More...
- Sint32 ( Sint32 s)
- Returns -1 if s<0, 0 if s==0, and +1 if s>0. More...
- Sint64 ( Sint64 s)
- Returns -1 if s<0, 0 if s==0, and +1 if s>0. More...
- Float32 ( Float32 s)
- Returns -1 if s<0, 0 if s==0, and +1 if s>0. More...
- Float64 ( Float64 s)
- Returns -1 if s<0, 0 if s==0, and +1 if s>0. More...
- Spectrum ( const Spectrum& c)
- Returns the elementwise sign of spectrum c. More...
- template< typename T, Size> Vector < T , DIM > ( const Vector_struct < T , DIM >& v)
- Returns the elementwise sign of vector v. More...
- bool ( Sint8 s)
- Returns true if s<0 and false if s>= 0. More...
- bool ( Sint16 s)
- Returns true if s<0 and false if s>= 0. More...
- bool ( Sint32 s)
- Returns true if s<0 and false if s>= 0. More...
- bool ( Sint64 s)
- Returns true if s<0 and false if s>= 0. More...
- bool ( Float32 s)
- Extracts the sign bit of a single-precision floating point number. More...
- bool ( Float64 s)
- Extracts the sign bit of a double-precision floating point number. More...
- Color ( const Color& c)
- Returns a color with the elementwise sine of the color c. More...
- Float32 ( Float32 a)
- Returns the sine of a. The angle a is specified in radians. More...
- Float64 ( Float64 a)
- Returns the sine of a. The angle a is specified in radians. More...
- Spectrum ( const Spectrum& c)
- Returns a spectrum with the elementwise sine of the spectrum c. More...
- template< typename T, Size> Vector < T , DIM > ( const Vector_struct < T , DIM >& v)
- Returns a vector with the elementwise sine of the vector v. More...
- void ( const Color& a, Color& s, Color& c)
- Computes elementwise the sine s and cosine c of angles a simultaneously. More...
- void ( Float32 a, Float32& s, Float32& c)
- Computes the sine s and cosine c of angle a simultaneously. More...
- void ( Float64 a, Float64& s, Float64& c)
- Computes the sine s and cosine c of angle a simultaneously. More...
- void ( const Spectrum& a, Spectrum& s, Spectrum& c)
- Computes elementwise the sine s and cosine c of angles a simultaneously. More...
- template< typename T, Size>void ( const Vector_struct < T , DIM >& a, Vector < T , DIM >& s, Vector < T , DIM >& c)
- Computes elementwise the sine s and cosine c of angles a simultaneously. More...
- Color ( const Color& a, const Color& b, const Color& c)
- Returns 0 if c is less than a and 1 if c is greater than b in an elementwise fashion. More...
- Color ( const Color& a, const Color& b, Float32 x)
- Returns 0 if c is less than a and 1 if c is greater than b in an elementwise fashion. More...
- Float32 ( Float32 a, Float32 b, Float32 x)
- Returns 0 if x is less than a and 1 if x is greater than b. More...
- Float64 ( Float64 a, Float64 b, Float64 x)
- Returns 0 if x is less than a and 1 if x is greater than b. More...
- Spectrum ( const Spectrum& a, const Spectrum& b, const Spectrum& c)
- Returns 0 if c is less than a and 1 if c is greater than b in an elementwise fashion. More...
- Spectrum ( const Spectrum& a, const Spectrum& b, Float32 x)
- Returns 0 if c is less than a and 1 if c is greater than b in an elementwise fashion. More...
- template< typename T, Size> Vector < T , DIM > ( const Vector_struct < T , DIM >& a, const Vector_struct < T , DIM >& b, const Vector_struct < T , DIM >& v)
- Returns 0 if v is less than a and 1 if v is greater than b in an elementwise fashion. More...
- template< typename T, Size> Vector < T , DIM > ( const Vector_struct < T , DIM >& a, const Vector_struct < T , DIM >& b, T x)
- Returns 0 if x is less than a and 1 if x is greater than b in an elementwise fashion. More...
- Color ( const Color& c)
- Returns the square root of each element of c. More...
- Float32 ( Float32 s)
- Returns the square root of s. More...
- Float64 ( Float64 s)
- Returns the square root of s. More...
- Spectrum ( const Spectrum& c)
- Returns the square root of each element of c. More...
- template< typename T, Size> Vector < T , DIM > ( const Vector_struct < T , DIM >& v)
- Returns the square root of each element of v. More...
- template< class V>V::value_type ( const V& lhs, const V& rhs)
- Returns the squared Euclidean distance from the vector lhs to the vector rhs. More...
- template< class V>V::value_type ( const V& v)
- Returns the squared Euclidean norm of the vector v. More...
- Color ( const Color& a, const Color& c)
- Returns elementwise 0 if c is less than a and 1 otherwise. More...
- Float32 ( Float32 a, Float32 x)
- Returns 0 if x is less than a and 1 otherwise. More...
- Float64 ( Float64 a, Float64 x)
- Returns 0 if x is less than a and 1 otherwise. More...
- Spectrum ( const Spectrum& a, const Spectrum& c)
- Returns elementwise 0 if c is less than a and 1 otherwise. More...
- template< typename T, Size> Vector < T , DIM > ( const Vector_struct < T , DIM >& a, const Vector_struct < T , DIM >& v)
- Returns elementwise 0 if v is less than a and 1 otherwise. More...
- template< Size, Size, typename T, Size, Size> Matrix < T , NEW_ROW , NEW_COL > ( const Matrix < T , ROW , COL >& mat)
- Returns the upper-left sub-matrix of size NEW_ROW times NEW_COL. More...
- Color ( const Color& c)
- Returns a color with the elementwise tangent of the color c. More...
- Float32 ( Float32 a)
- Returns the tangent of a. The angle a is specified in radians. More...
- Float64 ( Float64 a)
- Returns the tangent of a. The angle a is specified in radians. More...
- Spectrum ( const Spectrum& c)
- Returns a spectrum with the elementwise tangent of the spectrum c. More...
- template< typename T, Size> Vector < T , DIM > ( const Vector_struct < T , DIM >& v)
- Returns a vector with the elementwise tangent of the vector v. More...
- MI_HOST_DEVICE_INLINE void ( const Color& color, Uint32& rgbe)
- Encodes a color into RGBE representation. More...
- MI_HOST_DEVICE_INLINE void ( const Color& color, Uint8 rgbe[4])
- Encodes a color into RGBE representation. More...
- MI_HOST_DEVICE_INLINE void ( const Float32 color[3], Uint32& rgbe)
- Encodes a color into RGBE representation. More...
- MI_HOST_DEVICE_INLINE void ( const Float32 color[3], Uint8 rgbe[4])
- Encodes a color into RGBE representation. More...
- MI_HOST_DEVICE_INLINE void ( const Spectrum& c, Uint32& rgbe)
- Encodes a spectrum into RGBE representation. More...
- MI_HOST_DEVICE_INLINE void ( const Spectrum& c, Uint8 rgbe[4])
- Encodes a spectrum into RGBE representation. More...
- template< typename T, typename U> Vector < U , 3 > ( const Matrix < T , 4 , 4 >& mat, const Vector < U , 3 >& normal)
- Returns a transformed 3D normal vector by applying the 3x3 transposed linear sub-transformation in the inverse of the 4x4 matrix mat on the 3D normal vector normal. More...
- template< typename T, typename U> Vector < U , 3 > ( const Matrix < T , 3 , 3 >& inv_mat, const Vector < U , 3 >& normal)
- Returns an inverse transformed 3D normal vector by applying the 3x3 transposed linear transformation in the matrix inv_mat on the 3D normal vector normal. More...
- template< typename T, typename U> Vector < U , 3 > ( const Matrix < T , 4 , 4 >& inv_mat, const Vector < U , 3 >& normal)
- Returns an inverse transformed 3D normal vector by applying the 3x3 transposed linear sub-transformation in the 4x4 matrix inv_mat on the 3D normal vector normal. More...
- template< typename TT, typename T> Bbox < T , 3 > ( const Matrix < TT , 4 , 4 >& mat, const Bbox < T , 3 >& bbox)
- Returns the 3D bounding box transformed by a matrix. More...
- template< typename T, typename U>U ( const Matrix < T , 4 , 4 >& mat, const U& point)
- Returns a transformed 1D point by applying the full transformation in the 4x4 matrix mat on the 1D point point, which includes the translation. More...
- template< typename T, typename U> Vector < U , 2 > ( const Matrix < T , 4 , 4 >& mat, const Vector < U , 2 >& point)
- Returns a transformed 2D point by applying the full transformation in the 4x4 matrix mat on the 2D point point, which includes the translation. More...
- template< typename T, typename U> Vector < U , 3 > ( const Matrix < T , 4 , 3 >& mat, const Vector < U , 3 >& point)
- Returns a transformed 3D point by applying the full transformation in the 4x3 matrix mat on the 3D point point, which includes the translation. More...
- template< typename T, typename U> Vector < U , 3 > ( const Matrix < T , 4 , 4 >& mat, const Vector < U , 3 >& point)
- Returns a transformed 3D point by applying the full transformation in the 4x4 matrix mat on the 3D point point, which includes the translation. More...
- template< typename T, typename U> Vector < U , 4 > ( const Matrix < T , 4 , 4 >& mat, const Vector < U , 4 >& point)
- Returns a transformed 4D point by applying the full transformation in the 4x4 matrix mat on the 4D point point, which includes the translation. More...
- template< typename TT, typename T> Bbox < T , 3 > ( const Matrix < TT , 4 , 4 >& mat, const Bbox < T , 3 >& bbox)
- Returns the 3D bounding box transformed by a matrix. More...
- template< typename T, typename U>U ( const Matrix < T , 4 , 4 >& mat, const U& vector)
- Returns a transformed 1D vector by applying the 1x1 linear sub-transformation in the 4x4 matrix mat on the 1D vector vector, which excludes the translation. More...
- template< typename T, typename U> Vector < U , 2 > ( const Matrix < T , 4 , 4 >& mat, const Vector < U , 2 >& vector)
- Returns a transformed 2D vector by applying the 2x2 linear sub-transformation in the 4x4 matrix mat on the 2D vector vector, which excludes the translation. More...
- template< typename T, typename U> Vector < U , 3 > ( const Matrix < T , 3 , 3 >& mat, const Vector < U , 3 >& vector)
- Returns a transformed 3D vector by applying the 3x3 matrix mat transformation on the 3D vector vector. More...
- template< typename T, typename U> Vector < U , 3 > ( const Matrix < T , 4 , 3 >& mat, const Vector < U , 3 >& vector)
- Returns a transformed 3D vector by applying the 3x3 linear sub-transformation in the 4x3 matrix mat on the 3D vector vector, which excludes the translation. More...
- template< typename T, typename U> Vector < U , 3 > ( const Matrix < T , 4 , 4 >& mat, const Vector < U , 3 >& vector)
- Returns a transformed 3D vector by applying the 3x3 linear sub-transformation in the 4x4 matrix mat on the 3D vector vector, which excludes the translation. More...
- template< typename T, Size, Size> Matrix < T , COL , ROW > ( const Matrix < T , ROW , COL >& mat)
- Returns the transpose of the matrix mat by exchanging rows and columns. More...
- template< typename T, Size>T* ( Vector_struct < T , DIM >& vec)
- Returns the base pointer to the vector data. More...
- template< typename T, Size>const T* ( const Vector_struct < T , DIM >& vec)
- Returns the base pointer to the vector data. More...
- template< typename T>T* ( Vector_struct < T , 1 >& vec)
- Returns the base pointer to the vector data, specialization for DIM==1. More...
- template< typename T>const T* ( const Vector_struct < T , 1 >& vec)
- Returns the base pointer to the vector data, specialization for DIM==1. More...
- template< typename T>T* ( Vector_struct < T , 2 >& vec)
- Returns the base pointer to the vector data, specialization for DIM==2. More...
- template< typename T>const T* ( const Vector_struct < T , 2 >& vec)
- Returns the base pointer to the vector data, specialization for DIM==2. More...
- template< typename T>T* ( Vector_struct < T , 3 >& vec)
- Returns the base pointer to the vector data, specialization for DIM==3. More...
- template< typename T>const T* ( const Vector_struct < T , 3 >& vec)
- Returns the base pointer to the vector data, specialization for DIM==3. More...
- template< typename T>T* ( Vector_struct < T , 4 >& vec)
- Returns the base pointer to the vector data, specialization for DIM==4. More...
- template< typename T>const T* ( const Vector_struct < T , 4 >& vec)
- Returns the base pointer to the vector data, specialization for DIM==4. More...