MVE - Multi-View Environment mve-devel
Loading...
Searching...
No Matches
Namespaces | Functions
basis_function.h File Reference
#include "math/vector.h"
#include "math/matrix.h"
#include "fssr/defines.h"
#include "fssr/sample.h"
Include dependency graph for basis_function.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Namespaces

namespace  fssr
 

Functions

void fssr::evaluate (math::Vec3f const &pos, Sample const &sample, double *value, double *weight, math::Vector< double, 3 > *value_deriv, math::Vector< double, 3 > *weight_deriv)
 Rotates the given point in the LCS of the sample, evaluates the basis and weight functions and their derivatives, and rotates the derivatives back to the global coordinate system.
 
template<typename T >
fssr::fssr_basis (T const &scale, math::Vector< T, 3 > const &pos, math::Vector< T, 3 > *deriv=nullptr)
 Evaluates the FSSR basis function and directional derivatives (optional).
 
template<typename T >
fssr::fssr_weight (T const &scale, math::Vector< T, 3 > const &pos, math::Vector< T, 3 > *deriv=nullptr)
 Evaluates the FSSR weight function and directional derivatives (optional).
 
template<typename T >
fssr::gaussian (T const &sigma, math::Vector< T, 3 > const &x)
 The Gaussian function in 3D.
 
template<typename T >
fssr::gaussian_normalized (T const &sigma, math::Vector< T, 3 > const &x)
 The normalized Gaussian function in 3D.
 
void fssr::rotation_from_normal (math::Vec2f const &normal, math::Matrix2f *rot)
 Generates a rotation matrix that transforms in the FSSR LCS.
 
void fssr::rotation_from_normal (math::Vec3f const &normal, math::Matrix3f *rot)
 Generates a rotation matrix that transforms in the FSSR LCS.
 
math::Vec3f fssr::transform_position (math::Vec3f const &pos, Sample const &sample)
 Transforms 'pos' according to the samples position and normal.