| 327 | const float cmp_angle = M_PI / 10.f; |
| 328 | const float cmp_ldisp = 0.1f; |
| 329 | IC bool cmp(const Fmatrix& f0, const Fmatrix& f1) |
| 330 | { |
| 331 | Fmatrix if0; |
| 332 | if0.invert(f0); |
| 333 | Fmatrix cm; |
| 334 | cm.mul_43(if0, f1); |
| 335 | |
| 336 | Fvector ax; |
| 337 | float ang; |
| 338 | Fquaternion q; |
| 339 | q.set(cm); |
| 340 | q.get_axis_angle(ax, ang); |
| 341 | |
| 342 | return ang < cmp_angle && cm.c.square_magnitude() < cmp_ldisp * cmp_ldisp; |
| 343 | } |
| 344 | |
| 345 | bool is_similar(const Fmatrix& m0, const Fmatrix& m1, float param) |
| 346 | { |
no test coverage detected