commit 99571baaeaf8190915647753bcbb06dd8e7971e8
Author: Leszek Koltunski <leszek@koltunski.pl>
Date:   Sat Jul 24 00:11:37 2021 +0200

    New 'Jing' cubit shapes: corrections.

diff --git a/src/main/java/org/distorted/examples/meshfile/MeshFileRenderer.java b/src/main/java/org/distorted/examples/meshfile/MeshFileRenderer.java
index 9ac8730..cff5eb1 100644
--- a/src/main/java/org/distorted/examples/meshfile/MeshFileRenderer.java
+++ b/src/main/java/org/distorted/examples/meshfile/MeshFileRenderer.java
@@ -1073,27 +1073,30 @@ class MeshFileRenderer implements GLSurfaceView.Renderer, DistortedLibrary.Excep
       else if( mode==14 )
         {
         final float F = 0.2f;
+        final float X = F/2;
+        final float Y = F*SQ2/2;
+        final float Z =-F/2;
 
         vertices = new double[][]
           {
-             { 0.0   ,     0.0, 0.0},
-             { -F    ,     0.0, 0.0},
-             { -F/2  ,     0.0, -F*SQ3/2},
-             { -3*F/2,     0.0, -F*SQ3/2},
-             { -F/2  , F*SQ6/3, -F*SQ3/6},
-             { -3*F/2, F*SQ6/3, -F*SQ3/6},
-             { -F    , F*SQ6/3, -F*2*SQ3/3},
-             { -2*F  , F*SQ6/3, -F*2*SQ3/3}
+             { 0.0, 0.0, 0.0 },
+             {   X,   Y,   Z },
+             { 0.0, 2*Y, 2*Z },
+             {  -X,   Y,   Z },
+             { 0.0, 0.0,    -F },
+             {   X,   Y,   Z-F },
+             { 0.0, 2*Y, 2*Z-F },
+             {  -X,   Y,   Z-F },
           };
 
         vertIndexes = new int[][]
           {
-             {3,2,0,1},
+             {0,1,2,3},
              {1,0,4,5},
-             {0,2,6,4},
-             {5,4,6,7},
-             {3,1,5,7},
-             {2,3,7,6}
+             {7,4,0,3},
+             {1,5,6,2},
+             {7,3,2,6},
+             {4,7,6,5}
           };
 
         bands = new float[][]
@@ -1114,7 +1117,7 @@ class MeshFileRenderer implements GLSurfaceView.Renderer, DistortedLibrary.Excep
 
         centers = new float[][]
           {
-             { -2*F/3  , F*SQ6/9, -F*2*SQ3/9}
+             { 0.0f, Y, Z-F/2}
           };
 
         centerIndexes = new int[] { 0,0,0,-1,0,-1,-1,-1 };
@@ -1127,27 +1130,30 @@ class MeshFileRenderer implements GLSurfaceView.Renderer, DistortedLibrary.Excep
       else if( mode==15 )
         {
         final float F = 0.2f;
+        final float X = F/2;
+        final float Y = F*SQ2/2;
+        final float Z =-F/2;
 
         vertices = new double[][]
           {
-             { 0.5-3*F/2,     0.0, -F*SQ3/2  },
-             { 0.5-F    ,     0.0,        0.0},
-             { 0.5-3*F/2, F*SQ6/3, -F*SQ3/6  },
-             { 0.5-2*F  , F*SQ6/3, -F*2*SQ3/3},
-             {-0.5+3*F/2,     0.0, -F*SQ3/2  },
-             {-0.5+F    ,     0.0,        0.0},
-             {-0.5+3*F/2, F*SQ6/3, -F*SQ3/6  },
-             {-0.5+2*F  , F*SQ6/3, -F*2*SQ3/3}
+             { 0.0, 0.0,     0.5-F },
+             {   X,   Y,   Z+0.5-F },
+             { 0.0, 2*Y, 2*Z+0.5-F },
+             {  -X,   Y,   Z+0.5-F },
+             { 0.0, 0.0,    -0.5+F },
+             {   X,   Y,  -Z-0.5+F },
+             { 0.0, 2*Y,-2*Z-0.5+F },
+             {  -X,   Y,  -Z-0.5+F },
           };
 
         vertIndexes = new int[][]
           {
-             {5,1,2,6},
-             {4,0,1,5},
-             {6,2,3,7},
-             {7,3,0,4},
-             {3,2,1,0},
-             {4,5,6,7}
+             {0,4,5,1},
+             {3,7,4,0},
+             {0,1,2,3},
+             {4,7,6,5},
+             {1,5,6,2},
+             {2,6,7,3}
           };
 
         bands = new float[][]
@@ -1163,14 +1169,14 @@ class MeshFileRenderer implements GLSurfaceView.Renderer, DistortedLibrary.Excep
             {0.07f,0.20f*F}
           };
 
-        cornerIndexes = new int[] { 0,0,0,-1,0,0,0,-1 };
+        cornerIndexes = new int[] { 0,0,-1,0,0,0,-1,0 };
 
         centers = new float[][]
           {
-             { 0, F*SQ6/6, -F*SQ3/3 }
+             { 0, F*SQ2/2, 0 }
           };
 
-        centerIndexes = new int[] { 0,0,0,-1,0,0,0,-1 };
+        centerIndexes = new int[] { 0,0,-1,0,0,0,-1,0 };
 
         numComponents = 6;
         }
@@ -1179,45 +1185,50 @@ class MeshFileRenderer implements GLSurfaceView.Renderer, DistortedLibrary.Excep
 
       else if( mode==16 )
         {
-        final float F = 0.2f;
+        final float F = 0.1f;
+        final float L = (1-3*F);
+        final float X = L/2;
+        final float Y = L*SQ2/2;
+        final float Z =-L/2;
+        final float D = F/L;
 
         vertices = new double[][]
           {
-             {    -0.5*(1-3*F),     0.0, (SQ3/6)*(1-3*F) },
-             {     0.5*(1-3*F),     0.0, (SQ3/6)*(1-3*F) },
-             {             0.0,     0.0,-(SQ3/3)*(1-3*F) },
-             { F/2-0.5*(1-3*F), F*SQ6/3, (SQ3/6)*(1-3*F) - F*SQ3/6 },
-             {-F/2+0.5*(1-3*F), F*SQ6/3, (SQ3/6)*(1-3*F) - F*SQ3/6 },
-             {             0.0, F*SQ6/3,-(SQ3/3)*(1-3*F) + F*SQ3/3 },
+              {    0.0,     -2*Y/3,   -2*Z/3 },
+              {      X,        Y/3,      Z/3 },
+              {     -X,        Y/3,      Z/3 },
+              {    0.0,     -2*Y/3,   -2*Z/3+2*D*Z },
+              {  X-D*X,    Y/3-D*Y,  Z/3+D*Z },
+              { -X+D*X,    Y/3-D*Y,  Z/3+D*Z },
           };
 
         vertIndexes = new int[][]
           {
-             {2,1,0},
-             {3,4,5},
-             {0,1,4,3},
-             {1,2,5,4},
-             {2,0,3,5}
+             {0,1,2},
+             {3,5,4},
+             {0,3,4,1},
+             {5,3,0,2},
+             {4,5,2,1}
           };
 
         bands = new float[][]
           {
-             {0.025f,35,0.2f*(1-3*F),0.6f*(1-3*F),5,1,1},
-             {0.001f,35,0.2f*(1-3*F),0.6f*(1-3*F),5,1,1}
+             {0.025f,35,0.20f*(1-3*F),0.6f*(1-3*F),5,1,1},
+             {0.001f,35,0.05f*(1-3*F),0.1f*(1-3*F),5,1,1}
           };
 
         bandIndexes = new int[] { 0,1,1,1,1,1 };
 
         corners = new float[][]
           {
-            {0.05f,0.20f*F}
+            {0.04f,0.15f}
           };
 
         cornerIndexes = new int[] { 0,0,0,-1,-1,-1 };
 
         centers = new float[][]
           {
-            {0.0f, (1-3*F)*SQ6/3, 0.0f}
+            { 0, -2*Y/3, 4*Z/3 }
           };
 
         centerIndexes = new int[] { 0,0,0,-1,-1,-1 };
