From 518f033b68649c151cc8725ea8c557eae01cc567 Mon Sep 17 00:00:00 2001 From: Alex Sakhartchouk Date: Thu, 5 Aug 2010 10:28:43 -0700 Subject: Adding more matrix math functions. Fixing build. Change-Id: Ie0f6724ba063ada94d1d44d99bbe56e21d9bd72f --- graphics/java/android/renderscript/Matrix2f.java | 5 +++++ graphics/java/android/renderscript/Matrix3f.java | 9 +++++++++ graphics/java/android/renderscript/Matrix4f.java | 9 +++++++++ 3 files changed, 23 insertions(+) (limited to 'graphics/java/android/renderscript') diff --git a/graphics/java/android/renderscript/Matrix2f.java b/graphics/java/android/renderscript/Matrix2f.java index a575ca9..99d23db 100644 --- a/graphics/java/android/renderscript/Matrix2f.java +++ b/graphics/java/android/renderscript/Matrix2f.java @@ -96,6 +96,11 @@ public class Matrix2f { tmp.loadScale(x, y); multiply(tmp); } + public void transpose() { + float temp = mMat[1]; + mMat[1] = mMat[2]; + mMat[2] = temp; + } final float[] mMat; } diff --git a/graphics/java/android/renderscript/Matrix3f.java b/graphics/java/android/renderscript/Matrix3f.java index d01ac68..961bc5d 100644 --- a/graphics/java/android/renderscript/Matrix3f.java +++ b/graphics/java/android/renderscript/Matrix3f.java @@ -165,6 +165,15 @@ public class Matrix3f { tmp.loadTranslate(x, y); multiply(tmp); } + public void transpose() { + for(int i = 0; i < 2; ++i) { + for(int j = i + 1; j < 3; ++j) { + float temp = mMat[i*3 + j]; + mMat[i*3 + j] = mMat[j*3 + i]; + mMat[j*3 + i] = temp; + } + } + } final float[] mMat; } diff --git a/graphics/java/android/renderscript/Matrix4f.java b/graphics/java/android/renderscript/Matrix4f.java index ebd5bde..e854cd9 100644 --- a/graphics/java/android/renderscript/Matrix4f.java +++ b/graphics/java/android/renderscript/Matrix4f.java @@ -179,6 +179,15 @@ public class Matrix4f { tmp.loadTranslate(x, y, z); multiply(tmp); } + public void transpose() { + for(int i = 0; i < 3; ++i) { + for(int j = i + 1; j < 4; ++j) { + float temp = mMat[i*4 + j]; + mMat[i*4 + j] = mMat[j*4 + i]; + mMat[j*4 + i] = temp; + } + } + } final float[] mMat; } -- cgit v1.1