X-Git-Url: https://gerrit.simantics.org/r/gitweb?a=blobdiff_plain;f=bundles%2Forg.simantics.datatypes.ontology%2Fsrc%2Forg%2Fsimantics%2Fdatatypes%2FSIGenerator.java;h=6d2d44cd217f6f94c95741257d80899c6b475b9a;hb=bf39e5c2544ec6e60d4e68996a6a7d4a84b30950;hp=eb31b0ca0b12cd89939e3b00f146e416bf54ff22;hpb=969bd23cab98a79ca9101af33334000879fb60c5;p=simantics%2Fplatform.git diff --git a/bundles/org.simantics.datatypes.ontology/src/org/simantics/datatypes/SIGenerator.java b/bundles/org.simantics.datatypes.ontology/src/org/simantics/datatypes/SIGenerator.java index eb31b0ca0..6d2d44cd2 100644 --- a/bundles/org.simantics.datatypes.ontology/src/org/simantics/datatypes/SIGenerator.java +++ b/bundles/org.simantics.datatypes.ontology/src/org/simantics/datatypes/SIGenerator.java @@ -1,194 +1,194 @@ -package org.simantics.datatypes; - -import java.io.File; -import java.io.PrintStream; -import java.io.UnsupportedEncodingException; -import java.net.MalformedURLException; -import java.net.URL; -import java.net.URLDecoder; -import java.util.ArrayList; - -public class SIGenerator { - - public static class Unit { - - public String name; - public String shorthand; - - public Unit(String name, String shorthand) { - this.name = name; - this.shorthand = shorthand; - } - - public Unit withPrefix(String namePrefix, String shorthandPrefix) { - return new Unit(namePrefix+name, shorthandPrefix+shorthand); - } - - } - - public static final Unit[] baseUnits = { - new Unit("Metre", "m"), - // Easier this way.. - new Unit("gram", "g"), - new Unit("Second", "s"), - new Unit("Ampere", "A"), - new Unit("Kelvin", "K"), - new Unit("Candela", "cd"), - new Unit("Mole", "mol"), - }; - - public static final Unit[] baseUnitsPrefixed = prefix(baseUnits); - - public static final Unit[] derivedUnits = { - new Unit("Hertz", "hz"), - new Unit("Radian", "rad"), - new Unit("Steradian", "sr"), - new Unit("Newton", "N"), - new Unit("Pascal", "Pa"), - new Unit("Joule", "J"), - new Unit("Watt", "W"), - new Unit("Coulomb", "C"), - new Unit("Volt", "V"), - new Unit("Farad", "F"), - new Unit("Ohm", "ohm"), - new Unit("Siemens", "S"), - new Unit("Weber", "Wb"), - new Unit("Tesla", "T"), - new Unit("Henry", "H"), - new Unit("Celsius", "C"), - new Unit("Lumen", "lm"), - new Unit("Lux", "lx"), - new Unit("Becquerel", "Bq"), - new Unit("Gray", "Gy"), - new Unit("Sievert", "Sv"), - new Unit("Katal", "kat") - }; - - public static final Unit[] derivedUnitsPrefixed = prefix(derivedUnits); - - public static final Unit[] scalableCompoundUnits = { - new Unit("gramPerSecond", "g/s"), - new Unit("gramPerLitre", "g/l"), - new Unit("gramPerCubicMetre", "g/m3"), - new Unit("NewtonPerMetre", "N/m"), - new Unit("JoulePerKilogram", "J/kg"), - new Unit("MetrePerSecond", "m/s"), - new Unit("MolePerLitre", "mol/l"), - new Unit("MolePerKilogram", "mol/kg"), - }; - - public static final Unit[] scalableCompoundUnitsPrefixed = prefix(scalableCompoundUnits); - - public static final Unit[] compoundUnits = { - new Unit("SquareMetre", "m2"), - new Unit("CubicMetre", "m3"), - }; - - public static final Unit[] specials = { - new Unit("MassPercentage", "w-%"), - new Unit("Percentage", "%"), - new Unit("Degree", "deg"), - new Unit("Minute", "min"), - new Unit("Hour", "h"), - new Unit("Litre", "l"), - }; - - static Unit[] prefix(Unit[] units) { - ArrayList result = new ArrayList(); - for(Unit unit : units) { - result.add(unit.withPrefix("Tera", "T")); - result.add(unit.withPrefix("Giga", "G")); - result.add(unit.withPrefix("Mega", "M")); - result.add(unit.withPrefix("Kilo", "k")); - result.add(unit.withPrefix("Hecto", "h")); - result.add(unit.withPrefix("", "")); - result.add(unit.withPrefix("Centi", "c")); - result.add(unit.withPrefix("Milli", "m")); - result.add(unit.withPrefix("Micro", "u")); - } - return result.toArray(new Unit[result.size()]); - } - - static void print(PrintStream out, Unit unit) { - out.println("SI." + unit.name + " "); - out.println("DATA = "); - out.println("SI = DATA.SI : L0.Library"); - out.println(" L0.HasResourceClass \"org.simantics.datatypes.SIResource\""); - out.println(""); - out.println("SI.Unit result = new ArrayList(); + for(Unit unit : units) { + result.add(unit.withPrefix("Tera", "T")); + result.add(unit.withPrefix("Giga", "G")); + result.add(unit.withPrefix("Mega", "M")); + result.add(unit.withPrefix("Kilo", "k")); + result.add(unit.withPrefix("Hecto", "h")); + result.add(unit.withPrefix("", "")); + result.add(unit.withPrefix("Centi", "c")); + result.add(unit.withPrefix("Milli", "m")); + result.add(unit.withPrefix("Micro", "u")); + } + return result.toArray(new Unit[result.size()]); + } + + static void print(PrintStream out, Unit unit) { + out.println("SI." + unit.name + " "); + out.println("DATA = "); + out.println("SI = DATA.SI : L0.Library"); + out.println(" L0.HasResourceClass \"org.simantics.datatypes.SIResource\""); + out.println(""); + out.println("SI.Unit