commit 40223bbb3209d5859d7e231e46335d7c8fdbca3b
Author: Leszek Koltunski <leszek@koltunski.pl>
Date:   Mon Mar 9 19:08:46 2020 +0000

    The Pyraminx itself finished - now its movements!

diff --git a/src/main/java/org/distorted/examples/meshjoin/MeshJoinRenderer.java b/src/main/java/org/distorted/examples/meshjoin/MeshJoinRenderer.java
index 9d99224..5292888 100644
--- a/src/main/java/org/distorted/examples/meshjoin/MeshJoinRenderer.java
+++ b/src/main/java/org/distorted/examples/meshjoin/MeshJoinRenderer.java
@@ -183,6 +183,7 @@ class MeshJoinRenderer implements GLSurfaceView.Renderer
 
     private MeshBase createJoinedTetrahedron()
       {
+      final float SQ2 = (float)Math.sqrt(2);
       final float SQ3 = (float)Math.sqrt(3);
       final float angleFaces = (float)((180/Math.PI)*(2*Math.asin(SQ3/3))); // angle between two faces of a tetrahedron
       final int MESHES=4;
@@ -193,13 +194,13 @@ class MeshJoinRenderer implements GLSurfaceView.Renderer
       MatrixEffect[] effects0 = new MatrixEffect[3];
       effects0[0] = new MatrixEffectScale( new Static3D(1,SQ3/2,1) );
       effects0[1] = new MatrixEffectRotate( new Static1D(90), new Static3D(1,0,0), new Static3D(0,0,0) );
-      effects0[2] = new MatrixEffectMove( new Static3D(0,-SQ3/6,SQ3/12) );
+      effects0[2] = new MatrixEffectMove( new Static3D(0,-SQ3*SQ2/12,SQ3/12) );
 
       meshes[0].apply(effects0);
 
       Static1D angle = new Static1D(angleFaces);
       Static3D axis  = new Static3D(-1,0,0);
-      Static3D center= new Static3D(0,-SQ3/6,-SQ3/6);
+      Static3D center= new Static3D(0,-SQ3*SQ2/12,-SQ3/6);
 
       MatrixEffect[] effects1 = new MatrixEffect[5];
       effects1[0] = effects0[0];
