Example #1
0
        private static GuitarString ParseString(string s, int number, int startingFret)
        {
            try
            {
                var guitarString = new GuitarString(number);
                if (s.StartsWith("X", StringComparison.OrdinalIgnoreCase))
                    guitarString.IsMuted = true;
                else
                {
                    string[] frets = s.Split('|').Skip(1).ToArray();
                    for (int i = 0; i < frets.Length; i++)
                    {

                        if (frets[i].ToUpper() == "-X-")
                        {
                            guitarString.RelativeFret = i + 1;
                            guitarString.AnsoluteFret = startingFret + guitarString.RelativeFret;
                        }
                        else if (frets[i].ToUpper() == "(X)")
                            guitarString.OptionalRelativeFret = i + 1;
                    }
                }
                return guitarString;
            }
            catch (Exception ex)
            {
                throw new FormatException("Wrong string format", ex);
            }
        }
        public Note GetNote(GuitarString @string)
        {
            if (@string.IsMuted)
            {
                throw new ArgumentException("String is muted");
            }

            int  fret = @string.AnsoluteFret + Offset;
            Note note = Notes[@string.Number - 1] + fret;

            return(note);
        }
        public Note GetUnclambedNote(GuitarString @string)
        {
            Note note = Notes[@string.Number - 1];

            return(note);
        }
 public FingeringBuiler AddString(int number)
 {
     _previousString = number;
     _strings[number - 1] = new GuitarString(number);
     return this;
 }
Example #5
0
 public FingeringBuiler AddString(int number)
 {
     _previousString      = number;
     _strings[number - 1] = new GuitarString(number);
     return(this);
 }
Example #6
0
        private static GuitarString ParseString(string s, int number, int startingFret)
        {
            try
            {
                var guitarString = new GuitarString(number);
                if (s.StartsWith("X", StringComparison.OrdinalIgnoreCase))
                    guitarString.IsMuted = true;
                else
                {
                    string[] frets = s.Split('|').Skip(1).ToArray();
                    for (int i = 0; i < frets.Length; i++)
                    {

                        if (frets[i].ToUpper() == "-X-")
                        {
                            guitarString.RelativeFret = i + 1;
                            guitarString.AnsoluteFret = startingFret + guitarString.RelativeFret;
                        }
                        else if (frets[i].ToUpper() == "(X)")
                            guitarString.OptionalRelativeFret = i + 1;
                    }
                }
                return guitarString;
            }
            catch (Exception ex)
            {
                throw new FormatException("Wrong string format", ex);
            }
        }