@@ -29,7 +29,7 @@ public static Group createRuler(boolean flipNumber) {
2929
3030 public static Group createRuler (boolean flipNumber , int rulerLengthCM ) {
3131 double baseWidth = 0.15 ; // The width of the ruler base in mm
32- double tickLength = 8 ; // The length of a tick in mm
32+ double tickLength = 8 ; // The length of a tick in mm
3333 double tickWidth = 0.25 ; // The width of a tick in mm
3434 Group ruler = new Group ();
3535
@@ -59,25 +59,26 @@ public static Group createRuler(boolean flipNumber, int rulerLengthCM) {
5959 // Centimeter tick marks
6060 tickMesh = createRectangleMesh (tickWidth , tickLength );
6161 // Always draw a number at the end of the ruler
62- if ((i % 20 == 0 ) || (i == (int )(rulerLengthCM * 10 ))) {
62+ if ((i % 20 == 0 ) || (i == (int ) (rulerLengthCM * 10 ))) {
6363 // Add centimeter number using SVGPath
6464 int number = i / 10 ;
6565 // Prevent double "0" at origin "(flipNumber || (i != 0))"
6666 if ((numbers .get (number ) == null ) && (flipNumber || (i != 0 ))) {
67- numbers .put (number , CSG .textToSize ("" + i , 4 , 6 , 0.1 ).movey (tickLength + 0.5 ). moveToCenterX ()
68- .setColor (Color .BLACK ));
67+ numbers .put (number , CSG .textToSize ("" + i , 4 , 6 , 0.1 ).movey (tickLength + 0.5 )
68+ .moveToCenterX (). setColor (Color .BLACK ));
6969 }
7070 CSG movey = flipNumber ? numbers .get (number ).roty (180 ) : numbers .get (number );
71- int index =i ;
72- BowlerKernel .runLater (() -> {
73- MeshView numberGroup = movey .newMesh ();
74- numberGroup .setMouseTransparent (true );
75- // Scale and position the number
76- Affine numberTransform = new Affine ();
77- numberTransform .appendTranslation (index , 0 );
78- numberGroup .getTransforms ().add (numberTransform );
79- ruler .getChildren ().add (numberGroup );
80- });
71+ int index = i ;
72+ if (movey != null )
73+ BowlerKernel .runLater (() -> {
74+ MeshView numberGroup = movey .newMesh ();
75+ numberGroup .setMouseTransparent (true );
76+ // Scale and position the number
77+ Affine numberTransform = new Affine ();
78+ numberTransform .appendTranslation (index , 0 );
79+ numberGroup .getTransforms ().add (numberTransform );
80+ ruler .getChildren ().add (numberGroup );
81+ });
8182 }
8283 } else if (i % 5 == 0 ) {
8384 // 5mm tick marks
0 commit comments