commit d6fa5f24113c4c8ea4679b19e9d571ac0c808097
Author: Leszek Koltunski <leszek@koltunski.pl>
Date:   Thu Jun 3 14:14:15 2021 +0200

    Square-1: progress

diff --git a/src/main/java/org/distorted/objects/TwistySquare1.java b/src/main/java/org/distorted/objects/TwistySquare1.java
index 59382ef1..0dcfc968 100644
--- a/src/main/java/org/distorted/objects/TwistySquare1.java
+++ b/src/main/java/org/distorted/objects/TwistySquare1.java
@@ -181,10 +181,14 @@ class TwistySquare1 extends TwistyObject
               {6,7,3,2}
           };
 
-  // TODO
   private static final float[][] STICKERS = new float[][]
           {
-              { -0.5f, -0.5f, 0.5f, -0.5f, 0.5f, 0.5f, -0.5f, 0.5f }
+              { -0.5f, -0.26289170f, 0.5f, -0.26289170f, 0.5f, 0.26289170f, -0.5f, 0.26289170f }, // middle front
+              { -0.5f, -0.16666667f, 0.5f, -0.16666667f, 0.5f, 0.16666667f, -0.5f, 0.16666667f }, // middle right
+              { -0.5f, -0.45534182f, 0.5f, -0.45534182f, 0.5f, 0.45534182f, -0.5f, 0.45534182f }, // middle back
+              { -0.20096192f, -0.25f, 0.20096192f, -0.25f, 0.0f, 0.5f },                          // edge top
+              { -0.40192384f, -0.5f, 0.40192384f, -0.5f, 0.40192384f, 0.5f, -0.40192384f, 0.5f }, // edge face
+              { -0.2637079f, -0.38185397f, 0.38185397f, -0.38185397f, 0.38185397f, 0.2637079f, -0.5f, 0.5f } // corner top
           };
 
   private static final int NUM_ST = STICKERS.length;
@@ -192,7 +196,7 @@ class TwistySquare1 extends TwistyObject
   private static final int[][] mStickerType = new int[][]
          {
            {  NUM_ST,NUM_ST,0,     1,     2,NUM_ST },
-           {       4,NUM_ST,3,NUM_ST,NUM_ST,NUM_ST },
+           {       3,NUM_ST,4,NUM_ST,NUM_ST,NUM_ST },
            {       5,NUM_ST,2,     2,NUM_ST,NUM_ST }
          };
 
@@ -215,10 +219,10 @@ class TwistySquare1 extends TwistyObject
            { 3, 0, 0, 4, 0, 0 },
            { 3, 0, 4, 1, 0, 0 },
            { 3, 0, 1, 5, 0, 0 },
-           { 2, 0, 5, 0, 0, 0 },
-           { 2, 0, 0, 4, 0, 0 },
-           { 2, 0, 4, 1, 0, 0 },
-           { 2, 0, 1, 5, 0, 0 },
+           { 2, 0, 0, 5, 0, 0 },
+           { 2, 0, 4, 0, 0, 0 },
+           { 2, 0, 1, 4, 0, 0 },
+           { 2, 0, 5, 1, 0, 0 },
          };
 
   private static MeshBase[] mMeshes;
@@ -257,12 +261,12 @@ class TwistySquare1 extends TwistyObject
         {
         float[][] bands= new float[][]
           {
-             {0.06f,35,0.5f,0.7f,6,2,2},
-             {0.03f,35,0.5f,0.7f,6,2,2},
+             {0.04f,35,0.5f,0.7f,6,2,2},
+             {0.02f,35,0.5f,0.7f,6,2,2},
              {0.00f, 0,1.0f,0.0f,2,0,0}
           };
         int[] bandIndexes   = new int[] { 2,2,1,1,0,2 };
-        float[][] corners   = new float[][] { {0.06f,0.08f} };
+        float[][] corners   = new float[][] { {0.04f,0.05f} };
         int[] cornerIndexes = new int[] { 0,0,0,0,0,0,0,0 };
         float[][] centers   = new float[][] { { -0.75f, 0.0f, 0.0f} };
         int[] centerIndexes = new int[] { 0,0,0,0,0,0,0,0 };
@@ -335,15 +339,26 @@ class TwistySquare1 extends TwistyObject
     }
 
 ///////////////////////////////////////////////////////////////////////////////////////////////////
-// TODO
 
   void createFaceTexture(Canvas canvas, Paint paint, int face, int left, int top)
     {
-    float R = 0.10f;
-    float S = 0.08f;
+    int COLORS = FACE_COLORS.length;
+    int stickerType = face/COLORS;
+    float R,S;
+
+    switch(stickerType)
+      {
+      case 0:  R = 0.06f; S = 0.05f; break;
+      case 1:  R = 0.04f; S = 0.04f; break;
+      case 2:  R = 0.10f; S = 0.08f; break;
+      case 3:  R = 0.03f; S = 0.05f; break;
+      case 4:  R = 0.11f; S = 0.08f; break;
+      case 5:  R = 0.08f; S = 0.08f; break;
+      default: R = 0.00f; S = 0.00f; break;
+      }
 
     FactorySticker factory = FactorySticker.getInstance();
-    factory.drawRoundedPolygon(canvas, paint, left, top, STICKERS[0], S, FACE_COLORS[face], R);
+    factory.drawRoundedPolygon(canvas, paint, left, top, STICKERS[stickerType], S, FACE_COLORS[face%COLORS], R);
     }
 
 ///////////////////////////////////////////////////////////////////////////////////////////////////
@@ -420,7 +435,7 @@ class TwistySquare1 extends TwistyObject
     else if( cubit<10 ) type = 1;
     else                type = 2;
 
-    return 0;//mStickerType[type][cubitface]*FACE_COLORS.length + mStickerColor[cubit][cubitface];
+    return mStickerType[type][cubitface]*FACE_COLORS.length + mStickerColor[cubit][cubitface];
     }
 
 ///////////////////////////////////////////////////////////////////////////////////////////////////
