#include <algorithm>
#include <math.h>
Go to the source code of this file.
K abs | ( | const K & | k | ) | [inline] |
Definition at line 7 of file ssi_math.hpp.
Referenced by intersectp_coplanar_triangles(), geom::intersectp_coplanar_triangles(), intersectp_triangle3(), geom::intersectp_triangle3(), intersectp_triangles3_div(), geom::intersectp_triangles3_div(), intersectp_triangles3_isegment(), geom::intersectp_triangles3_isegment(), dsearch< C, V >::push(), and Sqrt().
00007 { return std::abs(k); };
K det22 | ( | const K & | a, | |
const K & | b, | |||
const K & | c, | |||
const K & | d | |||
) | [inline] |
Definition at line 10 of file ssi_math.hpp.
K det33 | ( | const K & | a00, | |
const K & | a01, | |||
const K & | a02, | |||
const K & | a10, | |||
const K & | a11, | |||
const K & | a12, | |||
const K & | a20, | |||
const K & | a21, | |||
const K & | a22 | |||
) | [inline] |
Definition at line 61 of file ssi_math.hpp.
References tcoff33().
00064 { 00065 K tmp[9]; 00066 tcoff33( tmp[0], tmp[1], tmp[2], 00067 tmp[3], tmp[4], tmp[5], 00068 tmp[6], tmp[7], tmp[8], 00069 a00, a01, a02, 00070 a10, a11, a12, 00071 a20, a21, a22 ); 00072 return a00 * tmp[0] + a10 * tmp[1] + a20 * tmp[2]; 00073 };
void inv33 | ( | K & | r00, | |
K & | r01, | |||
K & | r02, | |||
K & | r10, | |||
K & | r11, | |||
K & | r12, | |||
K & | r20, | |||
K & | r21, | |||
K & | r22, | |||
const K & | a00, | |||
const K & | a01, | |||
const K & | a02, | |||
const K & | a10, | |||
const K & | a11, | |||
const K & | a12, | |||
const K & | a20, | |||
const K & | a21, | |||
const K & | a22 | |||
) | [inline] |
Definition at line 34 of file ssi_math.hpp.
References tcoff33().
00041 { 00042 tcoff33( r00, r01, r02, 00043 r10, r11, r12, 00044 r20, r21, r22, 00045 a00, a01, a02, 00046 a10, a11, a12, 00047 a20, a21, a22 ); 00048 K idet = 1.0/(a00*r00+a10*r01+a20*r02); 00049 r00 *= idet; 00050 r01 *= idet; 00051 r02 *= idet; 00052 r10 *= idet; 00053 r11 *= idet; 00054 r12 *= idet; 00055 r20 *= idet; 00056 r21 *= idet; 00057 r22 *= idet; 00058 };
float Sqrt | ( | const float & | x, | |
const float & | prec | |||
) | [inline] |
double Sqrt | ( | const double & | x, | |
const double & | prec | |||
) | [inline] |
K Sqrt | ( | const K & | x, | |
const K & | prec = 1e-19 | |||
) | [inline] |
Definition at line 76 of file ssi_math.hpp.
References abs().
00077 { 00078 00079 K r = x/2; 00080 do 00081 { 00082 r = (r+(x/r))/2; 00083 } 00084 while( abs(r*r-x) > prec ); 00085 return r; 00086 };
void tcoff33 | ( | K & | r00, | |
K & | r01, | |||
K & | r02, | |||
K & | r10, | |||
K & | r11, | |||
K & | r12, | |||
K & | r20, | |||
K & | r21, | |||
K & | r22, | |||
const K & | a00, | |||
const K & | a01, | |||
const K & | a02, | |||
const K & | a10, | |||
const K & | a11, | |||
const K & | a12, | |||
const K & | a20, | |||
const K & | a21, | |||
const K & | a22 | |||
) | [inline] |
Definition at line 15 of file ssi_math.hpp.