/* public b2Mat33() { ex = new b2Vec3(); ey = new b2Vec3(); ez = new b2Vec3(); } */ /// ruct this matrix using columns. public b2Mat33(b2Vec3 c1, b2Vec3 c2, b2Vec3 c3) { ex = c1; ey = c2; ez = c3; }
cpVect _b2Mul(b2Mat33 A, cpVect v2) { b2Vec3 v = new b2Vec3(v2.x, v2.y, 1); b2Vec3 r = v.x * A.ex + v.y * A.ey + v.z * A.ez; return new cpVect(r.x, r.y); }
/// Negate this vector. public static b2Vec3 operator -(b2Vec3 b) { b2Vec3 v = new b2Vec3(-b.x, -b.y, -b.z); return v; }
/// Multiply a matrix times a vector. public b2Vec3 b2Mul(b2Mat33 A, b2Vec3 v) { return v.x * A.ex + v.y * A.ey + v.z * A.ez; }