Minor opt.
This commit is contained in:
parent
97f17dc6d8
commit
086bf0343c
@ -1,6 +1,8 @@
|
|||||||
// This code is in the public domain -- castanyo@yahoo.es
|
// This code is in the public domain -- castanyo@yahoo.es
|
||||||
|
|
||||||
#include <nvmath/SphericalHarmonic.h>
|
#include "SphericalHarmonic.h"
|
||||||
|
|
||||||
|
#include "Vector.h"
|
||||||
|
|
||||||
using namespace nv;
|
using namespace nv;
|
||||||
|
|
||||||
|
@ -3,20 +3,21 @@
|
|||||||
#ifndef NV_MATH_SPHERICALHARMONIC_H
|
#ifndef NV_MATH_SPHERICALHARMONIC_H
|
||||||
#define NV_MATH_SPHERICALHARMONIC_H
|
#define NV_MATH_SPHERICALHARMONIC_H
|
||||||
|
|
||||||
#include "Vector.h"
|
#include "nvmath.h"
|
||||||
|
|
||||||
#include <string.h> // memcpy
|
#include <string.h> // memcpy
|
||||||
|
|
||||||
|
|
||||||
namespace nv
|
namespace nv
|
||||||
{
|
{
|
||||||
|
class Vector3;
|
||||||
class Matrix;
|
class Matrix;
|
||||||
|
|
||||||
NVMATH_API float legendrePolynomial( int l, int m, float x ) NV_CONST;
|
NVMATH_API float legendrePolynomial( int l, int m, float x ) NV_CONST;
|
||||||
NVMATH_API float shBasis( int l, int m, float theta, float phi ) NV_CONST;
|
NVMATH_API float shBasis( int l, int m, float theta, float phi ) NV_CONST;
|
||||||
NVMATH_API float shBasis( int l, int m, Vector3::Arg v ) NV_CONST;
|
NVMATH_API float shBasis( int l, int m, const Vector3 & v ) NV_CONST;
|
||||||
NVMATH_API float hshBasis( int l, int m, float theta, float phi ) NV_CONST;
|
NVMATH_API float hshBasis( int l, int m, float theta, float phi ) NV_CONST;
|
||||||
NVMATH_API float hshBasis( int l, int m, Vector3::Arg v ) NV_CONST;
|
NVMATH_API float hshBasis( int l, int m, const Vector3 & v ) NV_CONST;
|
||||||
|
|
||||||
class Sh;
|
class Sh;
|
||||||
float dot(const Sh & a, const Sh & b) NV_CONST;
|
float dot(const Sh & a, const Sh & b) NV_CONST;
|
||||||
@ -185,7 +186,7 @@ namespace nv
|
|||||||
}*/
|
}*/
|
||||||
|
|
||||||
/// Evaluate
|
/// Evaluate
|
||||||
void eval(Vector3::Arg dir)
|
void eval(const Vector3 & dir)
|
||||||
{
|
{
|
||||||
for(int l = 0; l <= m_order; l++) {
|
for(int l = 0; l <= m_order; l++) {
|
||||||
for(int m = -l; m <= l; m++) {
|
for(int m = -l; m <= l; m++) {
|
||||||
@ -196,7 +197,7 @@ namespace nv
|
|||||||
|
|
||||||
|
|
||||||
/// Evaluate the spherical harmonic function.
|
/// Evaluate the spherical harmonic function.
|
||||||
float sample(Vector3::Arg dir) const
|
float sample(const Vector3 & dir) const
|
||||||
{
|
{
|
||||||
Sh sh(order());
|
Sh sh(order());
|
||||||
sh.eval(dir);
|
sh.eval(dir);
|
||||||
|
Loading…
Reference in New Issue
Block a user