commit 1d811f859acccf926beed49011b3fa10b9c57577
Author: Leszek Koltunski <leszek@distoretedandroid.org>
Date:   Fri Nov 4 11:45:43 2016 +0000

    Tidy up 'Matrix3D'

diff --git a/src/main/java/org/distorted/examples/matrix3d/Matrix3DActivity.java b/src/main/java/org/distorted/examples/matrix3d/Matrix3DActivity.java
index e2eb06a..a6d636d 100644
--- a/src/main/java/org/distorted/examples/matrix3d/Matrix3DActivity.java
+++ b/src/main/java/org/distorted/examples/matrix3d/Matrix3DActivity.java
@@ -36,15 +36,12 @@ import android.widget.SeekBar.OnSeekBarChangeListener;
 
 public class Matrix3DActivity extends Activity implements OnSeekBarChangeListener
 {
-    private SeekBar bar;
     private TextView textMove, textScale, textRotate, textShear;
     private int moveX, moveY, moveZ;
     private int scaleX, scaleY, scaleZ;
     private int rotateX, rotateY, rotateZ, rotateA;
     private int shearX, shearY, shearZ;
-    
     private int maxX, maxY, maxZ;
-    
     private float fmoveX, fmoveY, fmoveZ;
     private float fscaleX, fscaleY, fscaleZ;
     private float frotateX, frotateY, frotateZ, frotateA;
@@ -142,7 +139,8 @@ public class Matrix3DActivity extends Activity implements OnSeekBarChangeListene
       setBar(R.id.matrix3dshearBar2, shearY);
       setBar(R.id.matrix3dshearBar3, shearZ);
       
-      Matrix3DRenderer.setOrder(effects);
+      Matrix3DSurfaceView view = (Matrix3DSurfaceView) this.findViewById(R.id.matrix3dSurfaceView);
+      view.getRenderer().setOrder(effects);
       }
 
 ///////////////////////////////////////////////////////////////////////////////////////////////////
@@ -209,7 +207,7 @@ public class Matrix3DActivity extends Activity implements OnSeekBarChangeListene
     
     private void setBar(int id, int value)
       {
-      bar = (SeekBar)findViewById(id);
+      SeekBar bar = (SeekBar)findViewById(id);
       bar.setOnSeekBarChangeListener(this); 
       bar.setProgress(value);
       }
@@ -222,7 +220,8 @@ public class Matrix3DActivity extends Activity implements OnSeekBarChangeListene
       fmoveY = (moveY-50)*maxY/50.0f;
       fmoveZ = (moveZ-50)*maxZ/50.0f;
 
-      Matrix3DRenderer.setMove( fmoveX, fmoveY, fmoveZ);
+      Matrix3DSurfaceView view = (Matrix3DSurfaceView) this.findViewById(R.id.matrix3dSurfaceView);
+      view.getRenderer().setMove( fmoveX, fmoveY, fmoveZ);
       }
     
 ///////////////////////////////////////////////////////////////////////////////////////////////////
@@ -244,7 +243,8 @@ public class Matrix3DActivity extends Activity implements OnSeekBarChangeListene
       fscaleY = (scaleY>50 ? 0.18f : 0.018f)*(scaleY-50)+1;
       fscaleZ = (scaleZ>50 ? 0.18f : 0.018f)*(scaleZ-50)+1;
 
-      Matrix3DRenderer.setScale(fscaleX, fscaleY, fscaleZ);
+      Matrix3DSurfaceView view = (Matrix3DSurfaceView) this.findViewById(R.id.matrix3dSurfaceView);
+      view.getRenderer().setScale(fscaleX, fscaleY, fscaleZ);
       }
     
 ///////////////////////////////////////////////////////////////////////////////////////////////////
@@ -266,7 +266,8 @@ public class Matrix3DActivity extends Activity implements OnSeekBarChangeListene
       frotateY = (rotateY-50)/50.0f;
       frotateZ = (rotateZ-50)/50.0f;
     
-      Matrix3DRenderer.setRotate( frotateA, frotateX, frotateY, frotateZ );
+      Matrix3DSurfaceView view = (Matrix3DSurfaceView) this.findViewById(R.id.matrix3dSurfaceView);
+      view.getRenderer().setRotate( frotateA, frotateX, frotateY, frotateZ );
       }
     
 ///////////////////////////////////////////////////////////////////////////////////////////////////
@@ -289,8 +290,9 @@ public class Matrix3DActivity extends Activity implements OnSeekBarChangeListene
       fshearX = (shearX-50)/25.0f;
       fshearY = (shearY-50)/25.0f;
       fshearZ = (shearZ-50)/25.0f;
-    		
-      Matrix3DRenderer.setShear( fshearX, fshearY, fshearZ );
+
+    	Matrix3DSurfaceView view = (Matrix3DSurfaceView) this.findViewById(R.id.matrix3dSurfaceView);
+      view.getRenderer().setShear( fshearX, fshearY, fshearZ );
       }
     
 ///////////////////////////////////////////////////////////////////////////////////////////////////
@@ -309,8 +311,8 @@ public class Matrix3DActivity extends Activity implements OnSeekBarChangeListene
     @Override
     protected void onPause() 
       {
-      GLSurfaceView mView = (GLSurfaceView) this.findViewById(R.id.matrix3dSurfaceView);
-      mView.onPause(); 
+      GLSurfaceView view = (GLSurfaceView) this.findViewById(R.id.matrix3dSurfaceView);
+      view.onPause();
       super.onPause();
       }
 
@@ -320,8 +322,8 @@ public class Matrix3DActivity extends Activity implements OnSeekBarChangeListene
     protected void onResume() 
       {
       super.onResume();
-      GLSurfaceView mView = (GLSurfaceView) this.findViewById(R.id.matrix3dSurfaceView);
-      mView.onResume();
+      GLSurfaceView view = (GLSurfaceView) this.findViewById(R.id.matrix3dSurfaceView);
+      view.onResume();
       }
 
 ///////////////////////////////////////////////////////////////////////////////////////////////////
@@ -331,10 +333,10 @@ public class Matrix3DActivity extends Activity implements OnSeekBarChangeListene
       {
       super.onWindowFocusChanged(hasFocus);
   
-      GLSurfaceView mView = (GLSurfaceView) this.findViewById(R.id.matrix3dSurfaceView);
+      GLSurfaceView view = (GLSurfaceView) this.findViewById(R.id.matrix3dSurfaceView);
       
-      maxX = mView.getWidth();
-      maxY = mView.getHeight();
+      maxX = view.getWidth();
+      maxY = view.getHeight();
       maxZ = (maxX+maxY)/2;
       }
 
diff --git a/src/main/java/org/distorted/examples/matrix3d/Matrix3DRenderer.java b/src/main/java/org/distorted/examples/matrix3d/Matrix3DRenderer.java
index b082ce4..934c4ce 100644
--- a/src/main/java/org/distorted/examples/matrix3d/Matrix3DRenderer.java
+++ b/src/main/java/org/distorted/examples/matrix3d/Matrix3DRenderer.java
@@ -48,47 +48,45 @@ class Matrix3DRenderer implements GLSurfaceView.Renderer
     private static final int SIZE = 100;
 	
     private GLSurfaceView mView;
-    private static DistortedCubes mCube;
-
-    private static EffectNames[] order;
+    private DistortedCubes mCube;
+    private EffectNames[] order;
     
-    private static Dynamic3D mMoveInter, mScaleInter, mShearInter;
-    private static Dynamic4D mDynamicRotate;
-
-    private static Static3D mZeroPoint, mMovePoint, mScalePoint, mShearPoint;
-    private static Static4D mRotatePoint;
+    private Dynamic3D mMoveInter, mScaleInter, mShearInter;
+    private Dynamic4D mDynamicRotate;
+    private Static3D mZeroPoint, mMovePoint, mScalePoint, mShearPoint;
+    private Static4D mRotatePoint;
 
 ///////////////////////////////////////////////////////////////////////////////////////////////////
 
-    public static void setMove(float x, float y, float z)
+    void setMove(float x, float y, float z)
       {
       mMovePoint.set(x, y, z);
       }
     
 ///////////////////////////////////////////////////////////////////////////////////////////////////
 
-    public static void setScale(float x, float y, float z)
+    void setScale(float x, float y, float z)
       {
       mScalePoint.set(x, y, z);
       }
      
 ///////////////////////////////////////////////////////////////////////////////////////////////////
 
-    public static void setRotate(float a, float x, float y, float z)
+    void setRotate(float a, float x, float y, float z)
       {
       mRotatePoint.set(a,x,y,z);
       }
     
 ///////////////////////////////////////////////////////////////////////////////////////////////////
 
-    public static void setShear(float x, float y, float z)
+    void setShear(float x, float y, float z)
       {
       mShearPoint.set(x, y, z);
       }
 
 ///////////////////////////////////////////////////////////////////////////////////////////////////
 
-    public static void setOrder(EffectNames[] effects)
+    void setOrder(EffectNames[] effects)
       {
       order = effects;
       setMatrixEffects();
@@ -96,7 +94,7 @@ class Matrix3DRenderer implements GLSurfaceView.Renderer
       
 ///////////////////////////////////////////////////////////////////////////////////////////////////
 
-    public static void setMatrixEffects()
+    private void setMatrixEffects()
       {
       mCube.abortEffects(EffectTypes.MATRIX);
 	
@@ -114,7 +112,7 @@ class Matrix3DRenderer implements GLSurfaceView.Renderer
     
 ///////////////////////////////////////////////////////////////////////////////////////////////////
 
-    public Matrix3DRenderer(GLSurfaceView v)
+    Matrix3DRenderer(GLSurfaceView v)
       {
       mView = v;
       mCube = new DistortedCubes( 1, "1", SIZE);
diff --git a/src/main/java/org/distorted/examples/matrix3d/Matrix3DSurfaceView.java b/src/main/java/org/distorted/examples/matrix3d/Matrix3DSurfaceView.java
index 7bdc879..9196b37 100644
--- a/src/main/java/org/distorted/examples/matrix3d/Matrix3DSurfaceView.java
+++ b/src/main/java/org/distorted/examples/matrix3d/Matrix3DSurfaceView.java
@@ -28,6 +28,8 @@ import android.util.AttributeSet;
 
 class Matrix3DSurfaceView extends GLSurfaceView
 {
+    private Matrix3DRenderer mRenderer;
+
 ///////////////////////////////////////////////////////////////////////////////////////////////////
    
     public Matrix3DSurfaceView(Context c, AttributeSet attrs)
@@ -42,9 +44,18 @@ class Matrix3DSurfaceView extends GLSurfaceView
           { 
           setEGLConfigChooser(8, 8, 8, 8, 16, 0);   
           }
-        
-        setRenderer(new Matrix3DRenderer(this));
+
+        mRenderer = new Matrix3DRenderer(this);
+
+        setRenderer(mRenderer);
         }
       }
+
+///////////////////////////////////////////////////////////////////////////////////////////////////
+
+    Matrix3DRenderer getRenderer()
+      {
+      return mRenderer;
+      }
 }
 
