/// <summary>
        /// Tunes this Pitch to TunedPitch using a specific standard pitch and a specific tuning system.
        /// </summary>
        /// <param name="standardPitch">Standard pitch (i.e. A4 = 440 Hz, etc.)</param>
        /// <param name="tuningSystem"></param>
        /// <returns>Pitch with assigned frequency</returns>
        public TunedPitch Tune(TunedPitch standardPitch, TuningSystem tuningSystem)
        {
            var logarythmicProportion = tuningSystem.AllIntervalRatios[new BoundInterval(standardPitch, this)];
            var freq = standardPitch.Frequency * UsefulMath.CentsToLinear(logarythmicProportion);

            freq *= (this.Octave - standardPitch.Octave) + 1;
            return(new TunedPitch(this, freq));
        }
Beispiel #2
0
 public static TuningType Get()
 {
     TuningSystem.Init();
     return(_TuningData);
 }