Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(188)

Unified Diff: chrome/browser/android/vr_shell/vr_math.cc

Issue 2730883003: Remove unnecessary UI element math. (Closed)
Patch Set: Add comments to non-obvious methods. Created 3 years, 9 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
« no previous file with comments | « chrome/browser/android/vr_shell/vr_math.h ('k') | chrome/browser/android/vr_shell/vr_shell_gl.cc » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: chrome/browser/android/vr_shell/vr_math.cc
diff --git a/chrome/browser/android/vr_shell/vr_math.cc b/chrome/browser/android/vr_shell/vr_math.cc
index 112d491c7d26e30d9995d767f0574a04e044ad35..1438010c8061477ca0d62800d0cb3896de0d4864 100644
--- a/chrome/browser/android/vr_shell/vr_math.cc
+++ b/chrome/browser/android/vr_shell/vr_math.cc
@@ -46,26 +46,6 @@ void TranslateM(gvr::Mat4f& tmat, gvr::Mat4f& mat, float x, float y, float z) {
tmat.m[2][3] += z;
}
-// Right multiply a translation matrix.
-void TranslateMRight(gvr::Mat4f& tmat,
- gvr::Mat4f& mat,
- float x,
- float y,
- float z) {
- if (&tmat != &mat) {
- for (int i = 0; i < 4; ++i) {
- for (int j = 0; j < 3; ++j) {
- tmat.m[i][j] = mat.m[i][j];
- }
- }
- }
-
- for (int i = 0; i < 4; i++) {
- tmat.m[i][3] =
- mat.m[i][0] * x + mat.m[i][1] * y + mat.m[i][2] * z + mat.m[i][3];
- }
-}
-
// Left multiply a scale matrix.
void ScaleM(gvr::Mat4f& tmat,
const gvr::Mat4f& mat,
@@ -87,65 +67,6 @@ void ScaleM(gvr::Mat4f& tmat,
}
}
-// Right multiply a scale matrix.
-void ScaleMRight(gvr::Mat4f& tmat,
- const gvr::Mat4f& mat,
- float x,
- float y,
- float z) {
- if (&tmat != &mat) {
- for (int i = 0; i < 4; ++i) {
- for (int j = 0; j < 3; ++j) {
- tmat.m[i][j] = mat.m[i][j];
- }
- }
- }
- // Multiply columns, don't change translation components.
- for (int i = 0; i < 3; ++i) {
- tmat.m[i][0] *= x;
- tmat.m[i][1] *= y;
- tmat.m[i][2] *= z;
- }
-}
-
-gvr::Mat4f MatrixTranspose(const gvr::Mat4f& mat) {
- gvr::Mat4f result;
- for (int i = 0; i < 4; ++i) {
- for (int k = 0; k < 4; ++k) {
- result.m[i][k] = mat.m[k][i];
- }
- }
- return result;
-}
-
-std::array<float, 4> MatrixVectorMul(const gvr::Mat4f& matrix,
- const std::array<float, 4>& vec) {
- std::array<float, 4> result;
- for (int i = 0; i < 4; ++i) {
- result[i] = 0;
- for (int k = 0; k < 4; ++k) {
- result[i] += matrix.m[i][k] * vec[k];
- }
- }
- return result;
-}
-
-std::array<float, 3> MatrixVectorMul(const gvr::Mat4f& matrix,
- const std::array<float, 3>& vec) {
- // Use homogeneous coordinates for the multiplication.
- std::array<float, 4> vec_h = {{vec[0], vec[1], vec[2], 1.0f}};
- std::array<float, 4> result;
- for (int i = 0; i < 4; ++i) {
- result[i] = 0;
- for (int k = 0; k < 4; ++k) {
- result[i] += matrix.m[i][k] * vec_h[k];
- }
- }
- // Convert back from homogeneous coordinates.
- float rw = 1.0f / result[3];
- return {{rw * result[0], rw * result[1], rw * result[2]}};
-}
-
gvr::Vec3f MatrixVectorMul(const gvr::Mat4f& m, const gvr::Vec3f& v) {
gvr::Vec3f res;
res.x = m.m[0][0] * v.x + m.m[0][1] * v.y + m.m[0][2] * v.z + m.m[0][3];
@@ -224,6 +145,10 @@ float VectorLength(const gvr::Vec3f& vec) {
return sqrt(vec.x * vec.x + vec.y * vec.y + vec.z * vec.z);
}
+gvr::Vec3f VectorSubtract(const gvr::Vec3f& a, const gvr::Vec3f& b) {
+ return {a.x - b.x, a.y - b.y, a.z - b.z};
+}
+
float NormalizeVector(gvr::Vec3f& vec) {
float len = VectorLength(vec);
vec.x /= len;
« no previous file with comments | « chrome/browser/android/vr_shell/vr_math.h ('k') | chrome/browser/android/vr_shell/vr_shell_gl.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698