diff --git a/UnitsNet.Tests/CustomCode/PressureTests.cs b/UnitsNet.Tests/CustomCode/PressureTests.cs index 34fd57bad3..2fc1082318 100644 --- a/UnitsNet.Tests/CustomCode/PressureTests.cs +++ b/UnitsNet.Tests/CustomCode/PressureTests.cs @@ -52,6 +52,8 @@ public class PressureTests : PressureTestsBase protected override double MetersOfHeadInOnePascal => 0.00010199773339984054; + protected override double MeganewtonsPerSquareMeterInOnePascal => 1E-6; + protected override double NewtonsPerSquareCentimeterInOnePascal => 1E-4; protected override double NewtonsPerSquareMeterInOnePascal => 1; @@ -113,4 +115,4 @@ public void PressureTimesAreaEqualsForce() Assert.Equal(force, Force.FromNewtons(60)); } } -} \ No newline at end of file +} diff --git a/UnitsNet.Tests/GeneratedCode/PressureTestsBase.g.cs b/UnitsNet.Tests/GeneratedCode/PressureTestsBase.g.cs index cf0eabdc8c..678b2d96c8 100644 --- a/UnitsNet.Tests/GeneratedCode/PressureTestsBase.g.cs +++ b/UnitsNet.Tests/GeneratedCode/PressureTestsBase.g.cs @@ -72,6 +72,7 @@ public abstract partial class PressureTestsBase protected abstract double KilopoundsForcePerSquareFootInOnePascal { get; } protected abstract double KilopoundsForcePerSquareInchInOnePascal { get; } protected abstract double MegabarsInOnePascal { get; } + protected abstract double MeganewtonsPerSquareMeterInOnePascal { get; } protected abstract double MegapascalsInOnePascal { get; } protected abstract double MetersOfHeadInOnePascal { get; } protected abstract double MicropascalsInOnePascal { get; } @@ -111,6 +112,7 @@ public abstract partial class PressureTestsBase protected virtual double KilopoundsForcePerSquareFootTolerance { get { return 1e-5; } } protected virtual double KilopoundsForcePerSquareInchTolerance { get { return 1e-5; } } protected virtual double MegabarsTolerance { get { return 1e-5; } } + protected virtual double MeganewtonsPerSquareMeterTolerance { get { return 1e-5; } } protected virtual double MegapascalsTolerance { get { return 1e-5; } } protected virtual double MetersOfHeadTolerance { get { return 1e-5; } } protected virtual double MicropascalsTolerance { get { return 1e-5; } } @@ -154,6 +156,7 @@ public void PascalToPressureUnits() AssertEx.EqualTolerance(KilopoundsForcePerSquareFootInOnePascal, pascal.KilopoundsForcePerSquareFoot, KilopoundsForcePerSquareFootTolerance); AssertEx.EqualTolerance(KilopoundsForcePerSquareInchInOnePascal, pascal.KilopoundsForcePerSquareInch, KilopoundsForcePerSquareInchTolerance); AssertEx.EqualTolerance(MegabarsInOnePascal, pascal.Megabars, MegabarsTolerance); + AssertEx.EqualTolerance(MeganewtonsPerSquareMeterInOnePascal, pascal.MeganewtonsPerSquareMeter, MeganewtonsPerSquareMeterTolerance); AssertEx.EqualTolerance(MegapascalsInOnePascal, pascal.Megapascals, MegapascalsTolerance); AssertEx.EqualTolerance(MetersOfHeadInOnePascal, pascal.MetersOfHead, MetersOfHeadTolerance); AssertEx.EqualTolerance(MicropascalsInOnePascal, pascal.Micropascals, MicropascalsTolerance); @@ -196,6 +199,7 @@ public void FromValueAndUnit() AssertEx.EqualTolerance(1, Pressure.From(1, PressureUnit.KilopoundForcePerSquareFoot).KilopoundsForcePerSquareFoot, KilopoundsForcePerSquareFootTolerance); AssertEx.EqualTolerance(1, Pressure.From(1, PressureUnit.KilopoundForcePerSquareInch).KilopoundsForcePerSquareInch, KilopoundsForcePerSquareInchTolerance); AssertEx.EqualTolerance(1, Pressure.From(1, PressureUnit.Megabar).Megabars, MegabarsTolerance); + AssertEx.EqualTolerance(1, Pressure.From(1, PressureUnit.MeganewtonPerSquareMeter).MeganewtonsPerSquareMeter, MeganewtonsPerSquareMeterTolerance); AssertEx.EqualTolerance(1, Pressure.From(1, PressureUnit.Megapascal).Megapascals, MegapascalsTolerance); AssertEx.EqualTolerance(1, Pressure.From(1, PressureUnit.MeterOfHead).MetersOfHead, MetersOfHeadTolerance); AssertEx.EqualTolerance(1, Pressure.From(1, PressureUnit.Micropascal).Micropascals, MicropascalsTolerance); @@ -239,6 +243,7 @@ public void As() AssertEx.EqualTolerance(KilopoundsForcePerSquareFootInOnePascal, pascal.As(PressureUnit.KilopoundForcePerSquareFoot), KilopoundsForcePerSquareFootTolerance); AssertEx.EqualTolerance(KilopoundsForcePerSquareInchInOnePascal, pascal.As(PressureUnit.KilopoundForcePerSquareInch), KilopoundsForcePerSquareInchTolerance); AssertEx.EqualTolerance(MegabarsInOnePascal, pascal.As(PressureUnit.Megabar), MegabarsTolerance); + AssertEx.EqualTolerance(MeganewtonsPerSquareMeterInOnePascal, pascal.As(PressureUnit.MeganewtonPerSquareMeter), MeganewtonsPerSquareMeterTolerance); AssertEx.EqualTolerance(MegapascalsInOnePascal, pascal.As(PressureUnit.Megapascal), MegapascalsTolerance); AssertEx.EqualTolerance(MetersOfHeadInOnePascal, pascal.As(PressureUnit.MeterOfHead), MetersOfHeadTolerance); AssertEx.EqualTolerance(MicropascalsInOnePascal, pascal.As(PressureUnit.Micropascal), MicropascalsTolerance); @@ -282,6 +287,7 @@ public void ConversionRoundTrip() AssertEx.EqualTolerance(1, Pressure.FromKilopoundsForcePerSquareFoot(pascal.KilopoundsForcePerSquareFoot).Pascals, KilopoundsForcePerSquareFootTolerance); AssertEx.EqualTolerance(1, Pressure.FromKilopoundsForcePerSquareInch(pascal.KilopoundsForcePerSquareInch).Pascals, KilopoundsForcePerSquareInchTolerance); AssertEx.EqualTolerance(1, Pressure.FromMegabars(pascal.Megabars).Pascals, MegabarsTolerance); + AssertEx.EqualTolerance(1, Pressure.FromMeganewtonsPerSquareMeter(pascal.MeganewtonsPerSquareMeter).Pascals, MeganewtonsPerSquareMeterTolerance); AssertEx.EqualTolerance(1, Pressure.FromMegapascals(pascal.Megapascals).Pascals, MegapascalsTolerance); AssertEx.EqualTolerance(1, Pressure.FromMetersOfHead(pascal.MetersOfHead).Pascals, MetersOfHeadTolerance); AssertEx.EqualTolerance(1, Pressure.FromMicropascals(pascal.Micropascals).Pascals, MicropascalsTolerance); diff --git a/UnitsNet/GeneratedCode/Extensions/Number/NumberToPressureExtensions.g.cs b/UnitsNet/GeneratedCode/Extensions/Number/NumberToPressureExtensions.g.cs index e473fc1999..ec67465bf2 100644 --- a/UnitsNet/GeneratedCode/Extensions/Number/NumberToPressureExtensions.g.cs +++ b/UnitsNet/GeneratedCode/Extensions/Number/NumberToPressureExtensions.g.cs @@ -724,6 +724,40 @@ public static class NumberToPressureExtensions #endregion + #region MeganewtonPerSquareMeter + + /// + public static Pressure MeganewtonsPerSquareMeter(this int value) => Pressure.FromMeganewtonsPerSquareMeter(value); + + /// + public static Pressure? MeganewtonsPerSquareMeter(this int? value) => Pressure.FromMeganewtonsPerSquareMeter(value); + + /// + public static Pressure MeganewtonsPerSquareMeter(this long value) => Pressure.FromMeganewtonsPerSquareMeter(value); + + /// + public static Pressure? MeganewtonsPerSquareMeter(this long? value) => Pressure.FromMeganewtonsPerSquareMeter(value); + + /// + public static Pressure MeganewtonsPerSquareMeter(this double value) => Pressure.FromMeganewtonsPerSquareMeter(value); + + /// + public static Pressure? MeganewtonsPerSquareMeter(this double? value) => Pressure.FromMeganewtonsPerSquareMeter(value); + + /// + public static Pressure MeganewtonsPerSquareMeter(this float value) => Pressure.FromMeganewtonsPerSquareMeter(value); + + /// + public static Pressure? MeganewtonsPerSquareMeter(this float? value) => Pressure.FromMeganewtonsPerSquareMeter(value); + + /// + public static Pressure MeganewtonsPerSquareMeter(this decimal value) => Pressure.FromMeganewtonsPerSquareMeter(Convert.ToDouble(value)); + + /// + public static Pressure? MeganewtonsPerSquareMeter(this decimal? value) => Pressure.FromMeganewtonsPerSquareMeter(value == null ? (double?)null : Convert.ToDouble(value.Value)); + + #endregion + #region Megapascal /// diff --git a/UnitsNet/GeneratedCode/Quantities/Pressure.g.cs b/UnitsNet/GeneratedCode/Quantities/Pressure.g.cs index c30fa18350..bc1743b091 100644 --- a/UnitsNet/GeneratedCode/Quantities/Pressure.g.cs +++ b/UnitsNet/GeneratedCode/Quantities/Pressure.g.cs @@ -243,6 +243,10 @@ public Pressure(double pascals) /// public double Megabars => As(PressureUnit.Megabar); /// + /// Get Pressure in MeganewtonsPerSquareMeter. + /// + public double MeganewtonsPerSquareMeter => As(PressureUnit.MeganewtonPerSquareMeter); + /// /// Get Pressure in Megapascals. /// public double Megapascals => As(PressureUnit.Megapascal); @@ -598,6 +602,20 @@ public static Pressure FromMegabars(QuantityValue megabars) return new Pressure(value, PressureUnit.Megabar); } + /// + /// Get Pressure from MeganewtonsPerSquareMeter. + /// +#if WINDOWS_UWP + [Windows.Foundation.Metadata.DefaultOverload] + public static Pressure FromMeganewtonsPerSquareMeter(double meganewtonspersquaremeter) +#else + public static Pressure FromMeganewtonsPerSquareMeter(QuantityValue meganewtonspersquaremeter) +#endif + { + double value = (double) meganewtonspersquaremeter; + return new Pressure(value, PressureUnit.MeganewtonPerSquareMeter); + } + /// /// Get Pressure from Megapascals. /// @@ -1138,6 +1156,21 @@ public static Pressure FromTorrs(QuantityValue torrs) } } + /// + /// Get nullable Pressure from nullable MeganewtonsPerSquareMeter. + /// + public static Pressure? FromMeganewtonsPerSquareMeter(QuantityValue? meganewtonspersquaremeter) + { + if (meganewtonspersquaremeter.HasValue) + { + return FromMeganewtonsPerSquareMeter(meganewtonspersquaremeter.Value); + } + else + { + return null; + } + } + /// /// Get nullable Pressure from nullable Megapascals. /// @@ -1640,6 +1673,7 @@ public double As(PressureUnit unit) case PressureUnit.KilopoundForcePerSquareFoot: return (baseUnitValue*0.020885432426709) / 1e3d; case PressureUnit.KilopoundForcePerSquareInch: return (baseUnitValue*0.000145037737730209) / 1e3d; case PressureUnit.Megabar: return (baseUnitValue/1e5) / 1e6d; + case PressureUnit.MeganewtonPerSquareMeter: return (baseUnitValue) / 1e6d; case PressureUnit.Megapascal: return (baseUnitValue) / 1e6d; case PressureUnit.MeterOfHead: return baseUnitValue*0.0001019977334; case PressureUnit.Micropascal: return (baseUnitValue) / 1e-6d; @@ -2040,6 +2074,7 @@ private double AsBaseUnitPascals() case PressureUnit.KilopoundForcePerSquareFoot: return (_value*47.8802631216372) * 1e3d; case PressureUnit.KilopoundForcePerSquareInch: return (_value*6894.75729316836) * 1e3d; case PressureUnit.Megabar: return (_value*1e5) * 1e6d; + case PressureUnit.MeganewtonPerSquareMeter: return (_value) * 1e6d; case PressureUnit.Megapascal: return (_value) * 1e6d; case PressureUnit.MeterOfHead: return _value*9804.139432; case PressureUnit.Micropascal: return (_value) * 1e-6d; diff --git a/UnitsNet/GeneratedCode/UnitSystem.Default.g.cs b/UnitsNet/GeneratedCode/UnitSystem.Default.g.cs index 7dccee08c9..b95d5fce39 100644 --- a/UnitsNet/GeneratedCode/UnitSystem.Default.g.cs +++ b/UnitsNet/GeneratedCode/UnitSystem.Default.g.cs @@ -2956,6 +2956,12 @@ private static readonly ReadOnlyCollection DefaultLocalization new AbbreviationsForCulture("en-US", "Mbar"), new AbbreviationsForCulture("ru-RU", "Mбар"), }), + new CulturesForEnumValue((int) PressureUnit.MeganewtonPerSquareMeter, + new[] + { + new AbbreviationsForCulture("en-US", "MN/m²"), + new AbbreviationsForCulture("ru-RU", "Мн/м²"), + }), new CulturesForEnumValue((int) PressureUnit.Megapascal, new[] { diff --git a/UnitsNet/GeneratedCode/Units/PressureUnit.g.cs b/UnitsNet/GeneratedCode/Units/PressureUnit.g.cs index b3c883eafe..109e9ea735 100644 --- a/UnitsNet/GeneratedCode/Units/PressureUnit.g.cs +++ b/UnitsNet/GeneratedCode/Units/PressureUnit.g.cs @@ -62,6 +62,7 @@ public enum PressureUnit KilopoundForcePerSquareFoot, KilopoundForcePerSquareInch, Megabar, + MeganewtonPerSquareMeter, Megapascal, MeterOfHead, Micropascal, diff --git a/UnitsNet/UnitDefinitions/Pressure.json b/UnitsNet/UnitDefinitions/Pressure.json index caea0fbe92..de25640598 100644 --- a/UnitsNet/UnitDefinitions/Pressure.json +++ b/UnitsNet/UnitDefinitions/Pressure.json @@ -107,17 +107,17 @@ "PluralName": "NewtonsPerSquareMeter", "FromUnitToBaseFunc": "x", "FromBaseToUnitFunc": "x", - "Prefixes": [ "Kilo" ], + "Prefixes": [ "Kilo", "Mega" ], "Localization": [ { "Culture": "en-US", "Abbreviations": [ "N/m²" ], - "AbbreviationsWithPrefixes": [ "kN/m²" ] + "AbbreviationsWithPrefixes": [ "kN/m²", "MN/m²" ] }, { "Culture": "ru-RU", "Abbreviations": [ "Н/м²" ], - "AbbreviationsWithPrefixes": [ "кН/м²" ] + "AbbreviationsWithPrefixes": [ "кН/м²", "Мн/м²" ] } ] },