From b898593cdffaecea963d871c287ed2d4b5ad6d06 Mon Sep 17 00:00:00 2001 From: Tristan Milnthorp Date: Sun, 3 Mar 2019 20:40:12 -0500 Subject: [PATCH] Adding BaseUnits for a handful of quantities --- Common/UnitDefinitions/AreaDensity.json | 4 +++ .../UnitDefinitions/AreaMomentOfInertia.json | 18 ++++++++++ Common/UnitDefinitions/Capacitance.json | 6 ++++ .../CoefficientOfThermalExpansion.json | 9 +++++ Common/UnitDefinitions/Density.json | 36 +++++++++++++++++++ Common/UnitDefinitions/Force.json | 17 ++++++++- .../Quantities/AreaDensity.NetFramework.g.cs | 2 +- .../AreaMomentOfInertia.NetFramework.g.cs | 12 +++---- .../Quantities/Capacitance.NetFramework.g.cs | 2 +- ...icientOfThermalExpansion.NetFramework.g.cs | 6 ++-- .../Quantities/Density.NetFramework.g.cs | 18 +++++----- .../Quantities/Force.NetFramework.g.cs | 6 ++-- 12 files changed, 112 insertions(+), 24 deletions(-) diff --git a/Common/UnitDefinitions/AreaDensity.json b/Common/UnitDefinitions/AreaDensity.json index aae5aa5bab..2b3623d107 100644 --- a/Common/UnitDefinitions/AreaDensity.json +++ b/Common/UnitDefinitions/AreaDensity.json @@ -10,6 +10,10 @@ { "SingularName": "KilogramPerSquareMeter", "PluralName": "KilogramsPerSquareMeter", + "BaseUnits": { + "L": "Meter", + "M": "Kilogram" + }, "FromUnitToBaseFunc": "x", "FromBaseToUnitFunc": "x", "Localization": [ diff --git a/Common/UnitDefinitions/AreaMomentOfInertia.json b/Common/UnitDefinitions/AreaMomentOfInertia.json index 103a4df985..0e288f8994 100644 --- a/Common/UnitDefinitions/AreaMomentOfInertia.json +++ b/Common/UnitDefinitions/AreaMomentOfInertia.json @@ -9,6 +9,9 @@ { "SingularName": "MeterToTheFourth", "PluralName": "MetersToTheFourth", + "BaseUnits": { + "L": "Meter" + }, "FromUnitToBaseFunc": "x", "FromBaseToUnitFunc": "x", "Localization": [ @@ -21,6 +24,9 @@ { "SingularName": "DecimeterToTheFourth", "PluralName": "DecimetersToTheFourth", + "BaseUnits": { + "L": "Decimeter" + }, "FromUnitToBaseFunc": "x/1e4", "FromBaseToUnitFunc": "x*1e4", "Localization": [ @@ -33,6 +39,9 @@ { "SingularName": "CentimeterToTheFourth", "PluralName": "CentimetersToTheFourth", + "BaseUnits": { + "L": "Centimeter" + }, "FromUnitToBaseFunc": "x/1e8", "FromBaseToUnitFunc": "x*1e8", "Localization": [ @@ -45,6 +54,9 @@ { "SingularName": "MillimeterToTheFourth", "PluralName": "MillimetersToTheFourth", + "BaseUnits": { + "L": "Millimeter" + }, "FromUnitToBaseFunc": "x/1e12", "FromBaseToUnitFunc": "x*1e12", "Localization": [ @@ -57,6 +69,9 @@ { "SingularName": "FootToTheFourth", "PluralName": "FeetToTheFourth", + "BaseUnits": { + "L": "Foot" + }, "FromUnitToBaseFunc": "x*Math.Pow(0.3048, 4)", "FromBaseToUnitFunc": "x/Math.Pow(0.3048, 4)", "Localization": [ @@ -69,6 +84,9 @@ { "SingularName": "InchToTheFourth", "PluralName": "InchesToTheFourth", + "BaseUnits": { + "L": "Inch" + }, "FromUnitToBaseFunc": "x*Math.Pow(2.54e-2, 4)", "FromBaseToUnitFunc": "x/Math.Pow(2.54e-2, 4)", "Localization": [ diff --git a/Common/UnitDefinitions/Capacitance.json b/Common/UnitDefinitions/Capacitance.json index 0a5b10e95b..5d992e9230 100644 --- a/Common/UnitDefinitions/Capacitance.json +++ b/Common/UnitDefinitions/Capacitance.json @@ -13,6 +13,12 @@ { "SingularName": "Farad", "PluralName": "Farads", + "BaseUnits": { + "L": "Meter", + "M": "Kilogram", + "T": "Second", + "I": "Ampere" + }, "FromUnitToBaseFunc": "x", "FromBaseToUnitFunc": "x", "Prefixes": [ "Pico", "Nano", "Micro", "Milli", "Kilo", "Mega" ], diff --git a/Common/UnitDefinitions/CoefficientOfThermalExpansion.json b/Common/UnitDefinitions/CoefficientOfThermalExpansion.json index c944de5a4c..793d9363ae 100644 --- a/Common/UnitDefinitions/CoefficientOfThermalExpansion.json +++ b/Common/UnitDefinitions/CoefficientOfThermalExpansion.json @@ -9,6 +9,9 @@ { "SingularName": "InverseKelvin", "PluralName": "InverseKelvin", + "BaseUnits": { + "Θ": "Kelvin" + }, "FromUnitToBaseFunc": "x", "FromBaseToUnitFunc": "x", "Localization": [ @@ -21,6 +24,9 @@ { "SingularName": "InverseDegreeCelsius", "PluralName": "InverseDegreeCelsius", + "BaseUnits": { + "Θ": "DegreeCelsius" + }, "FromUnitToBaseFunc": "x", "FromBaseToUnitFunc": "x", "Localization": [ @@ -33,6 +39,9 @@ { "SingularName": "InverseDegreeFahrenheit", "PluralName": "InverseDegreeFahrenheit", + "BaseUnits": { + "Θ": "DegreeFahrenheit" + }, "FromUnitToBaseFunc": "x*5/9", "FromBaseToUnitFunc": "x*9/5", "Localization": [ diff --git a/Common/UnitDefinitions/Density.json b/Common/UnitDefinitions/Density.json index 34dc703759..bd6c7c08d4 100644 --- a/Common/UnitDefinitions/Density.json +++ b/Common/UnitDefinitions/Density.json @@ -11,6 +11,10 @@ { "SingularName": "GramPerCubicMillimeter", "PluralName": "GramsPerCubicMillimeter", + "BaseUnits": { + "L": "Millimeter", + "M": "Gram" + }, "FromUnitToBaseFunc": "x/1e-6", "FromBaseToUnitFunc": "x*1e-6", "Prefixes": [ "Kilo" ], @@ -24,6 +28,10 @@ { "SingularName": "GramPerCubicCentimeter", "PluralName": "GramsPerCubicCentimeter", + "BaseUnits": { + "L": "Centimeter", + "M": "Gram" + }, "FromUnitToBaseFunc": "x/1e-3", "FromBaseToUnitFunc": "x*1e-3", "Prefixes": [ "Kilo" ], @@ -37,6 +45,10 @@ { "SingularName": "GramPerCubicMeter", "PluralName": "GramsPerCubicMeter", + "BaseUnits": { + "L": "Meter", + "M": "Gram" + }, "FromUnitToBaseFunc": "x/1e3", "FromBaseToUnitFunc": "x*1e3", "Prefixes": [ "Kilo", "Milli", "Micro" ], @@ -54,6 +66,10 @@ { "SingularName": "PoundPerCubicInch", "PluralName": "PoundsPerCubicInch", + "BaseUnits": { + "L": "Inch", + "M": "Pound" + }, "FromUnitToBaseFunc": "x/3.6127298147753e-5", "FromBaseToUnitFunc": "x*3.6127298147753e-5", "Prefixes": [ "Kilo" ], @@ -68,6 +84,10 @@ { "SingularName": "PoundPerCubicFoot", "PluralName": "PoundsPerCubicFoot", + "BaseUnits": { + "L": "Foot", + "M": "Pound" + }, "FromUnitToBaseFunc": "x/0.062427961", "FromBaseToUnitFunc": "x*0.062427961", "Prefixes": [ "Kilo" ], @@ -82,6 +102,10 @@ { "SingularName": "TonnePerCubicMillimeter", "PluralName": "TonnesPerCubicMillimeter", + "BaseUnits": { + "L": "Millimeter", + "M": "Tonne" + }, "FromUnitToBaseFunc": "x/1e-12", "FromBaseToUnitFunc": "x*1e-12", "Localization": [ @@ -94,6 +118,10 @@ { "SingularName": "TonnePerCubicCentimeter", "PluralName": "TonnesPerCubicCentimeter", + "BaseUnits": { + "L": "Centimeter", + "M": "Tonne" + }, "FromUnitToBaseFunc": "x/1e-9", "FromBaseToUnitFunc": "x*1e-9", "Localization": [ @@ -106,6 +134,10 @@ { "SingularName": "TonnePerCubicMeter", "PluralName": "TonnesPerCubicMeter", + "BaseUnits": { + "L": "Meter", + "M": "Tonne" + }, "FromUnitToBaseFunc": "x/0.001", "FromBaseToUnitFunc": "x*0.001", "Localization": [ @@ -118,6 +150,10 @@ { "SingularName": "SlugPerCubicFoot", "PluralName": "SlugsPerCubicFoot", + "BaseUnits": { + "L": "Foot", + "M": "Slug" + }, "FromUnitToBaseFunc": "x*515.378818", "FromBaseToUnitFunc": "x*0.00194032033", "Localization": [ diff --git a/Common/UnitDefinitions/Force.json b/Common/UnitDefinitions/Force.json index f378fa0528..241f4ff2fc 100644 --- a/Common/UnitDefinitions/Force.json +++ b/Common/UnitDefinitions/Force.json @@ -1,4 +1,4 @@ -{ +{ "Name": "Force", "BaseUnit": "Newton", "XmlDoc": "In physics, a force is any influence that causes an object to undergo a certain change, either concerning its movement, direction, or geometrical construction. In other words, a force can cause an object with mass to change its velocity (which includes to begin moving from a state of rest), i.e., to accelerate, or a flexible object to deform, or both. Force can also be described by intuitive concepts such as a push or a pull. A force has both magnitude and direction, making it a vector quantity. It is measured in the SI unit of newtons and represented by the symbol F.", @@ -11,6 +11,11 @@ { "SingularName": "Dyn", "PluralName": "Dyne", + "BaseUnits": { + "L": "Centimeter", + "M": "Gram", + "T": "Second" + }, "FromUnitToBaseFunc": "x/1e5", "FromBaseToUnitFunc": "x*1e5", "Localization": [ @@ -59,6 +64,11 @@ { "SingularName": "Newton", "PluralName": "Newtons", + "BaseUnits": { + "L": "Meter", + "M": "Kilogram", + "T": "Second" + }, "FromUnitToBaseFunc": "x", "FromBaseToUnitFunc": "x", "Prefixes": [ "Micro", "Milli", "Deca", "Kilo", "Mega" ], @@ -93,6 +103,11 @@ { "SingularName": "Poundal", "PluralName": "Poundals", + "BaseUnits": { + "L": "Foot", + "M": "Pound", + "T": "Second" + }, "FromUnitToBaseFunc": "x*0.13825502798973041652092282466083", "FromBaseToUnitFunc": "x/0.13825502798973041652092282466083", "Localization": [ diff --git a/UnitsNet/GeneratedCode/Quantities/AreaDensity.NetFramework.g.cs b/UnitsNet/GeneratedCode/Quantities/AreaDensity.NetFramework.g.cs index 5bb00408a8..16fdbffbdd 100644 --- a/UnitsNet/GeneratedCode/Quantities/AreaDensity.NetFramework.g.cs +++ b/UnitsNet/GeneratedCode/Quantities/AreaDensity.NetFramework.g.cs @@ -50,7 +50,7 @@ static AreaDensity() Info = new QuantityInfo(QuantityType.AreaDensity, new UnitInfo[] { - new UnitInfo(AreaDensityUnit.KilogramPerSquareMeter, BaseUnits.Undefined), + new UnitInfo(AreaDensityUnit.KilogramPerSquareMeter, new BaseUnits(length: LengthUnit.Meter, mass: MassUnit.Kilogram)), }, BaseUnit, Zero, BaseDimensions); } diff --git a/UnitsNet/GeneratedCode/Quantities/AreaMomentOfInertia.NetFramework.g.cs b/UnitsNet/GeneratedCode/Quantities/AreaMomentOfInertia.NetFramework.g.cs index 45299eddf3..8fc9eefcae 100644 --- a/UnitsNet/GeneratedCode/Quantities/AreaMomentOfInertia.NetFramework.g.cs +++ b/UnitsNet/GeneratedCode/Quantities/AreaMomentOfInertia.NetFramework.g.cs @@ -50,12 +50,12 @@ static AreaMomentOfInertia() Info = new QuantityInfo(QuantityType.AreaMomentOfInertia, new UnitInfo[] { - new UnitInfo(AreaMomentOfInertiaUnit.CentimeterToTheFourth, BaseUnits.Undefined), - new UnitInfo(AreaMomentOfInertiaUnit.DecimeterToTheFourth, BaseUnits.Undefined), - new UnitInfo(AreaMomentOfInertiaUnit.FootToTheFourth, BaseUnits.Undefined), - new UnitInfo(AreaMomentOfInertiaUnit.InchToTheFourth, BaseUnits.Undefined), - new UnitInfo(AreaMomentOfInertiaUnit.MeterToTheFourth, BaseUnits.Undefined), - new UnitInfo(AreaMomentOfInertiaUnit.MillimeterToTheFourth, BaseUnits.Undefined), + new UnitInfo(AreaMomentOfInertiaUnit.CentimeterToTheFourth, new BaseUnits(length: LengthUnit.Centimeter)), + new UnitInfo(AreaMomentOfInertiaUnit.DecimeterToTheFourth, new BaseUnits(length: LengthUnit.Decimeter)), + new UnitInfo(AreaMomentOfInertiaUnit.FootToTheFourth, new BaseUnits(length: LengthUnit.Foot)), + new UnitInfo(AreaMomentOfInertiaUnit.InchToTheFourth, new BaseUnits(length: LengthUnit.Inch)), + new UnitInfo(AreaMomentOfInertiaUnit.MeterToTheFourth, new BaseUnits(length: LengthUnit.Meter)), + new UnitInfo(AreaMomentOfInertiaUnit.MillimeterToTheFourth, new BaseUnits(length: LengthUnit.Millimeter)), }, BaseUnit, Zero, BaseDimensions); } diff --git a/UnitsNet/GeneratedCode/Quantities/Capacitance.NetFramework.g.cs b/UnitsNet/GeneratedCode/Quantities/Capacitance.NetFramework.g.cs index f6011d3287..5d0def6acf 100644 --- a/UnitsNet/GeneratedCode/Quantities/Capacitance.NetFramework.g.cs +++ b/UnitsNet/GeneratedCode/Quantities/Capacitance.NetFramework.g.cs @@ -53,7 +53,7 @@ static Capacitance() Info = new QuantityInfo(QuantityType.Capacitance, new UnitInfo[] { - new UnitInfo(CapacitanceUnit.Farad, BaseUnits.Undefined), + new UnitInfo(CapacitanceUnit.Farad, new BaseUnits(length: LengthUnit.Meter, mass: MassUnit.Kilogram, time: DurationUnit.Second, current: ElectricCurrentUnit.Ampere)), new UnitInfo(CapacitanceUnit.Kilofarad, BaseUnits.Undefined), new UnitInfo(CapacitanceUnit.Megafarad, BaseUnits.Undefined), new UnitInfo(CapacitanceUnit.Microfarad, BaseUnits.Undefined), diff --git a/UnitsNet/GeneratedCode/Quantities/CoefficientOfThermalExpansion.NetFramework.g.cs b/UnitsNet/GeneratedCode/Quantities/CoefficientOfThermalExpansion.NetFramework.g.cs index 6fe65d47f4..7eda09e386 100644 --- a/UnitsNet/GeneratedCode/Quantities/CoefficientOfThermalExpansion.NetFramework.g.cs +++ b/UnitsNet/GeneratedCode/Quantities/CoefficientOfThermalExpansion.NetFramework.g.cs @@ -50,9 +50,9 @@ static CoefficientOfThermalExpansion() Info = new QuantityInfo(QuantityType.CoefficientOfThermalExpansion, new UnitInfo[] { - new UnitInfo(CoefficientOfThermalExpansionUnit.InverseDegreeCelsius, BaseUnits.Undefined), - new UnitInfo(CoefficientOfThermalExpansionUnit.InverseDegreeFahrenheit, BaseUnits.Undefined), - new UnitInfo(CoefficientOfThermalExpansionUnit.InverseKelvin, BaseUnits.Undefined), + new UnitInfo(CoefficientOfThermalExpansionUnit.InverseDegreeCelsius, new BaseUnits(temperature: TemperatureUnit.DegreeCelsius)), + new UnitInfo(CoefficientOfThermalExpansionUnit.InverseDegreeFahrenheit, new BaseUnits(temperature: TemperatureUnit.DegreeFahrenheit)), + new UnitInfo(CoefficientOfThermalExpansionUnit.InverseKelvin, new BaseUnits(temperature: TemperatureUnit.Kelvin)), }, BaseUnit, Zero, BaseDimensions); } diff --git a/UnitsNet/GeneratedCode/Quantities/Density.NetFramework.g.cs b/UnitsNet/GeneratedCode/Quantities/Density.NetFramework.g.cs index 0a1280a34a..b5ba155ed2 100644 --- a/UnitsNet/GeneratedCode/Quantities/Density.NetFramework.g.cs +++ b/UnitsNet/GeneratedCode/Quantities/Density.NetFramework.g.cs @@ -59,9 +59,9 @@ static Density() new UnitInfo(DensityUnit.DecigramPerDeciliter, BaseUnits.Undefined), new UnitInfo(DensityUnit.DecigramPerLiter, BaseUnits.Undefined), new UnitInfo(DensityUnit.DecigramPerMilliliter, BaseUnits.Undefined), - new UnitInfo(DensityUnit.GramPerCubicCentimeter, BaseUnits.Undefined), - new UnitInfo(DensityUnit.GramPerCubicMeter, BaseUnits.Undefined), - new UnitInfo(DensityUnit.GramPerCubicMillimeter, BaseUnits.Undefined), + new UnitInfo(DensityUnit.GramPerCubicCentimeter, new BaseUnits(length: LengthUnit.Centimeter, mass: MassUnit.Gram)), + new UnitInfo(DensityUnit.GramPerCubicMeter, new BaseUnits(length: LengthUnit.Meter, mass: MassUnit.Gram)), + new UnitInfo(DensityUnit.GramPerCubicMillimeter, new BaseUnits(length: LengthUnit.Millimeter, mass: MassUnit.Gram)), new UnitInfo(DensityUnit.GramPerDeciliter, BaseUnits.Undefined), new UnitInfo(DensityUnit.GramPerLiter, BaseUnits.Undefined), new UnitInfo(DensityUnit.GramPerMilliliter, BaseUnits.Undefined), @@ -84,14 +84,14 @@ static Density() new UnitInfo(DensityUnit.PicogramPerDeciliter, BaseUnits.Undefined), new UnitInfo(DensityUnit.PicogramPerLiter, BaseUnits.Undefined), new UnitInfo(DensityUnit.PicogramPerMilliliter, BaseUnits.Undefined), - new UnitInfo(DensityUnit.PoundPerCubicFoot, BaseUnits.Undefined), - new UnitInfo(DensityUnit.PoundPerCubicInch, BaseUnits.Undefined), + new UnitInfo(DensityUnit.PoundPerCubicFoot, new BaseUnits(length: LengthUnit.Foot, mass: MassUnit.Pound)), + new UnitInfo(DensityUnit.PoundPerCubicInch, new BaseUnits(length: LengthUnit.Inch, mass: MassUnit.Pound)), new UnitInfo(DensityUnit.PoundPerImperialGallon, BaseUnits.Undefined), new UnitInfo(DensityUnit.PoundPerUSGallon, BaseUnits.Undefined), - new UnitInfo(DensityUnit.SlugPerCubicFoot, BaseUnits.Undefined), - new UnitInfo(DensityUnit.TonnePerCubicCentimeter, BaseUnits.Undefined), - new UnitInfo(DensityUnit.TonnePerCubicMeter, BaseUnits.Undefined), - new UnitInfo(DensityUnit.TonnePerCubicMillimeter, BaseUnits.Undefined), + new UnitInfo(DensityUnit.SlugPerCubicFoot, new BaseUnits(length: LengthUnit.Foot, mass: MassUnit.Slug)), + new UnitInfo(DensityUnit.TonnePerCubicCentimeter, new BaseUnits(length: LengthUnit.Centimeter, mass: MassUnit.Tonne)), + new UnitInfo(DensityUnit.TonnePerCubicMeter, new BaseUnits(length: LengthUnit.Meter, mass: MassUnit.Tonne)), + new UnitInfo(DensityUnit.TonnePerCubicMillimeter, new BaseUnits(length: LengthUnit.Millimeter, mass: MassUnit.Tonne)), }, BaseUnit, Zero, BaseDimensions); } diff --git a/UnitsNet/GeneratedCode/Quantities/Force.NetFramework.g.cs b/UnitsNet/GeneratedCode/Quantities/Force.NetFramework.g.cs index 0e156e1e6f..7a7fcf039f 100644 --- a/UnitsNet/GeneratedCode/Quantities/Force.NetFramework.g.cs +++ b/UnitsNet/GeneratedCode/Quantities/Force.NetFramework.g.cs @@ -51,16 +51,16 @@ static Force() Info = new QuantityInfo(QuantityType.Force, new UnitInfo[] { new UnitInfo(ForceUnit.Decanewton, BaseUnits.Undefined), - new UnitInfo(ForceUnit.Dyn, BaseUnits.Undefined), + new UnitInfo(ForceUnit.Dyn, new BaseUnits(length: LengthUnit.Centimeter, mass: MassUnit.Gram, time: DurationUnit.Second)), new UnitInfo(ForceUnit.KilogramForce, BaseUnits.Undefined), new UnitInfo(ForceUnit.Kilonewton, BaseUnits.Undefined), new UnitInfo(ForceUnit.KiloPond, BaseUnits.Undefined), new UnitInfo(ForceUnit.Meganewton, BaseUnits.Undefined), new UnitInfo(ForceUnit.Micronewton, BaseUnits.Undefined), new UnitInfo(ForceUnit.Millinewton, BaseUnits.Undefined), - new UnitInfo(ForceUnit.Newton, BaseUnits.Undefined), + new UnitInfo(ForceUnit.Newton, new BaseUnits(length: LengthUnit.Meter, mass: MassUnit.Kilogram, time: DurationUnit.Second)), new UnitInfo(ForceUnit.OunceForce, BaseUnits.Undefined), - new UnitInfo(ForceUnit.Poundal, BaseUnits.Undefined), + new UnitInfo(ForceUnit.Poundal, new BaseUnits(length: LengthUnit.Foot, mass: MassUnit.Pound, time: DurationUnit.Second)), new UnitInfo(ForceUnit.PoundForce, BaseUnits.Undefined), new UnitInfo(ForceUnit.TonneForce, BaseUnits.Undefined), },