예제 #1
0
파일: Note.cs 프로젝트: PenguinAgen/Stuff
 public Note(XElement element, IReadOnlyDictionary <string, double> noteValues)
 {
     if (element.Contains("tone"))
     {
         Tone = new Tone(element.ElementValue("tone"));
     }
     else
     {
         Tone = null;
     }
     if (element.Element("value").HasElements)
     {
         Value = 0;
         foreach (var subValue in element.Element("value").Elements())
         {
             Value += LoadNoteValue(subValue.Value, noteValues);
         }
     }
     else
     {
         Value = LoadNoteValue(element.ElementValue("value"), noteValues);
     }
 }
예제 #2
0
파일: Note.cs 프로젝트: PenguinAgen/Stuff
 public Note(Tone tone, double value)
 {
     Tone  = tone;
     Value = value;
 }
예제 #3
0
파일: Tone.cs 프로젝트: PenguinAgen/Stuff
 public bool IsEqual(Tone note)
 {
     return(ToneNumber == note.ToneNumber);
 }
예제 #4
0
파일: Key.cs 프로젝트: PenguinAgen/Stuff
 public Key(Tone note, Scale scale)
 {
     Root  = note;
     Scale = scale;
 }
예제 #5
0
파일: Tone.cs 프로젝트: PenguinAgen/Stuff
 public int HalfToneDiff(Tone note)
 {
     return(note.ToneNumber - ToneNumber);
 }