Temperature constructor

Temperature({
  1. int significantFigures = 10,
  2. bool removeTrailingZeros = true,
  3. dynamic name,
})

Class for temperature conversions, e.g. if you want to convert 1 celsius in kelvin:

var temperature = Temperature(removeTrailingZeros: false);
temperature.convert(Unit(TEMPERATURE.celsius, value: 1));
print(TEMPERATURE.kelvin);

Implementation

Temperature({this.significantFigures = 10, this.removeTrailingZeros = true, name}) {
  size = TEMPERATURE.values.length;
  this.name = name ?? PROPERTY.temperature;
  for (TEMPERATURE val in TEMPERATURE.values) {
    unitList.add(Unit(val, symbol: mapSymbols[val]));
  }
  unitConversion = Node(name: TEMPERATURE.fahrenheit, leafNodes: [
    Node(coefficientProduct: 1.8, coefficientSum: 32.0, name: TEMPERATURE.celsius, leafNodes: [
      Node(
        coefficientSum: -273.15,
        name: TEMPERATURE.kelvin,
      ),
      Node(
        coefficientProduct: 5 / 4,
        name: TEMPERATURE.reamur,
      ),
      Node(
        coefficientProduct: 40 / 21,
        coefficientSum: -100 / 7,
        name: TEMPERATURE.romer,
      ),
      Node(
        coefficientProduct: -2 / 3,
        coefficientSum: 100,
        name: TEMPERATURE.delisle,
      ),
    ]),
    Node(
      coefficientSum: -459.67,
      name: TEMPERATURE.rankine,
    ),
  ]);
}