23#ifndef VCL_MATH_BASE_H
24#define VCL_MATH_BASE_H
26#include <vclib/types.h>
44template<
typename Scalar>
47 return std::isinf(number) || std::isnan(number);
65template<
typename Scalar>
69 Scalar
epsilon = std::numeric_limits<Scalar>::epsilon())
82template<
typename Scalar>
96template<
typename Scalar>
116 static const int FAK_LEN = 1024;
120 C0 = 0.918938533204672722,
121 C1 = 1. / 12.,
C3 = -1. / 360.;
139 sum += std::log(
double(
i));
A class representing a line segment in n-dimensional space. The class is parameterized by a PointConc...
Definition segment.h:43
bool epsilonEquals(Scalar n1, Scalar n2, Scalar epsilon=std::numeric_limits< Scalar >::epsilon())
Checks if two floating point numbers are equal within an epsilon value.
Definition base.h:66
Scalar toRad(const Scalar °)
Converts an angle in degrees to radians.
Definition base.h:83
bool isDegenerate(Scalar number)
Checks if a floating point number is degenerate.
Definition base.h:45
double lnOfFactorial(int n)
Computes and caches the result of the natural logarithm of n!
Definition base.h:114
Scalar toDeg(const Scalar &rad)
Converts an angle in radians to degrees.
Definition base.h:97