commit c4f0dbcef5644c649be7878bc3d645fbeb3da222
Author: Leszek Koltunski <leszek@koltunski.pl>
Date:   Thu Jun 3 16:00:58 2021 +0200

    improvements for FactorySticker

diff --git a/src/main/java/org/distorted/helpers/FactorySticker.java b/src/main/java/org/distorted/helpers/FactorySticker.java
index 2416e2f2..5bc01686 100644
--- a/src/main/java/org/distorted/helpers/FactorySticker.java
+++ b/src/main/java/org/distorted/helpers/FactorySticker.java
@@ -119,16 +119,31 @@ public class FactorySticker
     if( sweepAngle<0 ) sweepAngle += 2*Math.PI;
 
     float R = r*TEXTURE_HEIGHT+stroke/2;
+    float C = (float)Math.cos(sweepAngle/2);
+    float A = R/C;
 
-    float A = (float)(R/(Math.cos(sweepAngle/2)));
+    left += (cX+A*sX);
+    top  += (cY+A*sY);
 
-    float rX = cX + A*sX;
-    float rY = cY + A*sY;
+    if( C< (2*R-stroke)/(2*R+stroke) )
+      {
+      float alpha = startAngle + sweepAngle/2;
+      float B  = (R-stroke/2)/C;
+      float sx = (float)Math.cos(alpha);
+      float sy = (float)Math.sin(alpha);
+
+      float startX = left + R*sx;
+      float startY = top  + R*sy;
+      float stopX  = left + B*sx;
+      float stopY  = top  + B*sy;
+
+      canvas.drawLine(startX,startY,stopX,stopY,paint);
+      }
 
     startAngle *= 180/(Math.PI);
     sweepAngle *= 180/(Math.PI);
 
-    canvas.drawArc( left+rX-R, top+rY-R, left+rX+R, top+rY+R, startAngle, sweepAngle, false, paint);
+    canvas.drawArc( left-R, top-R, left+R, top+R, startAngle, sweepAngle, false, paint);
     }
 
 ///////////////////////////////////////////////////////////////////////////////////////////////////
diff --git a/src/main/java/org/distorted/main/RubikSurfaceView.java b/src/main/java/org/distorted/main/RubikSurfaceView.java
index 21d917db..01976101 100644
--- a/src/main/java/org/distorted/main/RubikSurfaceView.java
+++ b/src/main/java/org/distorted/main/RubikSurfaceView.java
@@ -372,12 +372,12 @@ public class RubikSurfaceView extends GLSurfaceView
         float distNow  = (float)Math.sqrt( (x-x2)*(x-x2) + (y-y2)*(y-y2) );
         float distQuot = mInitDistance<0 ? 1.0f : distNow/ mInitDistance;
         mInitDistance = distNow;
-
+/*
 if( angleDiff< 0.00001f && angleDiff>-0.00001f)
   android.util.Log.e("D", " distQuot="+distQuot);
 else
  android.util.Log.e("D", "angelDiff "+angleDiff+" distQuot="+distQuot);
-
+*/
         TwistyObject object = mPreRender.getObject();
         if( object!=null ) object.setObjectRatio(distQuot);
         }
diff --git a/src/main/java/org/distorted/objects/TwistySquare1.java b/src/main/java/org/distorted/objects/TwistySquare1.java
index 0dcfc968..bacb28b5 100644
--- a/src/main/java/org/distorted/objects/TwistySquare1.java
+++ b/src/main/java/org/distorted/objects/TwistySquare1.java
@@ -1,5 +1,5 @@
 ///////////////////////////////////////////////////////////////////////////////////////////////////
-// Copyright 2019 Leszek Koltunski                                                               //
+// Copyright 2021 Leszek Koltunski                                                               //
 //                                                                                               //
 // This file is part of Magic Cube.                                                              //
 //                                                                                               //
