public static UnitScale <MultipliedUnitType <T1, T2> > GetMultipliedScale(UnitScale <T1> s1, UnitScale <T2> s2) => new UnitScale <MultipliedUnitType <T1, T2> >( s1.NameOfScale + " * " + s2.NameOfScale, unitsBase => s2.FromBase(s1.FromBase(unitsBase)), unitsThis => s2.ToBase(s1.ToBase(unitsThis)) );
public static double DelisleToFarenheit(double temp) { var delisle = new UnitScale <TemperatureBaseKelvin>("Delisle", degreesK => (373.15m - degreesK) * 3 / 2, degreesDelisle => 373.15m - degreesDelisle * 2 / 3); return(UnitScale <TemperatureBaseKelvin> .Convert(temp, delisle, TemperatureBaseKelvin.Farenheit)); }
private void scaleOut_SelectedIndexChanged(object sender, EventArgs e) { scaleOutVal = (scaleOut.SelectedItem as UnitScale <TemperatureBaseKelvin>); if (scaleOutVal != null) { scaleOutReady = true; Recalculate(sender, e); } else { message.Text = "something went wrong with your unitscale"; } }
public static UnitScale <TUnitType> FromNumberOfOtherUnitsPerNewUnit(string nameOfScale, decimal multipleOfOther, UnitScale <TUnitType> otherUnit)//mainly replaces old thing { return(new UnitScale <TUnitType>( nameOfScale, baseUnits => otherUnit.FromBase(baseUnits) / multipleOfOther, newUnits => otherUnit.ToBase(newUnits * multipleOfOther))); }
public static double FahrenheitToCelsius(double temp) { return(UnitScale <TemperatureBaseKelvin> .Convert(temp, TemperatureBaseKelvin.Farenheit, TemperatureBaseKelvin.Celsius)); }
public static double CmToInches(double cm) { return(UnitScale <DistanceBaseMeters> .Convert(cm, DistanceBaseMeters.Cm, DistanceBaseMeters.Inches)); }
public static double CelsiusToKelvin(double temp) { return(UnitScale <TemperatureBaseKelvin> .Convert(temp, TemperatureBaseKelvin.Celsius, TemperatureBaseKelvin.Kelvin)); }
public static double KelvinToCelsius(double temp) { return(UnitScale <TemperatureBaseKelvin> .Convert(temp, TemperatureBaseKelvin.Kelvin, TemperatureBaseKelvin.Celsius)); }
public static UnitScale <PerUnitType <T1, T2> > GetPerScale(UnitScale <T1> s1, UnitScale <T2> s2) => new UnitScale <PerUnitType <T1, T2> >( s1.NameOfScale + " Per " + s2.NameOfScale, unitsBase => s1.FromBase(unitsBase) / s2.FromBase(1), unitsThis => s1.ToBase(unitsThis) / s2.ToBase(1));
public static UnitScale <MultipliedUnitType <T1, T1> > GetSquaredScale(UnitScale <T1> s1) => new UnitScale <MultipliedUnitType <T1, T1> >( "Squared scale of: " + s1.NameOfScale, unitsBase => s1.FromBase(s1.FromBase(unitsBase)), unitsThis => s1.ToBase(s1.ToBase(unitsThis)));
public static double CelsiusToFahrenheit(double temp) { return(UnitScale <TemperatureBaseKelvin> .Convert(temp, TemperatureBaseKelvin.Celsius, TemperatureBaseKelvin.Farenheit)); }
public static double Convert(double degrees, UnitScale <TUnitType> from, UnitScale <TUnitType> to) { return((double)to.FromBase(from.ToBase((decimal)degrees))); }