diff --git a/Common/UnitDefinitions/Length.json b/Common/UnitDefinitions/Length.json index ff6ace50bd..22e7394011 100644 --- a/Common/UnitDefinitions/Length.json +++ b/Common/UnitDefinitions/Length.json @@ -14,7 +14,7 @@ }, "FromUnitToBaseFunc": "x", "FromBaseToUnitFunc": "x", - "Prefixes": [ "Nano", "Micro", "Milli", "Centi", "Deci", "Kilo" ], + "Prefixes": [ "Nano", "Micro", "Milli", "Centi", "Deci", "Hecto", "Kilo" ], "Localization": [ { "Culture": "en-US", @@ -23,7 +23,7 @@ { "Culture": "ru-RU", "Abbreviations": [ "м" ], - "AbbreviationsWithPrefixes": [ "нм", "мкм", "мм", "см", "дм", "км" ] + "AbbreviationsWithPrefixes": [ "нм", "мкм", "мм", "см", "дм", "гм", "км" ] } ] }, diff --git a/Common/UnitDefinitions/Volume.json b/Common/UnitDefinitions/Volume.json index 9b68dfd7e8..e6bf166ffd 100644 --- a/Common/UnitDefinitions/Volume.json +++ b/Common/UnitDefinitions/Volume.json @@ -1,4 +1,4 @@ -{ +{ "Name": "Volume", "BaseUnit": "CubicMeter", "XmlDoc": "Volume is the quantity of three-dimensional space enclosed by some closed boundary, for example, the space that a substance (solid, liquid, gas, or plasma) or shape occupies or contains.[1] Volume is often quantified numerically using the SI derived unit, the cubic metre. The volume of a container is generally understood to be the capacity of the container, i. e. the amount of fluid (gas or liquid) that the container could hold, rather than the amount of space the container itself displaces.", @@ -58,6 +58,25 @@ ] }, { + "SingularName": "CubicHectometer", + "PluralName": "CubicHectometers", + "BaseUnits": { + "L": "Hectometer" + }, + "FromUnitToBaseFunc": "x*1e6", + "FromBaseToUnitFunc": "x/1e6", + "Localization": [ + { + "Culture": "en-US", + "Abbreviations": [ "hm³" ] + }, + { + "Culture": "ru-RU", + "Abbreviations": [ "гм³" ] + } + ] + }, + { "SingularName": "CubicDecimeter", "PluralName": "CubicDecimeters", "FromUnitToBaseFunc": "x/1e3", diff --git a/UnitsNet.Tests/CustomCode/LengthTests.cs b/UnitsNet.Tests/CustomCode/LengthTests.cs index 545d4a14e7..4d0f24f7aa 100644 --- a/UnitsNet.Tests/CustomCode/LengthTests.cs +++ b/UnitsNet.Tests/CustomCode/LengthTests.cs @@ -21,6 +21,8 @@ public class LengthTests : LengthTestsBase protected override double FeetInOneMeter => 3.28084; + protected override double HectometersInOneMeter => 1E-2; + protected override double TwipsInOneMeter => 56692.913386; protected override double UsSurveyFeetInOneMeter => 3.280833333333333; diff --git a/UnitsNet.Tests/CustomCode/VolumeTests.cs b/UnitsNet.Tests/CustomCode/VolumeTests.cs index 0924a4e1a1..ad6c2dca04 100644 --- a/UnitsNet.Tests/CustomCode/VolumeTests.cs +++ b/UnitsNet.Tests/CustomCode/VolumeTests.cs @@ -20,6 +20,8 @@ public class VolumeTests : VolumeTestsBase protected override double CubicKilometersInOneCubicMeter => 1E-9; + protected override double CubicHectometersInOneCubicMeter => 1E-6; + protected override double CubicMetersInOneCubicMeter => 1; protected override double CubicMilesInOneCubicMeter => 2.399127585789277e-10; diff --git a/UnitsNet.Tests/GeneratedCode/LengthTestsBase.g.cs b/UnitsNet.Tests/GeneratedCode/LengthTestsBase.g.cs index 1230de4251..abf1a6b7e6 100644 --- a/UnitsNet.Tests/GeneratedCode/LengthTestsBase.g.cs +++ b/UnitsNet.Tests/GeneratedCode/LengthTestsBase.g.cs @@ -40,6 +40,7 @@ public abstract partial class LengthTestsBase protected abstract double DtpPointsInOneMeter { get; } protected abstract double FathomsInOneMeter { get; } protected abstract double FeetInOneMeter { get; } + protected abstract double HectometersInOneMeter { get; } protected abstract double HandsInOneMeter { get; } protected abstract double InchesInOneMeter { get; } protected abstract double KilometersInOneMeter { get; } @@ -65,6 +66,7 @@ public abstract partial class LengthTestsBase protected virtual double DtpPointsTolerance { get { return 1e-5; } } protected virtual double FathomsTolerance { get { return 1e-5; } } protected virtual double FeetTolerance { get { return 1e-5; } } + protected virtual double HectometersTolerance { get { return 1e-5; } } protected virtual double HandsTolerance { get { return 1e-5; } } protected virtual double InchesTolerance { get { return 1e-5; } } protected virtual double KilometersTolerance { get { return 1e-5; } } @@ -113,6 +115,7 @@ public void MeterToLengthUnits() AssertEx.EqualTolerance(DtpPointsInOneMeter, meter.DtpPoints, DtpPointsTolerance); AssertEx.EqualTolerance(FathomsInOneMeter, meter.Fathoms, FathomsTolerance); AssertEx.EqualTolerance(FeetInOneMeter, meter.Feet, FeetTolerance); + AssertEx.EqualTolerance(HectometersInOneMeter, meter.Hectometers, HectometersTolerance); AssertEx.EqualTolerance(HandsInOneMeter, meter.Hands, HandsTolerance); AssertEx.EqualTolerance(InchesInOneMeter, meter.Inches, InchesTolerance); AssertEx.EqualTolerance(KilometersInOneMeter, meter.Kilometers, KilometersTolerance); @@ -141,6 +144,7 @@ public void FromValueAndUnit() AssertEx.EqualTolerance(1, Length.From(1, LengthUnit.DtpPoint).DtpPoints, DtpPointsTolerance); AssertEx.EqualTolerance(1, Length.From(1, LengthUnit.Fathom).Fathoms, FathomsTolerance); AssertEx.EqualTolerance(1, Length.From(1, LengthUnit.Foot).Feet, FeetTolerance); + AssertEx.EqualTolerance(1, Length.From(1, LengthUnit.Hectometer).Hectometers, HectometersTolerance); AssertEx.EqualTolerance(1, Length.From(1, LengthUnit.Hand).Hands, HandsTolerance); AssertEx.EqualTolerance(1, Length.From(1, LengthUnit.Inch).Inches, InchesTolerance); AssertEx.EqualTolerance(1, Length.From(1, LengthUnit.Kilometer).Kilometers, KilometersTolerance); @@ -183,6 +187,7 @@ public void As() AssertEx.EqualTolerance(DtpPointsInOneMeter, meter.As(LengthUnit.DtpPoint), DtpPointsTolerance); AssertEx.EqualTolerance(FathomsInOneMeter, meter.As(LengthUnit.Fathom), FathomsTolerance); AssertEx.EqualTolerance(FeetInOneMeter, meter.As(LengthUnit.Foot), FeetTolerance); + AssertEx.EqualTolerance(HectometersInOneMeter, meter.As(LengthUnit.Hectometer), HectometersTolerance); AssertEx.EqualTolerance(HandsInOneMeter, meter.As(LengthUnit.Hand), HandsTolerance); AssertEx.EqualTolerance(InchesInOneMeter, meter.As(LengthUnit.Inch), InchesTolerance); AssertEx.EqualTolerance(KilometersInOneMeter, meter.As(LengthUnit.Kilometer), KilometersTolerance); @@ -231,6 +236,10 @@ public void ToUnit() AssertEx.EqualTolerance(FeetInOneMeter, (double)footQuantity.Value, FeetTolerance); Assert.Equal(LengthUnit.Foot, footQuantity.Unit); + var hectometerQuantity = meter.ToUnit(LengthUnit.Hectometer); + AssertEx.EqualTolerance(HectometersInOneMeter, (double)hectometerQuantity.Value, HectometersTolerance); + Assert.Equal(LengthUnit.Hectometer, hectometerQuantity.Unit); + var handQuantity = meter.ToUnit(LengthUnit.Hand); AssertEx.EqualTolerance(HandsInOneMeter, (double)handQuantity.Value, HandsTolerance); Assert.Equal(LengthUnit.Hand, handQuantity.Unit); @@ -310,6 +319,7 @@ public void ConversionRoundTrip() AssertEx.EqualTolerance(1, Length.FromDtpPoints(meter.DtpPoints).Meters, DtpPointsTolerance); AssertEx.EqualTolerance(1, Length.FromFathoms(meter.Fathoms).Meters, FathomsTolerance); AssertEx.EqualTolerance(1, Length.FromFeet(meter.Feet).Meters, FeetTolerance); + AssertEx.EqualTolerance(1, Length.FromHectometers(meter.Hectometers).Meters, HectometersTolerance); AssertEx.EqualTolerance(1, Length.FromHands(meter.Hands).Meters, HandsTolerance); AssertEx.EqualTolerance(1, Length.FromInches(meter.Inches).Meters, InchesTolerance); AssertEx.EqualTolerance(1, Length.FromKilometers(meter.Kilometers).Meters, KilometersTolerance); diff --git a/UnitsNet.Tests/QuantityIFormattableTests.cs b/UnitsNet.Tests/QuantityIFormattableTests.cs index 387d05cf26..3aaaf4ccbf 100644 --- a/UnitsNet.Tests/QuantityIFormattableTests.cs +++ b/UnitsNet.Tests/QuantityIFormattableTests.cs @@ -2,6 +2,7 @@ // Copyright 2013 Andreas Gullberg Larsen (andreas.larsen84@gmail.com). Maintained at https://github.com/angularsen/UnitsNet. using System; +using System.Globalization; using Xunit; namespace UnitsNet.Tests @@ -61,7 +62,7 @@ public void QFormatEqualsQuantityName() [InlineData("s6", "1.234568 ft")] public void SFormatEqualsSignificantDigits(string sFormatString, string expected) { - Assert.Equal(expected, length.ToString(sFormatString)); + Assert.Equal(expected, length.ToString(sFormatString, NumberFormatInfo.InvariantInfo)); } [Fact] diff --git a/UnitsNet.Tests/QuantityTest.cs b/UnitsNet.Tests/QuantityTest.cs index 215b22e7ba..296a01eb68 100644 --- a/UnitsNet.Tests/QuantityTest.cs +++ b/UnitsNet.Tests/QuantityTest.cs @@ -165,7 +165,7 @@ public void TryParse_GivenValueAndUnit_ReturnsQuantity() Assert.True(Quantity.TryParse(typeof(Mass), "03t", out IQuantity parsedMass)); Assert.Equal(Mass.FromTonnes(3), parsedMass); - Assert.True(Quantity.TryParse(typeof(Pressure), "3.0 Mbar", out IQuantity parsedPressure)); + Assert.True(Quantity.TryParse(NumberFormatInfo.InvariantInfo, typeof(Pressure), "3.0 Mbar", out IQuantity parsedPressure)); Assert.Equal(Pressure.FromMegabars(3), parsedPressure); } diff --git a/UnitsNet.WindowsRuntimeComponent/GeneratedCode/Quantities/Length.WindowsRuntimeComponent.g.cs b/UnitsNet.WindowsRuntimeComponent/GeneratedCode/Quantities/Length.WindowsRuntimeComponent.g.cs index f1b58ce33d..cdbc90d14b 100644 --- a/UnitsNet.WindowsRuntimeComponent/GeneratedCode/Quantities/Length.WindowsRuntimeComponent.g.cs +++ b/UnitsNet.WindowsRuntimeComponent/GeneratedCode/Quantities/Length.WindowsRuntimeComponent.g.cs @@ -186,6 +186,10 @@ private Length(double numericValue, LengthUnit unit) public double Feet => As(LengthUnit.Foot); /// + /// Get Length in Hectometers. + /// + public double Hectometers => As(LengthUnit.Hectometer); + /// Get Length in Hands. /// public double Hands => As(LengthUnit.Hand); @@ -361,6 +365,15 @@ public static Length FromFeet(double feet) return new Length(value, LengthUnit.Foot); } /// + /// Get Length from Hectometers. + /// + /// If value is NaN or Infinity. + [Windows.Foundation.Metadata.DefaultOverload] + public static Length FromHectometers(double hectometers) + { + double value = (double)hectometers; + return new Length(value, LengthUnit.Hectometer); + } /// Get Length from Hands. /// /// If value is NaN or Infinity. @@ -827,6 +840,7 @@ private double AsBaseUnit() case LengthUnit.DtpPoint: return (_value/72)*2.54e-2; case LengthUnit.Fathom: return _value*1.8288; case LengthUnit.Foot: return _value*0.3048; + case LengthUnit.Hectometer: return (_value) * 1e2d; case LengthUnit.Hand: return _value * 1.016e-1; case LengthUnit.Inch: return _value*2.54e-2; case LengthUnit.Kilometer: return (_value) * 1e3d; @@ -864,6 +878,7 @@ private double AsBaseNumericType(LengthUnit unit) case LengthUnit.DtpPoint: return (baseUnitValue/2.54e-2)*72; case LengthUnit.Fathom: return baseUnitValue/1.8288; case LengthUnit.Foot: return baseUnitValue/0.3048; + case LengthUnit.Hectometer: return (baseUnitValue) / 1e2d; case LengthUnit.Hand: return baseUnitValue / 1.016e-1; case LengthUnit.Inch: return baseUnitValue/2.54e-2; case LengthUnit.Kilometer: return (baseUnitValue) / 1e3d; diff --git a/UnitsNet.WindowsRuntimeComponent/GeneratedCode/Quantities/Volume.WindowsRuntimeComponent.g.cs b/UnitsNet.WindowsRuntimeComponent/GeneratedCode/Quantities/Volume.WindowsRuntimeComponent.g.cs index d5952d6772..d8bb4837c6 100644 --- a/UnitsNet.WindowsRuntimeComponent/GeneratedCode/Quantities/Volume.WindowsRuntimeComponent.g.cs +++ b/UnitsNet.WindowsRuntimeComponent/GeneratedCode/Quantities/Volume.WindowsRuntimeComponent.g.cs @@ -185,6 +185,11 @@ private Volume(double numericValue, VolumeUnit unit) /// public double CubicFeet => As(VolumeUnit.CubicFoot); + /// + /// Get Volume in CubicHectometers. + /// + public double CubicHectometers => As(VolumeUnit.CubicHectometer); + /// /// Get Volume in CubicInches. /// @@ -476,6 +481,16 @@ public static Volume FromCubicFeet(double cubicfeet) return new Volume(value, VolumeUnit.CubicFoot); } /// + /// Get Volume from CubicHectometers. + /// + /// If value is NaN or Infinity. + [Windows.Foundation.Metadata.DefaultOverload] + public static Volume FromCubicHectometers(double cubichectometers) + { + double value = (double) cubichectometers; + return new Volume(value, VolumeUnit.CubicHectometer); + } + /// /// Get Volume from CubicInches. /// /// If value is NaN or Infinity. @@ -1172,6 +1187,7 @@ private double AsBaseUnit() case VolumeUnit.CubicCentimeter: return _value/1e6; case VolumeUnit.CubicDecimeter: return _value/1e3; case VolumeUnit.CubicFoot: return _value*0.0283168; + case VolumeUnit.CubicHectometer: return _value*1e6; case VolumeUnit.CubicInch: return _value*1.6387*1e-5; case VolumeUnit.CubicKilometer: return _value*1e9; case VolumeUnit.CubicMeter: return _value; @@ -1232,6 +1248,7 @@ private double AsBaseNumericType(VolumeUnit unit) case VolumeUnit.CubicCentimeter: return baseUnitValue*1e6; case VolumeUnit.CubicDecimeter: return baseUnitValue*1e3; case VolumeUnit.CubicFoot: return baseUnitValue/0.0283168; + case VolumeUnit.CubicHectometer: return baseUnitValue/1e6; case VolumeUnit.CubicInch: return baseUnitValue/(1.6387*1e-5); case VolumeUnit.CubicKilometer: return baseUnitValue/1e9; case VolumeUnit.CubicMeter: return baseUnitValue; diff --git a/UnitsNet.WindowsRuntimeComponent/GeneratedCode/UnitAbbreviationsCache.g.cs b/UnitsNet.WindowsRuntimeComponent/GeneratedCode/UnitAbbreviationsCache.g.cs index c74eab7ebf..3c53877870 100644 --- a/UnitsNet.WindowsRuntimeComponent/GeneratedCode/UnitAbbreviationsCache.g.cs +++ b/UnitsNet.WindowsRuntimeComponent/GeneratedCode/UnitAbbreviationsCache.g.cs @@ -489,6 +489,8 @@ private static readonly (string CultureName, Type UnitType, int UnitValue, strin ("en-US", typeof(LengthUnit), (int)LengthUnit.Fathom, new string[]{"fathom"}), ("en-US", typeof(LengthUnit), (int)LengthUnit.Foot, new string[]{"ft", "'", "′"}), ("ru-RU", typeof(LengthUnit), (int)LengthUnit.Foot, new string[]{"фут"}), + ("en-US", typeof(LengthUnit), (int)LengthUnit.Hectometer, new string[]{"hm"}), + ("ru-RU", typeof(LengthUnit), (int)LengthUnit.Hectometer, new string[]{"гм"}), ("en-US", typeof(LengthUnit), (int)LengthUnit.Hand, new string[]{"h", "hh"}), ("en-US", typeof(LengthUnit), (int)LengthUnit.Inch, new string[]{"in", "\"", "″"}), ("ru-RU", typeof(LengthUnit), (int)LengthUnit.Inch, new string[]{"дюйм"}), @@ -1010,6 +1012,8 @@ private static readonly (string CultureName, Type UnitType, int UnitValue, strin ("ru-RU", typeof(VolumeUnit), (int)VolumeUnit.CubicDecimeter, new string[]{"дм³"}), ("en-US", typeof(VolumeUnit), (int)VolumeUnit.CubicFoot, new string[]{"ft³"}), ("ru-RU", typeof(VolumeUnit), (int)VolumeUnit.CubicFoot, new string[]{"фут³"}), + ("en-US", typeof(VolumeUnit), (int)VolumeUnit.CubicHectometer, new string[]{"hm³"}), + ("ru-RU", typeof(VolumeUnit), (int)VolumeUnit.CubicHectometer, new string[]{"гм³"}), ("en-US", typeof(VolumeUnit), (int)VolumeUnit.CubicInch, new string[]{"in³"}), ("ru-RU", typeof(VolumeUnit), (int)VolumeUnit.CubicInch, new string[]{"дюйм³"}), ("en-US", typeof(VolumeUnit), (int)VolumeUnit.CubicKilometer, new string[]{"km³"}), diff --git a/UnitsNet.WindowsRuntimeComponent/GeneratedCode/Units/LengthUnit.g.cs b/UnitsNet.WindowsRuntimeComponent/GeneratedCode/Units/LengthUnit.g.cs index 04d4d92e0d..044bc8c363 100644 --- a/UnitsNet.WindowsRuntimeComponent/GeneratedCode/Units/LengthUnit.g.cs +++ b/UnitsNet.WindowsRuntimeComponent/GeneratedCode/Units/LengthUnit.g.cs @@ -32,6 +32,7 @@ public enum LengthUnit DtpPoint, Fathom, Foot, + Hectometer, Hand, Inch, Kilometer, diff --git a/UnitsNet.WindowsRuntimeComponent/GeneratedCode/Units/VolumeUnit.g.cs b/UnitsNet.WindowsRuntimeComponent/GeneratedCode/Units/VolumeUnit.g.cs index 475f97db80..9dbbc08cfe 100644 --- a/UnitsNet.WindowsRuntimeComponent/GeneratedCode/Units/VolumeUnit.g.cs +++ b/UnitsNet.WindowsRuntimeComponent/GeneratedCode/Units/VolumeUnit.g.cs @@ -32,6 +32,7 @@ public enum VolumeUnit CubicCentimeter, CubicDecimeter, CubicFoot, + CubicHectometer, CubicInch, CubicKilometer, CubicMeter, diff --git a/UnitsNet/GeneratedCode/Quantities/Length.NetFramework.g.cs b/UnitsNet/GeneratedCode/Quantities/Length.NetFramework.g.cs index 1272736677..e2235152eb 100644 --- a/UnitsNet/GeneratedCode/Quantities/Length.NetFramework.g.cs +++ b/UnitsNet/GeneratedCode/Quantities/Length.NetFramework.g.cs @@ -56,6 +56,7 @@ static Length() new UnitInfo(LengthUnit.DtpPoint, new BaseUnits(length: LengthUnit.DtpPoint)), new UnitInfo(LengthUnit.Fathom, new BaseUnits(length: LengthUnit.Fathom)), new UnitInfo(LengthUnit.Foot, new BaseUnits(length: LengthUnit.Foot)), + new UnitInfo(LengthUnit.Hectometer, BaseUnits.Undefined), new UnitInfo(LengthUnit.Hand, new BaseUnits(length: LengthUnit.Hand)), new UnitInfo(LengthUnit.Inch, new BaseUnits(length: LengthUnit.Inch)), new UnitInfo(LengthUnit.Kilometer, BaseUnits.Undefined), @@ -213,6 +214,10 @@ public Length(double numericValue, UnitSystem unitSystem) public double Feet => As(LengthUnit.Foot); /// + /// Get Length in Hectometers. + /// + public double Hectometers => As(LengthUnit.Hectometer); + /// Get Length in Hands. /// public double Hands => As(LengthUnit.Hand); @@ -381,6 +386,13 @@ public static Length FromFeet(QuantityValue feet) return new Length(value, LengthUnit.Foot); } /// + /// Get Length from Hectometers. + /// + /// If value is NaN or Infinity. + public static Length FromHectometers(QuantityValue hectometers) + { + double value = (double) hectometers; + return new Length(value, LengthUnit.Hectometer); /// Get Length from Hands. /// /// If value is NaN or Infinity. @@ -958,6 +970,7 @@ private double GetValueInBaseUnit() case LengthUnit.DtpPoint: return (_value/72)*2.54e-2; case LengthUnit.Fathom: return _value*1.8288; case LengthUnit.Foot: return _value*0.3048; + case LengthUnit.Hectometer: return (_value) * 1e2d; case LengthUnit.Hand: return _value * 1.016e-1; case LengthUnit.Inch: return _value*2.54e-2; case LengthUnit.Kilometer: return (_value) * 1e3d; @@ -995,6 +1008,7 @@ private double GetValueAs(LengthUnit unit) case LengthUnit.DtpPoint: return (baseUnitValue/2.54e-2)*72; case LengthUnit.Fathom: return baseUnitValue/1.8288; case LengthUnit.Foot: return baseUnitValue/0.3048; + case LengthUnit.Hectometer: return (baseUnitValue) / 1e2d; case LengthUnit.Hand: return baseUnitValue / 1.016e-1; case LengthUnit.Inch: return baseUnitValue/2.54e-2; case LengthUnit.Kilometer: return (baseUnitValue) / 1e3d; diff --git a/UnitsNet/GeneratedCode/Quantities/Volume.NetFramework.g.cs b/UnitsNet/GeneratedCode/Quantities/Volume.NetFramework.g.cs index a9acad92c9..875f281885 100644 --- a/UnitsNet/GeneratedCode/Quantities/Volume.NetFramework.g.cs +++ b/UnitsNet/GeneratedCode/Quantities/Volume.NetFramework.g.cs @@ -56,6 +56,7 @@ static Volume() new UnitInfo(VolumeUnit.CubicCentimeter, BaseUnits.Undefined), new UnitInfo(VolumeUnit.CubicDecimeter, BaseUnits.Undefined), new UnitInfo(VolumeUnit.CubicFoot, BaseUnits.Undefined), + new UnitInfo(VolumeUnit.CubicHectometer, new BaseUnits(length: LengthUnit.Hectometer)), new UnitInfo(VolumeUnit.CubicInch, BaseUnits.Undefined), new UnitInfo(VolumeUnit.CubicKilometer, BaseUnits.Undefined), new UnitInfo(VolumeUnit.CubicMeter, BaseUnits.Undefined), @@ -235,6 +236,11 @@ public Volume(double numericValue, UnitSystem unitSystem) /// public double CubicFeet => As(VolumeUnit.CubicFoot); + /// + /// Get Volume in CubicHectometers. + /// + public double CubicHectometers => As(VolumeUnit.CubicHectometer); + /// /// Get Volume in CubicInches. /// @@ -519,6 +525,15 @@ public static Volume FromCubicFeet(QuantityValue cubicfeet) return new Volume(value, VolumeUnit.CubicFoot); } /// + /// Get Volume from CubicHectometers. + /// + /// If value is NaN or Infinity. + public static Volume FromCubicHectometers(QuantityValue cubichectometers) + { + double value = (double) cubichectometers; + return new Volume(value, VolumeUnit.CubicHectometer); + } + /// /// Get Volume from CubicInches. /// /// If value is NaN or Infinity. @@ -1303,6 +1318,7 @@ private double GetValueInBaseUnit() case VolumeUnit.CubicCentimeter: return _value/1e6; case VolumeUnit.CubicDecimeter: return _value/1e3; case VolumeUnit.CubicFoot: return _value*0.0283168; + case VolumeUnit.CubicHectometer: return _value*1e6; case VolumeUnit.CubicInch: return _value*1.6387*1e-5; case VolumeUnit.CubicKilometer: return _value*1e9; case VolumeUnit.CubicMeter: return _value; @@ -1363,6 +1379,7 @@ private double GetValueAs(VolumeUnit unit) case VolumeUnit.CubicCentimeter: return baseUnitValue*1e6; case VolumeUnit.CubicDecimeter: return baseUnitValue*1e3; case VolumeUnit.CubicFoot: return baseUnitValue/0.0283168; + case VolumeUnit.CubicHectometer: return baseUnitValue/1e6; case VolumeUnit.CubicInch: return baseUnitValue/(1.6387*1e-5); case VolumeUnit.CubicKilometer: return baseUnitValue/1e9; case VolumeUnit.CubicMeter: return baseUnitValue; diff --git a/UnitsNet/GeneratedCode/UnitAbbreviationsCache.g.cs b/UnitsNet/GeneratedCode/UnitAbbreviationsCache.g.cs index 0ad6a83ba0..b814964a68 100644 --- a/UnitsNet/GeneratedCode/UnitAbbreviationsCache.g.cs +++ b/UnitsNet/GeneratedCode/UnitAbbreviationsCache.g.cs @@ -489,6 +489,8 @@ private static readonly (string CultureName, Type UnitType, int UnitValue, strin ("en-US", typeof(LengthUnit), (int)LengthUnit.Fathom, new string[]{"fathom"}), ("en-US", typeof(LengthUnit), (int)LengthUnit.Foot, new string[]{"ft", "'", "′"}), ("ru-RU", typeof(LengthUnit), (int)LengthUnit.Foot, new string[]{"фут"}), + ("en-US", typeof(LengthUnit), (int)LengthUnit.Hectometer, new string[]{"hm"}), + ("ru-RU", typeof(LengthUnit), (int)LengthUnit.Hectometer, new string[]{"гм"}), ("en-US", typeof(LengthUnit), (int)LengthUnit.Hand, new string[]{"h", "hh"}), ("en-US", typeof(LengthUnit), (int)LengthUnit.Inch, new string[]{"in", "\"", "″"}), ("ru-RU", typeof(LengthUnit), (int)LengthUnit.Inch, new string[]{"дюйм"}), @@ -1010,6 +1012,8 @@ private static readonly (string CultureName, Type UnitType, int UnitValue, strin ("ru-RU", typeof(VolumeUnit), (int)VolumeUnit.CubicDecimeter, new string[]{"дм³"}), ("en-US", typeof(VolumeUnit), (int)VolumeUnit.CubicFoot, new string[]{"ft³"}), ("ru-RU", typeof(VolumeUnit), (int)VolumeUnit.CubicFoot, new string[]{"фут³"}), + ("en-US", typeof(VolumeUnit), (int)VolumeUnit.CubicHectometer, new string[]{"hm³"}), + ("ru-RU", typeof(VolumeUnit), (int)VolumeUnit.CubicHectometer, new string[]{"гм³"}), ("en-US", typeof(VolumeUnit), (int)VolumeUnit.CubicInch, new string[]{"in³"}), ("ru-RU", typeof(VolumeUnit), (int)VolumeUnit.CubicInch, new string[]{"дюйм³"}), ("en-US", typeof(VolumeUnit), (int)VolumeUnit.CubicKilometer, new string[]{"km³"}), diff --git a/UnitsNet/GeneratedCode/Units/LengthUnit.g.cs b/UnitsNet/GeneratedCode/Units/LengthUnit.g.cs index 04d4d92e0d..044bc8c363 100644 --- a/UnitsNet/GeneratedCode/Units/LengthUnit.g.cs +++ b/UnitsNet/GeneratedCode/Units/LengthUnit.g.cs @@ -32,6 +32,7 @@ public enum LengthUnit DtpPoint, Fathom, Foot, + Hectometer, Hand, Inch, Kilometer, diff --git a/UnitsNet/GeneratedCode/Units/VolumeUnit.g.cs b/UnitsNet/GeneratedCode/Units/VolumeUnit.g.cs index 475f97db80..9dbbc08cfe 100644 --- a/UnitsNet/GeneratedCode/Units/VolumeUnit.g.cs +++ b/UnitsNet/GeneratedCode/Units/VolumeUnit.g.cs @@ -32,6 +32,7 @@ public enum VolumeUnit CubicCentimeter, CubicDecimeter, CubicFoot, + CubicHectometer, CubicInch, CubicKilometer, CubicMeter,