/// <summary> /// Converts the specified value to value of another spectrum parameter type. /// </summary> /// <param name="value">The value.</param> /// <param name="fromType">From spectrum parameter type.</param> /// <param name="toType">To spectrum parameter type.</param> /// <returns>The new value of spectrum parameter type.</returns> public static double Convert(double value, SpectrumUnitType fromType, SpectrumUnitType toType) { if (fromType == toType) { return(value); } var cycleFreq = ConvertFromType[fromType].Invoke(value); return(ConvertToType[toType].Invoke(cycleFreq)); }
/// <summary> /// Converts value to specified type. /// </summary> /// <param name="toType">To spectrum parameter type.</param> /// <returns>The value of spectrum parameter type.</returns> public double ToType(SpectrumUnitType toType) { return(SpectrumUnitConverter.Convert(this.value, this.type, toType)); }
/// <summary> /// Initializes a new instance of the <see cref="SpectrumUnit"/> class. /// </summary> /// <param name="value">The double value.</param> /// <param name="type">The underlying type.</param> public SpectrumUnit(double value, SpectrumUnitType type) { this.value = value; this.type = type; }
/// <summary> /// Initializes a new instance of the <see cref="OpticalSpectrum"/> class. /// </summary> /// <param name="list">The list of values.</param> /// <param name="type">The type of values.</param> public OpticalSpectrum(IEnumerable <double> list, SpectrumUnitType type) { this.list = list.Select(x => new SpectrumUnit(x, type)).ToList(); }