| 904 | } |
| 905 | |
| 906 | Matrix3D Terathon::Transform(const Transform3D& m1, const Matrix3D& m2) |
| 907 | { |
| 908 | return (Matrix3D(m1(0,0) * m2(0,0) + m1(0,1) * m2(1,0) + m1(0,2) * m2(2,0), |
| 909 | m1(0,0) * m2(0,1) + m1(0,1) * m2(1,1) + m1(0,2) * m2(2,1), |
| 910 | m1(0,0) * m2(0,2) + m1(0,1) * m2(1,2) + m1(0,2) * m2(2,2), |
| 911 | m1(1,0) * m2(0,0) + m1(1,1) * m2(1,0) + m1(1,2) * m2(2,0), |
| 912 | m1(1,0) * m2(0,1) + m1(1,1) * m2(1,1) + m1(1,2) * m2(2,1), |
| 913 | m1(1,0) * m2(0,2) + m1(1,1) * m2(1,2) + m1(1,2) * m2(2,2), |
| 914 | m1(2,0) * m2(0,0) + m1(2,1) * m2(1,0) + m1(2,2) * m2(2,0), |
| 915 | m1(2,0) * m2(0,1) + m1(2,1) * m2(1,1) + m1(2,2) * m2(2,1), |
| 916 | m1(2,0) * m2(0,2) + m1(2,1) * m2(1,2) + m1(2,2) * m2(2,2))); |
| 917 | } |
| 918 | |
| 919 | #ifndef TERATHON_NO_SIMD |
| 920 | |