Example #1
0
    /// <summary>
    /// 目盛設定
    /// </summary>
    /// <param name="type">目盛種別</param>
    /// <param name="value">表示値</param>
    /// <param name="cbFunc">矢印接触時のコールバック</param>
    public void SetUnit(scaleType type, string value, OnEnterCenterMark cbFunc = null)
    {
        // コールバック登録
        callback = cbFunc;

        // 一旦全消しして必要な分だけ表示指定
        ImageScaleBold.SetActive(false);
        ImageScaleMiddle.SetActive(false);
        ImageScaleNormal.SetActive(false);
        switch (type)
        {
        case scaleType.Bold:
        {
            ImageScaleBold.SetActive(true);
            break;
        }

        case scaleType.Middle:
        {
            ImageScaleMiddle.SetActive(true);
            break;
        }

        case scaleType.Normal:
        {
            ImageScaleNormal.SetActive(true);
            break;
        }
        }

        // 表示値を設定
        Value.text = value;
    }
Example #2
0
 /// <summary>
 /// Initializes a scale by key and type, adds the id to name.
 /// </summary>
 /// <param name="inKey">Desired Key.</param>
 /// <param name="type">Desired Scale Type.</param>
 /// <param name="id">Identifier.</param>
 public Scale(note inKey, scaleType type, int id)
 {
     Key         = inKey;
     ModalKey    = inKey;
     currentMode = modes.ionian;
     Name        = inKey.ToString() + " " + type.ToString() + " _" + id.ToString();
     AssignUpperAndLower(ScaleBook.allScales [type]);
     upperTetraOffset = upperTetra.Offset;
     Intervals        = CombineTetrachords(lowerTetra, upperTetra, upperTetraOffset);
     Notes            = GenerateNotes(Key, Intervals);
     scaleSize        = Intervals.Length;
 }
Example #3
0
    public void AddScale(note key, scaleType type)
    {
        if (managedScales == null)
        {
            scaleID       = 0;
            managedScales = new List <Scale>();
            managedScales.Add(new Scale(key, type, scaleID));
        }
        else
        {
            scaleID++;
            managedScales.Add(new Scale(key, type, scaleID));
        }

        foreach (Note n in managedScales[managedScales.Count - 1].Notes)
        {
            n.FrequencyKey += BaseNoteOffset;
        }
    }