1 package org.djunits.unit;
2
3 import static org.djunits.unit.unitsystem.UnitSystem.IMPERIAL;
4 import static org.djunits.unit.unitsystem.UnitSystem.MTS;
5 import static org.djunits.unit.unitsystem.UnitSystem.SI_ACCEPTED;
6 import static org.djunits.unit.unitsystem.UnitSystem.SI_BASE;
7 import static org.djunits.unit.unitsystem.UnitSystem.US_CUSTOMARY;
8
9 import org.djunits.unit.unitsystem.UnitSystem;
10
11
12
13
14
15
16
17
18
19
20
21
22 public class MassUnit extends Unit<MassUnit>
23 {
24
25 private static final long serialVersionUID = 20140607L;
26
27
28 public static final MassUnit SI;
29
30
31 public static final MassUnit KILOGRAM;
32
33
34 public static final MassUnit GRAM;
35
36
37 public static final MassUnit POUND;
38
39
40 public static final MassUnit OUNCE;
41
42
43 public static final MassUnit TON_LONG;
44
45
46 public static final MassUnit TON_SHORT;
47
48
49 public static final MassUnit TON_METRIC;
50
51
52 public static final MassUnit TONNE;
53
54
55 public static final MassUnit DALTON;
56
57 static
58 {
59 SI = new MassUnit("MassUnit.kilogram", "MassUnit.kg", SI_BASE);
60 KILOGRAM = SI;
61 GRAM = new MassUnit("MassUnit.gram", "MassUnit.g", SI_BASE, KILOGRAM, 0.001, true);
62 POUND = new MassUnit("MassUnit.pound", "MassUnit.lb", IMPERIAL, KILOGRAM, 0.45359237, true);
63 OUNCE = new MassUnit("MassUnit.ounce", "MassUnit.oz", IMPERIAL, POUND, 1.0 / 16.0, true);
64 TON_LONG = new MassUnit("MassUnit.long_ton", "MassUnit.long_tn", IMPERIAL, POUND, 2240.0, true);
65 TON_SHORT = new MassUnit("MassUnit.short_ton", "MassUnit.sh_tn", US_CUSTOMARY, POUND, 2000.0, true);
66 TON_METRIC = new MassUnit("MassUnit.metric_ton", "MassUnit.t", SI_ACCEPTED, KILOGRAM, 1000.0, true);
67 TONNE = new MassUnit("MassUnit.tonne_(mts)", "MassUnit.t_(mts)", MTS, KILOGRAM, 1000.0, true);
68 DALTON = new MassUnit("MassUnit.dalton", "MassUnit.Da", SI_ACCEPTED, KILOGRAM, 1.6605388628E-27, true);
69 }
70
71
72
73
74
75
76
77 private MassUnit(final String nameKey, final String abbreviationKey, final UnitSystem unitSystem)
78 {
79 super(nameKey, abbreviationKey, unitSystem, true);
80 }
81
82
83
84
85
86
87
88
89
90
91
92 private MassUnit(final String nameOrNameKey, final String abbreviationOrAbbreviationKey,
93 final UnitSystem unitSystem, final MassUnit referenceUnit, final double conversionFactorToReferenceUnit,
94 final boolean standardUnit)
95 {
96 super(nameOrNameKey, abbreviationOrAbbreviationKey, unitSystem, referenceUnit, conversionFactorToReferenceUnit,
97 standardUnit);
98 }
99
100
101
102
103
104
105
106
107
108 public MassUnit(final String name, final String abbreviation, final UnitSystem unitSystem,
109 final MassUnit referenceUnit, final double conversionFactorToReferenceUnit)
110 {
111 this(name, abbreviation, unitSystem, referenceUnit, conversionFactorToReferenceUnit, false);
112 }
113
114
115 @Override
116 public final MassUnit getStandardUnit()
117 {
118 return KILOGRAM;
119 }
120
121
122 @Override
123 public final String getSICoefficientsString()
124 {
125 return "kg";
126 }
127
128 }