void Matrix<float>::translate(const Vec3D& vec) { const float x = vec._x(); const float y = vec._y(); const float z = vec._z(); matrix[12] += matrix[0]*x + matrix[4]*y + matrix[8]*z; matrix[13] += matrix[1]*x + matrix[5]*y + matrix[9]*z; matrix[14] += matrix[2]*x + matrix[6]*y + matrix[10]*z; }
void Matrix<float>::scale(const Vec3D& vec) { const float x = vec._x(); const float y = vec._y(); const float z = vec._z(); matrix[0] *= x; matrix[1] *= x; matrix[2] *= x; matrix[4] *= y; matrix[5] *= y; matrix[6] *= y; matrix[8] *= z; matrix[9] *= z; matrix[10] *= z; }