]> source.dussan.org Git - poi.git/commitdiff
http://nagoya.apache.org/bugzilla/show_bug.cgi?id=11070
authorAndrew C. Oliver <acoliver@apache.org>
Sat, 27 Jul 2002 01:04:58 +0000 (01:04 +0000)
committerAndrew C. Oliver <acoliver@apache.org>
Sat, 27 Jul 2002 01:04:58 +0000 (01:04 +0000)
PR:
Obtained from:
Submitted by:
Reviewed by:

git-svn-id: https://svn.apache.org/repos/asf/jakarta/poi/trunk@352808 13f79535-47bb-0310-9956-ffa450edef68

src/contrib/src/org/apache/poi/hssf/contrib/view/SVFractionalFormat.java

index edf54ef2d40ec906df9f85f1315d4aac4499c51c..36f52138927ed2f087c49e0b77172b57e242c5d1 100644 (file)
@@ -133,8 +133,8 @@ public class SVFractionalFormat extends Format {
     if (f < 0) {
       sign = -1;
     }
-    double Precision = 0.0001;
-    double AllowedError = 0.001;
+    double Precision = 0.00001;
+    double AllowedError = Precision;
     double d = Math.abs(f);
     d -= Whole;
     double Frac = d;
@@ -187,8 +187,7 @@ public class SVFractionalFormat extends Format {
       Whole++;
       Num = 0;
       Den = 0;
-    } else
-        if (Den == 0) {
+    } else if (Den == 0) {
       Num = 0;
     }
     if (sign < 0) {
@@ -198,12 +197,19 @@ public class SVFractionalFormat extends Format {
         Whole = -Whole;
       }
     }
-    return new StringBuffer().append(Whole).append(" ").append(Num).append("/").append(Num).toString();
+    return new StringBuffer().append(Whole).append(" ").append(Num).append("/").append(Den).toString();
   }
 
+  /** This method formats the double in the units specified.
+   *  The usints could be any number but in this current implementation it is
+   *  halves (2), quaters (4), eigths (8) etc
+   */
   private String formatUnit(double f, int units) {
-    //JMH TBD
-    return null;
+    long Whole = (long)f;
+    f -= Whole;
+    long Num = Math.round(f * units);
+
+    return new StringBuffer().append(Whole).append(" ").append(Num).append("/").append(units).toString();
   }
 
   public final String format(double val) {