void AppendToString(std::stringstream& aStream, const Matrix4x4& m, const char* pfx, const char* sfx) { aStream << pfx; if (m.Is2D()) { Matrix matrix = m.As2D(); if (matrix.IsIdentity()) { aStream << "[ I ]"; aStream << sfx; return; } aStream << nsPrintfCString( "[ %g %g; %g %g; %g %g; ]", matrix._11, matrix._12, matrix._21, matrix._22, matrix._31, matrix._32).get(); } else { aStream << nsPrintfCString( "[ %g %g %g %g; %g %g %g %g; %g %g %g %g; %g %g %g %g; ]", m._11, m._12, m._13, m._14, m._21, m._22, m._23, m._24, m._31, m._32, m._33, m._34, m._41, m._42, m._43, m._44).get(); } aStream << sfx; }
void AppendToString(std::stringstream& aStream, const Matrix4x4& m, const char* pfx, const char* sfx) { if (m.Is2D()) { Matrix matrix = m.As2D(); AppendToString(aStream, matrix, pfx, sfx); return; } aStream << pfx; aStream << nsPrintfCString( "[ %g %g %g %g; %g %g %g %g; %g %g %g %g; %g %g %g %g; ]", m._11, m._12, m._13, m._14, m._21, m._22, m._23, m._24, m._31, m._32, m._33, m._34, m._41, m._42, m._43, m._44).get(); aStream << sfx; }