diff --git a/pom.xml b/pom.xml
index e8f70f958..1d964b214 100644
--- a/pom.xml
+++ b/pom.xml
@@ -6,7 +6,7 @@
com.marginallyclever
RobotOverlord
- 2.110.0
+ 2.110.1
Robot Overlord
A friendly 3D user interface for controlling robots.
https://www.marginallyclever.com/
diff --git a/src/main/java/com/marginallyclever/convenience/helpers/StringHelper.java b/src/main/java/com/marginallyclever/convenience/helpers/StringHelper.java
index 3ebcadcae..70be3acdd 100644
--- a/src/main/java/com/marginallyclever/convenience/helpers/StringHelper.java
+++ b/src/main/java/com/marginallyclever/convenience/helpers/StringHelper.java
@@ -5,6 +5,7 @@
import javax.vecmath.Tuple3d;
import javax.vecmath.Vector3d;
import java.io.IOException;
+import java.text.DecimalFormat;
import java.text.NumberFormat;
import java.util.Locale;
@@ -20,34 +21,8 @@ static public String shortenNumber(String s) {
return s;
}
- static public String formatFloat(float arg0) {
- //return Float.toString(roundOff(arg0));
- return shortenNumber(String.format("%.3f", arg0));
- }
-
static public String formatDouble(double arg0) {
- //return Float.toString(roundOff(arg0));
- return shortenNumber(String.format("%.3f", arg0));
- }
-
- /**
- * Parse a number sent from a US format system
- * @param str
- * @return
- */
- static public double parseNumber(String str) {
- double d=0;
-
- try {
- NumberFormat nf = NumberFormat.getInstance(Locale.US);
- Number n = nf.parse(str);
- d = n.doubleValue();
- }
- catch(Exception e) {
- e.printStackTrace();
- }
-
- return d;
+ return shortenNumber(String.format(Locale.ROOT,"%.3f", arg0));
}
// @return "*"+ the binary XOR of every byte in the msg.
diff --git a/src/test/java/com/marginallyclever/ro3/node/nodes/marlinrobotarm/MarlinRobotArmTest.java b/src/test/java/com/marginallyclever/ro3/node/nodes/marlinrobotarm/MarlinRobotArmTest.java
index f4946f947..8e68aff94 100644
--- a/src/test/java/com/marginallyclever/ro3/node/nodes/marlinrobotarm/MarlinRobotArmTest.java
+++ b/src/test/java/com/marginallyclever/ro3/node/nodes/marlinrobotarm/MarlinRobotArmTest.java
@@ -1,5 +1,6 @@
package com.marginallyclever.ro3.node.nodes.marlinrobotarm;
+import com.marginallyclever.convenience.helpers.StringHelper;
import com.marginallyclever.ro3.Registry;
import com.marginallyclever.ro3.node.nodes.pose.Pose;
import com.marginallyclever.ro3.node.nodes.pose.poses.Limb;
@@ -7,6 +8,8 @@
import org.junit.jupiter.api.Test;
import org.mockito.Mockito;
+import java.util.Locale;
+
import static org.junit.jupiter.api.Assertions.*;
class MarlinRobotArmTest {
@@ -68,4 +71,28 @@ public void toFromJSON() {
assertEquals(mra.getLimb().getSubject().getName(),mra2.getLimb().getSubject().getName());
assertEquals(mra.getSolver().getSubject().getName(),mra2.getSolver().getSubject().getName());
}
+
+ @Test
+ public void numberFormatDE() {
+ Locale defaultLocale = Locale.getDefault();
+ Locale.setDefault(Locale.GERMANY);
+ try {
+ assertEquals("1.234", StringHelper.formatDouble(1.234));
+ } finally {
+ Locale.setDefault(defaultLocale);
+ }
+ }
+
+ @Test
+ public void numberFormatDE2() {
+ Locale defaultLocale = Locale.getDefault();
+ Locale.setDefault(Locale.GERMANY);
+ try {
+ StringBuilder sb = new StringBuilder();
+ sb.append(1.234);
+ assertEquals("1.234", sb.toString());
+ } finally {
+ Locale.setDefault(defaultLocale);
+ }
+ }
}
\ No newline at end of file