Added missing 'typename' in Colladaparser.h First implementation of spherical and cylindrical mapping, already in use for IRR and LWO models. For the latter the coordinate system is not yet correct. Moved vec2d to a separate header and added operators similar to vec3. Added plane and ray helper classes. Just the data is wrapped, no operators required for the moment. git-svn-id: https://assimp.svn.sourceforge.net/svnroot/assimp/trunk@249 67173fc5-114c-0410-ac8e-9d2fd5bffc1f
36 lines
592 B
C++
36 lines
592 B
C++
|
|
|
|
#ifndef BOOST_MATH_COMMON_FACTOR_RT_HPP
|
|
#define BOOST_MATH_COMMON_FACTOR_RT_HPP
|
|
|
|
|
|
namespace boost {
|
|
namespace math {
|
|
|
|
// TODO: use binary GCD for unsigned integers ....
|
|
template < typename IntegerType >
|
|
IntegerType gcd( IntegerType const &a, IntegerType const &b )
|
|
{
|
|
while ( true )
|
|
{
|
|
if ( a == zero )
|
|
return b;
|
|
b %= a;
|
|
|
|
if ( b == zero )
|
|
return a;
|
|
a %= b;
|
|
}
|
|
}
|
|
|
|
template < typename IntegerType >
|
|
IntegerType lcm( IntegerType const &a, IntegerType const &b )
|
|
{
|
|
IntegerType t = gcd (a,b);
|
|
if (!t)return t;
|
|
return a / t * b;
|
|
}
|
|
|
|
}}
|
|
|
|
#endif |