commit 36273130feb6752d8918599bf3fcf627737a43b6
Author: Leszek Koltunski <leszek@koltunski.pl>
Date:   Wed Feb 26 22:23:45 2020 +0000

    Move the Effects.setStretch to Meshbase.setStretch

diff --git a/src/main/java/org/distorted/object/Cubit.java b/src/main/java/org/distorted/object/Cubit.java
index 4879eb6a..103706d2 100644
--- a/src/main/java/org/distorted/object/Cubit.java
+++ b/src/main/java/org/distorted/object/Cubit.java
@@ -171,7 +171,7 @@ class Cubit
     mCurrentPosition = position;
     mRotateEffect    = new MatrixEffectRotate(mRotationAngle, mRotationAxis, matrCenter);
 
-    mEffect = new DistortedEffects(1);
+    mEffect = new DistortedEffects();
     mEffect.apply(mParent.mSinkEffect);
     mEffect.apply( new MatrixEffectMove(vector) );
     mEffect.apply( new MatrixEffectQuaternion(mQuatScramble, matrCenter));
diff --git a/src/main/java/org/distorted/object/RubikObject.java b/src/main/java/org/distorted/object/RubikObject.java
index a9d64ef4..06e1985a 100644
--- a/src/main/java/org/distorted/object/RubikObject.java
+++ b/src/main/java/org/distorted/object/RubikObject.java
@@ -169,19 +169,19 @@ public abstract class RubikObject extends DistortedNode
 
   public void recomputeScaleFactor(int screenWidth, int screenHeight)
     {
-    int sizeX = getEffects().getStartchX();
-    int sizeY = getEffects().getStartchY();
+    float sizeX = getMesh().getStretchX();
+    float sizeY = getMesh().getStretchY();
 
-    if( (float)sizeY/sizeX > (float)screenHeight/screenWidth )
+    if( sizeY/sizeX > (float)screenHeight/screenWidth )
       {
-      int w = (screenHeight*sizeX)/sizeY;
+      float w = (screenHeight*sizeX)/sizeY;
       float factor = (float)screenHeight/sizeY;
       mNodeMove.set((screenWidth-w)*0.5f ,0, 0);
       mNodeScale.set(factor,factor,factor);
       }
     else
       {
-      int h = (screenWidth*sizeY)/sizeX;
+      float h = (screenWidth*sizeY)/sizeX;
       float factor = (float)screenWidth/sizeX;
       mNodeMove.set(0,(screenHeight-h)*0.5f,0);
       mNodeScale.set(factor,factor,factor);
diff --git a/src/main/java/org/distorted/object/RubikObjectList.java b/src/main/java/org/distorted/object/RubikObjectList.java
index 8a05c31c..390fdf76 100644
--- a/src/main/java/org/distorted/object/RubikObjectList.java
+++ b/src/main/java/org/distorted/object/RubikObjectList.java
@@ -85,9 +85,11 @@ public enum RubikObjectList
   public RubikObject create(Static4D quatCur, Static4D quatAcc)
     {
     DistortedTexture texture = new DistortedTexture();
-    DistortedEffects effects = new DistortedEffects(NODE_MESH_SIZE,NODE_MESH_SIZE,0);
+    DistortedEffects effects = new DistortedEffects();
     MeshRectangles mesh      = new MeshRectangles(20,20);   // mesh of the node, not of the cubits
 
+    mesh.setStretch(NODE_MESH_SIZE,NODE_MESH_SIZE,0);
+
     return new RubikCube(mObjectSize, quatCur, quatAcc, texture, mesh, effects);
     }
 
