library of assembled shared sources

http://lass.cocamware.com

lass::prim::Unnormalized Struct Reference
[NormalizingPolicy]

Policy to keep normals unnormalized. More...

#include <normalizing_policy.h>


Static Public Member Functions

template<typename VectorType >
static void normalize (VectorType &)
 Don't normalize normals we want to keep unnormalized! :) this is a noop.
template<typename VectorType , typename ValueType >
static void normalizeAndScale (VectorType &, ValueType &)
 Don't normalize and don't scale.
template<typename ValueType , typename VectorType >
static ValueType divideByNorm (ValueType iValue, const VectorType &iNormObject)
template<typename ValueType , typename VectorType >
static ValueType divideBySquaredNorm (ValueType iValue, const VectorType &iNormObject)


Detailed Description

Policy to keep normals unnormalized.

Author:
Bram de Greve [BdG]
Date:
2003
Using this policy will keep direction vectors and normals at their original length. You can do this for precision reasons, for speed issues, or any other reason that is yours. However, the maths will still be correct, because the implementations will know of this unnormalized vectors, and will correct with extra factors where necessary. But, these corrections can sometimes be faster than using normalized vectors for start, because they often can avoid the square root.

Definition at line 154 of file normalizing_policy.h.


Member Function Documentation

template<typename VectorType >
static void lass::prim::Unnormalized::normalize ( VectorType &   )  [inline, static]

Don't normalize normals we want to keep unnormalized! :) this is a noop.

Definition at line 160 of file normalizing_policy.h.

template<typename VectorType , typename ValueType >
static void lass::prim::Unnormalized::normalizeAndScale ( VectorType &  ,
ValueType &   
) [inline, static]

Don't normalize and don't scale.

Definition at line 168 of file normalizing_policy.h.

template<typename ValueType , typename VectorType >
static ValueType lass::prim::Unnormalized::divideByNorm ( ValueType  iValue,
const VectorType &  iNormObject 
) [inline, static]

Returns:
iValue divided by the norm of iNormObject

Definition at line 175 of file normalizing_policy.h.

template<typename ValueType , typename VectorType >
static ValueType lass::prim::Unnormalized::divideBySquaredNorm ( ValueType  iValue,
const VectorType &  iNormObject 
) [inline, static]

Returns:
iValue divided by the squared norm of iNormObject

Definition at line 183 of file normalizing_policy.h.


The documentation for this struct was generated from the following file:

Generated on Mon Nov 10 14:22:13 2008 for Library of Assembled Shared Sources by doxygen 1.5.7.1
SourceForge.net Logo