JAL-3032 upgrade to Jmol 14.29.17; clearing of src2 directory
[jalview.git] / src2 / javajs / util / DF.java
diff --git a/src2/javajs/util/DF.java b/src2/javajs/util/DF.java
deleted file mode 100644 (file)
index b5c8717..0000000
+++ /dev/null
@@ -1,174 +0,0 @@
-/* $RCSfile$
- * $Author: hansonr $
- * $Date: 2007-04-26 16:57:51 -0500 (Thu, 26 Apr 2007) $
- * $Revision: 7502 $
- *
- * Some portions of this file have been modified by Robert Hanson hansonr.at.stolaf.edu 2012-2017
- * for use in SwingJS via transpilation into JavaScript using Java2Script.
- *
- * Copyright (C) 2005  The Jmol Development Team
- *
- * Contact: jmol-developers@lists.sf.net
- *
- *  This library is free software; you can redistribute it and/or
- *  modify it under the terms of the GNU Lesser General Public
- *  License as published by the Free Software Foundation; either
- *  version 2.1 of the License, or (at your option) any later version.
- *
- *  This library is distributed in the hope that it will be useful,
- *  but WITHOUT ANY WARRANTY; without even the implied warranty of
- *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
- *  Lesser General Public License for more details.
- *
- *  You should have received a copy of the GNU Lesser General Public
- *  License along with this library; if not, write to the Free Software
- *  Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
- */
-
-package javajs.util;
-
-/**
- * created to remove ambiguities and make a simpler DecimalFormat
- */
-public class DF {
-
-  private final static String[] formattingStrings = { "0", "0.0", "0.00",
-      "0.000", "0.0000", "0.00000", "0.000000", "0.0000000", "0.00000000",
-      "0.000000000" };
-  private final static String zeros = "0000000000000000000000000000000000000000";
-
-  private final static float[] formatAdds = { 0.5f, 0.05f, 0.005f, 0.0005f,
-      0.00005f, 0.000005f, 0.0000005f, 0.00000005f, 0.000000005f, 0.0000000005f };
-
-  private final static Boolean[] useNumberLocalization = new Boolean[] { Boolean.TRUE };
-
-  public static void setUseNumberLocalization(boolean TF) {
-    useNumberLocalization[0] = (TF ? Boolean.TRUE : Boolean.FALSE);
-  }
-
-  public static String formatDecimalDbl(double value, int decimalDigits) {
-    if (decimalDigits == Integer.MAX_VALUE 
-        || value == Double.NEGATIVE_INFINITY
-        || value == Double.POSITIVE_INFINITY 
-        || Double.isNaN(value))
-      return "" + value;
-    return DF.formatDecimal((float) value, decimalDigits);
-  }
-
-  /**
-   * a simple alternative to DecimalFormat (which Java2Script does not have
-   * and which is quite too complex for our use here.)
-   * 
-   * @param value
-   * @param decimalDigits
-   * @return  formatted decimal
-   */
-  public static String formatDecimal(float value, int decimalDigits) {
-    if (decimalDigits == Integer.MAX_VALUE 
-        || value == Float.NEGATIVE_INFINITY || value == Float.POSITIVE_INFINITY || Float.isNaN(value))
-      return "" + value;
-    int n;
-    if (decimalDigits < 0) {
-      decimalDigits = -decimalDigits;
-      if (decimalDigits > formattingStrings.length)
-        decimalDigits = formattingStrings.length;
-      if (value == 0)
-        return formattingStrings[decimalDigits - 1] + "E+0";
-      //scientific notation
-      n = 0;
-      double d;
-      if (Math.abs(value) < 1) {
-        n = 10;
-        d = value * 1e-10;
-      } else {
-        n = -10;
-        d = value * 1e10;
-      }
-      String s = ("" + d).toUpperCase();
-      int i = s.indexOf("E");
-      n = PT.parseInt(s.substring(i + 1)) + n;
-      String sf;
-      if (i < 0) {
-        sf = "" + value;
-      } else {
-        float f = PT.parseFloat(s.substring(0, i));
-        if (f == 10 || f == -10) {
-          //d = 9.99999997465; n = -6 --> 10.00000E-5
-          f /= 10;
-          n += (n < 0 ? 1 : -1);          
-        }
-        sf = formatDecimal(f, decimalDigits - 1);
-      }
-      return sf  + "E" + (n >= 0 ? "+" : "") + n;
-    }
-  
-    if (decimalDigits >= formattingStrings.length)
-      decimalDigits = formattingStrings.length - 1;
-    String s1 = ("" + value).toUpperCase();
-    int pt = s1.indexOf(".");
-    if (pt < 0) // specifically JavaScript "-2" not "-2.0"
-      return s1 + formattingStrings[decimalDigits].substring(1);
-    boolean isNeg = s1.startsWith("-");
-    if (isNeg) {
-      s1 = s1.substring(1);
-      pt--;
-    }
-    int pt1 = s1.indexOf("E-");
-    if (pt1 > 0) {
-      n = PT.parseInt(s1.substring(pt1 + 1));
-      // 3.567E-2
-      // 0.03567
-      s1 = "0." + zeros.substring(0, -n - 1) + s1.substring(0, 1) + s1.substring(2, pt1);
-      pt = 1; 
-    }
-  
-    pt1 = s1.indexOf("E");
-    // 3.5678E+3
-    // 3567.800000000
-    // 1.234E10 %3.8f -> 12340000000.00000000
-    if (pt1 > 0) {
-      n = PT.parseInt(s1.substring(pt1 + 1));
-      s1 = s1.substring(0, 1) + s1.substring(2, pt1) + zeros;
-      s1 = s1.substring(0, n + 1) + "." + s1.substring(n + 1);
-      pt = s1.indexOf(".");
-    } 
-    // "234.345667  len == 10; pt = 3
-    // "  0.0 "  decimalDigits = 1
-    
-    int len = s1.length();
-    int pt2 = decimalDigits + pt + 1;
-    if (pt2 < len && s1.charAt(pt2) >= '5') {
-      return formatDecimal(
-          value + (isNeg ? -1 : 1) * formatAdds[decimalDigits], decimalDigits);
-    }
-  
-    SB sb = SB.newS(s1.substring(0, (decimalDigits == 0 ? pt
-        : ++pt)));
-    for (int i = 0; i < decimalDigits; i++, pt++) {
-      if (pt < len)
-        sb.appendC(s1.charAt(pt));
-      else
-        sb.appendC('0');
-    }
-    s1 = (isNeg ? "-" : "") + sb;
-    return (Boolean.TRUE.equals(useNumberLocalization[0]) ? s1 : s1.replace(',',
-        '.'));
-  }
-
-  /**
-   * an alternative to DecimalFormat "0.#"
-   * 
-   * @param x
-   * @param precision
-   * @return  formatted number 
-   */
-  public static String formatDecimalTrimmed(double x, int precision) {
-    String str = formatDecimalDbl(x, precision);
-    int m = str.length() - 1;
-    char zero = '0';
-    while (m >= 0 && str.charAt(m) == zero)
-      m--;
-    return str.substring(0, m + 1); // 0.##...
-  }
-
-}