Power constructor

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

Class for power conversions, e.g. if you want to convert 1 kilowatt in european horse power:

var power = Power(removeTrailingZeros: false);
power.convert(Unit(POWER.kilowatt, value: 1));
print(POWER.european_horse_power);

Implementation

Power({this.significantFigures = 10, this.removeTrailingZeros = true, name}) {
  size = POWER.values.length;
  this.name = name ?? PROPERTY.power;
  for (POWER val in POWER.values) {
    unitList.add(Unit(val, symbol: mapSymbols[val]));
  }
  unitConversion = Node(name: POWER.watt, leafNodes: [
    Node(
      coefficientProduct: 1e-3,
      name: POWER.milliwatt,
    ),
    Node(
      coefficientProduct: 1e3,
      name: POWER.kilowatt,
    ),
    Node(
      coefficientProduct: 1e6,
      name: POWER.megawatt,
    ),
    Node(
      coefficientProduct: 1e9,
      name: POWER.gigawatt,
    ),
    Node(
      coefficientProduct: 735.49875,
      name: POWER.europeanHorsePower,
    ),
    Node(
      coefficientProduct: 745.69987158,
      name: POWER.imperialHorsePower,
    ),
  ]);
}