Exemple #1
0
        public void Note_MixedLengthAndVelocity()
        {
            var defaultNoteLength = (MusicalLength)MusicalFraction.Quarter;
            var defaultVelocity   = (SevenBitNumber)90;

            var specifiedLength   = new MetricLength(0, 0, 10);
            var specifiedVelocity = (SevenBitNumber)95;

            var pattern = new PatternBuilder()
                          .SetNoteLength(defaultNoteLength)
                          .SetVelocity(defaultVelocity)

                          .Note(OctaveDefinition.Get(0).A)
                          .Note(OctaveDefinition.Get(1).C, specifiedLength, specifiedVelocity)

                          .Build();

            TestNotes(pattern, new[]
            {
                new NoteInfo(NoteName.A, 0, null, defaultNoteLength, defaultVelocity),
                new NoteInfo(NoteName.C, 1, (MusicalTime)MusicalFraction.Quarter, specifiedLength, specifiedVelocity)
            });
        }
Exemple #2
0
        public void MoveToFirstAnchor_Unkeyed_OneUnkeyed()
        {
            var moveTime   = new MetricTime(0, 0, 10);
            var step       = new MetricLength(0, 0, 11);
            var anchorTime = moveTime + step;

            var pattern = new PatternBuilder()
                          .MoveToTime(moveTime)
                          .StepForward(step)
                          .Anchor()
                          .MoveToTime(new MetricTime(0, 0, 30))
                          .StepBack(new MetricLength(0, 0, 5))
                          .MoveToFirstAnchor()

                          .Note(OctaveDefinition.Get(0).A)

                          .Build();

            TestNotes(pattern, new[]
            {
                new NoteInfo(NoteName.A, 0, anchorTime, (MusicalLength)MusicalFraction.Quarter)
            });
        }