#include "remoting/client/display/gl_math.h"
#include <sstream>
namespace remoting {
void TransposeTransformationMatrix(std::array<float, 9>* matrix) {
std::swap((*matrix)[1], (*matrix)[3]);
std::swap((*matrix)[2], (*matrix)[6]);
std::swap((*matrix)[5], (*matrix)[7]);
}
void FillRectangleVertexPositions(float left,
float top,
float width,
float height,
std::array<float, 8>* positions) {
(*positions)[0] = left;
(*positions)[1] = top;
(*positions)[2] = left;
(*positions)[3] = top + height;
(*positions)[4] = left + width;
(*positions)[5] = top;
(*positions)[6] = left + width;
(*positions)[7] = top + height;
}
std::string MatrixToString(const float* mat, int num_rows, int num_cols) {
std::ostringstream outstream;
outstream << "[\n";
for (int i = 0; i < num_rows; i++) {
for (int j = 0; j < num_cols; j++) {
outstream << mat[i * num_cols + j] << ", ";
}
outstream << "\n";
}
outstream << "]";
return outstream.str();
}
}