libvmath4

annotate src/matrix.inl @ 0:4d6383605d64

initial commit
author John Tsiombikas <nuclear@member.fsf.org>
date Sun, 05 Oct 2014 04:00:05 +0300
parents
children
rev   line source
nuclear@0 1 #include <string.h>
nuclear@0 2
nuclear@0 3 Matrix3x3 Matrix3x3::id = Matrix3x3(1, 0, 0, 0, 1, 0, 0, 0, 1);
nuclear@0 4 Matrix4x4 Matrix4x4::id = Matrix4x4(1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1);
nuclear@0 5
nuclear@0 6 Matrix3x3::Matrix3x3()
nuclear@0 7 {
nuclear@0 8 memcpy(m, Matrix3x3::id.m, sizeof m);
nuclear@0 9 }
nuclear@0 10
nuclear@0 11 Matrix3x3::Matrix3x3(const float *m)
nuclear@0 12 {
nuclear@0 13 memcpy(this->m, m, sizeof this->m);
nuclear@0 14 }
nuclear@0 15
nuclear@0 16 Matrix3x3::Matrix3x3(float m00, float m01, float m02,
nuclear@0 17 float m10, float m11, float m12,
nuclear@0 18 float m20, float m21, float m22)
nuclear@0 19 {
nuclear@0 20 m[0][0] = m00; m[0][1] = m01; m[0][2] = m02;
nuclear@0 21 m[1][0] = m10; m[1][1] = m11; m[1][2] = m12;
nuclear@0 22 m[2][0] = m20; m[2][1] = m21; m[2][2] = m22;
nuclear@0 23 }
nuclear@0 24
nuclear@0 25
nuclear@0 26 Matrix4x4::Matrix4x4()
nuclear@0 27 {
nuclear@0 28 memcpy(m, Matrix4x4::id.m, sizeof m);
nuclear@0 29 }
nuclear@0 30
nuclear@0 31 Matrix4x4::Matrix4x4(const float *m)
nuclear@0 32 {
nuclear@0 33 memcpy(this->m, m, sizeof this->m);
nuclear@0 34 }
nuclear@0 35
nuclear@0 36 Matrix4x4::Matrix4x4(float m00, float m01, float m02, float m03,
nuclear@0 37 float m10, float m11, float m12, float m13,
nuclear@0 38 float m20, float m21, float m22, float m23,
nuclear@0 39 float m30, float m31, float m32, float m33)
nuclear@0 40 {
nuclear@0 41 m[0][0] = m00; m[0][1] = m01; m[0][2] = m02; m[0][3] = m03;
nuclear@0 42 m[1][0] = m10; m[1][1] = m11; m[1][2] = m12; m[1][3] = m13;
nuclear@0 43 m[2][0] = m20; m[2][1] = m21; m[2][2] = m22; m[2][3] = m23;
nuclear@0 44 m[3][0] = m20; m[3][1] = m21; m[3][2] = m22; m[3][3] = m23;
nuclear@0 45 }