|
|
483行目: |
483行目: |
| Guitar1St1.addKeySignature('D').setContext(ctx); | | Guitar1St1.addKeySignature('D').setContext(ctx); |
| Guitar1St1.draw(); | | Guitar1St1.draw(); |
|
| |
| const Guitar1_notes1_1 = [
| |
| new VF.StaveNote({ keys: ["a/3", "e/4", "a/4", "c/5"], duration: "2" }),
| |
| new VF.StaveNote({ keys: ["e/5"], duration: "8", stem_direction: -1 }),
| |
| dotted(new VF.StaveNote({ keys: ["c/6"], duration: "4d", stem_direction: -1 })),
| |
| ];
| |
| const Guitar1_notes1_2 = [
| |
| new VF.GhostNote({ keys: ["f/4"], duration: "16"}),
| |
| new VF.GhostNote({ keys: ["f/4"], duration: "16"}),
| |
| new VF.GhostNote({ keys: ["f/4"], duration: "16"}),
| |
| new VF.GhostNote({ keys: ["f/4"], duration: "16"}),
| |
|
| |
| new VF.GhostNote({ keys: ["f/4"], duration: "16"}),
| |
| new VF.GhostNote({ keys: ["f/4"], duration: "16"}),
| |
| new VF.GhostNote({ keys: ["f/4"], duration: "16"}),
| |
| new VF.GhostNote({ keys: ["f/4"], duration: "16"}),
| |
|
| |
| new VF.GhostNote({ keys: ["f/4"], duration: "16"}),
| |
| new VF.GhostNote({ keys: ["f/4"], duration: "16"}),
| |
| new VF.GhostNote({ keys: ["f/4"], duration: "16"}),
| |
| new VF.GhostNote({ keys: ["f/4"], duration: "16"}),
| |
|
| |
| new VF.GhostNote({ keys: ["f/4"], duration: "16"}),
| |
| new VF.GhostNote({ keys: ["f/4"], duration: "16"}),
| |
| new VF.GhostNote({ keys: ["f/4"], duration: "16"}),
| |
| new VF.GhostNote({ keys: ["f/4"], duration: "16"}),
| |
|
| |
| ];
| |
| var Guitar1_St1_1Voice = new Vex.Flow.Voice({ num_beats: 4, beat_value: 4 });
| |
| Guitar1_St1_1Voice.setStrict(true);
| |
| Guitar1_St1_1Voice.addTickables(Guitar1_notes1_1);
| |
|
| |
| var Guitar1_St1_2Voice = new Vex.Flow.Voice({ num_beats: 4, beat_value: 4 });
| |
| Guitar1_St1_2Voice.setStrict(true);
| |
| Guitar1_St1_2Voice.addTickables(Guitar1_notes1_2);
| |
|
| |
| var formatterGuitar1_St1_1 = new Vex.Flow.Formatter().joinVoices([Guitar1_St1_2Voice, Guitar1_St1_1Voice]);
| |
| formatterGuitar1_St1_1.format([Guitar1_St1_2Voice, Guitar1_St1_1Voice], nStaveWidth - 20 - 10);
| |
| Guitar1_St1_1Voice.draw(ctx, Guitar1St1);
| |
| Guitar1_St1_2Voice.draw(ctx, Guitar1St1);
| |
|
| |
|
| const Guitar1St2 = new Stave(Guitar1St1.width + Guitar1St1.x, Guitar1St1.y, nStaveWidth).setContext(ctx); | | const Guitar1St2 = new Stave(Guitar1St1.width + Guitar1St1.x, Guitar1St1.y, nStaveWidth).setContext(ctx); |
| Guitar1St2.draw(); | | Guitar1St2.draw(); |
|
| |
| const Guitar1_gracenotes2 = [
| |
| new VF.GraceNote({ keys: ['e/5', 'g/5'], duration: '8', slash: true })
| |
| .addModifier(new VF.Accidental('#'), 1)
| |
| ];
| |
|
| |
| const Guitar1_notes2_1 = [
| |
| new VF.StaveNote({ keys: ["f/5", "a/5"], duration: "8", stem_direction: -1 })
| |
| .addModifier(new VF.Accidental('n'), 0),
| |
| new VF.StaveNote({ keys: ["e/5", "g/5"], duration: "8", stem_direction: -1 }),
| |
| new VF.StaveNote({ keys: ["f/5"], duration: "8", stem_direction: -1 }),
| |
| new VF.StaveNote({ keys: ["e/5"], duration: "8", stem_direction: -1 }),
| |
| new VF.StaveNote({ keys: ["a/4", "d/5"], duration: "8" }),
| |
| new VF.StaveNote({ keys: ["g/4"], duration: "8" }),
| |
| new VF.StaveNote({ keys: ["f/4"], duration: "8" }),
| |
| new VF.StaveNote({ keys: ["e/4"], duration: "8" }),
| |
| ];
| |
| const Guitar1_notes2_2 = [
| |
| new VF.GhostNote({ keys: ["f/4"], duration: "16"}),
| |
| new VF.GhostNote({ keys: ["f/4"], duration: "16"}),
| |
| new VF.GhostNote({ keys: ["f/4"], duration: "16"}),
| |
| new VF.GhostNote({ keys: ["f/4"], duration: "16"}),
| |
|
| |
| new VF.GhostNote({ keys: ["f/4"], duration: "16"}),
| |
| new VF.GhostNote({ keys: ["f/4"], duration: "16"}),
| |
| new VF.GhostNote({ keys: ["f/4"], duration: "16"}),
| |
| new VF.GhostNote({ keys: ["f/4"], duration: "16"}),
| |
|
| |
| new VF.GhostNote({ keys: ["f/4"], duration: "16"}),
| |
| new VF.GhostNote({ keys: ["f/4"], duration: "16"}),
| |
| new VF.GhostNote({ keys: ["f/4"], duration: "16"}),
| |
| new VF.GhostNote({ keys: ["f/4"], duration: "16"}),
| |
|
| |
| new VF.GhostNote({ keys: ["f/4"], duration: "16"}),
| |
| new VF.GhostNote({ keys: ["f/4"], duration: "16"}),
| |
| new VF.GhostNote({ keys: ["f/4"], duration: "16"}),
| |
| new VF.GhostNote({ keys: ["f/4"], duration: "16"}),
| |
|
| |
| ];
| |
| Guitar1_notes2_1[0].addModifier(new VF.Articulation('a.').setPosition(3));
| |
| Guitar1_notes2_1[1].addModifier(new VF.Articulation('a.').setPosition(3));
| |
| Guitar1_notes2_1[2].addModifier(new VF.Articulation('a.').setPosition(3));
| |
| Guitar1_notes2_1[3].addModifier(new VF.Articulation('a.').setPosition(3));
| |
| Guitar1_notes2_1[4].addModifier(new VF.Articulation('a.').setPosition(4));
| |
| Guitar1_notes2_1[5].addModifier(new VF.Articulation('a.').setPosition(4));
| |
| Guitar1_notes2_1[6].addModifier(new VF.Articulation('a.').setPosition(4));
| |
| Guitar1_notes2_1[7].addModifier(new VF.Articulation('a.').setPosition(4));
| |
| Guitar1_notes2_1[0].addModifier(new VF.GraceNoteGroup(Guitar1_gracenotes2, true), 0);
| |
|
| |
| const Guitar1_beam1_1 = new VF.Beam([Guitar1_notes2_1[0], Guitar1_notes2_1[1], Guitar1_notes2_1[2], Guitar1_notes2_1[3]]);
| |
| const Guitar1_beam1_2 = new VF.Beam([Guitar1_notes2_1[4], Guitar1_notes2_1[5], Guitar1_notes2_1[6], Guitar1_notes2_1[7]]);
| |
|
| |
| var Guitar1_St2_1Voice = new Vex.Flow.Voice({ num_beats: 4, beat_value: 4 });
| |
| Guitar1_St2_1Voice.setStrict(true);
| |
| Guitar1_St2_1Voice.addTickables(Guitar1_notes2_1);
| |
|
| |
| var Guitar1_St2_2Voice = new Vex.Flow.Voice({ num_beats: 4, beat_value: 4 });
| |
| Guitar1_St2_2Voice.setStrict(true);
| |
| Guitar1_St2_2Voice.addTickables(Guitar1_notes2_2);
| |
|
| |
| var formatterGuitar1_St2_1 = new Vex.Flow.Formatter().joinVoices([Guitar1_St2_2Voice, Guitar1_St2_1Voice]);
| |
| formatterGuitar1_St2_1.format([Guitar1_St2_2Voice, Guitar1_St2_1Voice], nStaveWidth - 30);
| |
| Guitar1_St2_1Voice.draw(ctx, Guitar1St2);
| |
| Guitar1_St2_2Voice.draw(ctx, Guitar1St2);
| |
|
| |
| Guitar1_beam1_1.setContext(ctx).draw();
| |
| Guitar1_beam1_2.setContext(ctx).draw();
| |
|
| |
|
| const Guitar1St3 = new Stave(Guitar1St2.width + Guitar1St2.x, Guitar1St1.y, nStaveWidth).setContext(ctx); | | const Guitar1St3 = new Stave(Guitar1St2.width + Guitar1St2.x, Guitar1St1.y, nStaveWidth).setContext(ctx); |
| Guitar1St3.draw(); | | Guitar1St3.draw(); |
|
| |
| const Guitar1_notes3_1 = [
| |
| new VF.StaveNote({ keys: ["g/4"], duration: "16" }),
| |
| new VF.StaveNote({ keys: ["a/4"], duration: "16" }),
| |
| new VF.StaveNote({ keys: ["g/4"], duration: "16" }),
| |
| new VF.StaveNote({ keys: ["a/4"], duration: "16" }),
| |
| new VF.StaveNote({ keys: ["g/4"], duration: "8" }),
| |
| new VF.StaveNote({ keys: ["e/4"], duration: "16" }),
| |
| new VF.StaveNote({ keys: ["e/4"], duration: "16" }),
| |
| new VF.StaveNote({ keys: ["e/4"], duration: "2" }),
| |
| ];
| |
| const Guitar1_notes3_2 = [
| |
| new VF.GhostNote({ keys: ["f/4"], duration: "16"}),
| |
| new VF.GhostNote({ keys: ["f/4"], duration: "16"}),
| |
| new VF.GhostNote({ keys: ["f/4"], duration: "16"}),
| |
| new VF.GhostNote({ keys: ["f/4"], duration: "16"}),
| |
|
| |
| new VF.GhostNote({ keys: ["f/4"], duration: "16"}),
| |
| new VF.GhostNote({ keys: ["f/4"], duration: "16"}),
| |
| new VF.GhostNote({ keys: ["f/4"], duration: "16"}),
| |
| new VF.GhostNote({ keys: ["f/4"], duration: "16"}),
| |
|
| |
| new VF.GhostNote({ keys: ["f/4"], duration: "16"}),
| |
| new VF.GhostNote({ keys: ["f/4"], duration: "16"}),
| |
| new VF.GhostNote({ keys: ["f/4"], duration: "16"}),
| |
| new VF.GhostNote({ keys: ["f/4"], duration: "16"}),
| |
|
| |
| new VF.GhostNote({ keys: ["f/4"], duration: "16"}),
| |
| new VF.GhostNote({ keys: ["f/4"], duration: "16"}),
| |
| new VF.GhostNote({ keys: ["f/4"], duration: "16"}),
| |
| new VF.GhostNote({ keys: ["f/4"], duration: "16"}),
| |
|
| |
| ];
| |
| const Guitar1_beam3_1 = new VF.Beam([Guitar1_notes3_1[0], Guitar1_notes3_1[1], Guitar1_notes3_1[2], Guitar1_notes3_1[3]]);
| |
| const Guitar1_beam3_2 = new VF.Beam([Guitar1_notes3_1[4], Guitar1_notes3_1[5], Guitar1_notes3_1[6]]);
| |
|
| |
| var Guitar1_St3_1Voice = new Vex.Flow.Voice({ num_beats: 4, beat_value: 4 });
| |
| Guitar1_St3_1Voice.setStrict(true);
| |
| Guitar1_St3_1Voice.addTickables(Guitar1_notes3_1);
| |
|
| |
| var Guitar1_St3_2Voice = new Vex.Flow.Voice({ num_beats: 4, beat_value: 4 });
| |
| Guitar1_St3_2Voice.setStrict(true);
| |
| Guitar1_St3_2Voice.addTickables(Guitar1_notes3_2);
| |
|
| |
| var formatterGuitar1_St3_1 = new Vex.Flow.Formatter().joinVoices([Guitar1_St3_2Voice, Guitar1_St3_1Voice]);
| |
| formatterGuitar1_St3_1.format([Guitar1_St3_2Voice, Guitar1_St3_1Voice], nStaveWidth - 30);
| |
| Guitar1_St3_1Voice.draw(ctx, Guitar1St3);
| |
| Guitar1_St3_2Voice.draw(ctx, Guitar1St3);
| |
|
| |
| Guitar1_beam3_1.setContext(ctx).draw();
| |
| Guitar1_beam3_2.setContext(ctx).draw();
| |
|
| |
| const Guitar1_ties3 = [
| |
| new StaveTie({
| |
| first_note: Guitar1_notes3_1[0],
| |
| last_note: Guitar1_notes3_1[1],
| |
| first_indices: [0],
| |
| last_indices: [0],
| |
| }),
| |
| new StaveTie({
| |
| first_note: Guitar1_notes3_1[1],
| |
| last_note: Guitar1_notes3_1[2],
| |
| first_indices: [0],
| |
| last_indices: [0],
| |
| }),
| |
| new StaveTie({
| |
| first_note: Guitar1_notes3_1[2],
| |
| last_note: Guitar1_notes3_1[3],
| |
| first_indices: [0],
| |
| last_indices: [0],
| |
| }),
| |
| new StaveTie({
| |
| first_note: Guitar1_notes3_1[3],
| |
| last_note: Guitar1_notes3_1[4],
| |
| first_indices: [0],
| |
| last_indices: [0],
| |
| }),
| |
| new StaveTie({
| |
| first_note: Guitar1_notes3_1[6],
| |
| last_note: Guitar1_notes3_1[7],
| |
| first_indices: [0],
| |
| last_indices: [0],
| |
| }),
| |
| ];
| |
|
| |
| Guitar1_ties3.forEach((t) => {
| |
| t.setContext(ctx).draw();
| |
| });
| |
|
| |
| var Guitar1_vibrato3 = new VF.VibratoBracket({
| |
| start: Guitar1_notes3_1[7],
| |
| stop: null,
| |
| });
| |
| Guitar1_vibrato3.setLine(0);
| |
| Guitar1_vibrato3.setHarsh(true);
| |
| Guitar1_vibrato3.setContext(ctx).draw();
| |
|
| |
|
| const Guitar1St4 = new Stave(Guitar1St3.width + Guitar1St3.x, Guitar1St1.y, nStaveWidth).setContext(ctx); | | const Guitar1St4 = new Stave(Guitar1St3.width + Guitar1St3.x, Guitar1St1.y, nStaveWidth).setContext(ctx); |
| Guitar1St4.draw(); | | Guitar1St4.draw(); |
|
| |
| const Guitar1_gracenotes4 = [
| |
| new VF.GraceNote({ keys: ['a/4'], duration: '8', slash: true })
| |
| ];
| |
|
| |
| const Guitar1_notes4_1 = [
| |
| new VF.StaveNote({ keys: ["g/4"], duration: "8" }),
| |
| new VF.StaveNote({ keys: ["a/4"], duration: "8" }),
| |
| new VF.StaveNote({ keys: ["g/4"], duration: "8" }),
| |
| new VF.StaveNote({ keys: ["b/4"], duration: "8" }),
| |
| new VF.StaveNote({ keys: ["b/4"], duration: "4" }),
| |
| new VF.StaveNote({ keys: ["b/4"], duration: "16", stem_direction: -1 }),
| |
| new VF.StaveNote({ keys: ["c/5"], duration: "16", stem_direction: -1 }),
| |
| new VF.StaveNote({ keys: ["b/4"], duration: "8", stem_direction: -1 }),
| |
| ];
| |
| const Guitar1_notes4_2 = [
| |
| new VF.GhostNote({ keys: ["f/4"], duration: "16"}),
| |
| new VF.GhostNote({ keys: ["f/4"], duration: "16"}),
| |
| new VF.GhostNote({ keys: ["f/4"], duration: "16"}),
| |
| new VF.GhostNote({ keys: ["f/4"], duration: "16"}),
| |
|
| |
| new VF.GhostNote({ keys: ["f/4"], duration: "16"}),
| |
| new VF.GhostNote({ keys: ["f/4"], duration: "16"}),
| |
| new VF.GhostNote({ keys: ["f/4"], duration: "16"}),
| |
| new VF.GhostNote({ keys: ["f/4"], duration: "16"}),
| |
|
| |
| new VF.GhostNote({ keys: ["f/4"], duration: "16"}),
| |
| new VF.GhostNote({ keys: ["f/4"], duration: "16"}),
| |
| new VF.GhostNote({ keys: ["f/4"], duration: "16"}),
| |
| new VF.GhostNote({ keys: ["f/4"], duration: "16"}),
| |
|
| |
| new VF.GhostNote({ keys: ["f/4"], duration: "16"}),
| |
| new VF.GhostNote({ keys: ["f/4"], duration: "16"}),
| |
| new VF.GhostNote({ keys: ["f/4"], duration: "16"}),
| |
| new VF.GhostNote({ keys: ["f/4"], duration: "16"}),
| |
|
| |
| ];
| |
| Guitar1_notes4_1[7].addModifier(new VF.Articulation('a.').setPosition(3));
| |
| Guitar1_notes4_1[3].addModifier(new VF.GraceNoteGroup(Guitar1_gracenotes4, true), 0);
| |
|
| |
| SteveNoteUniqueIds = getUniqueStaveNotesIds(Guitar1_notes4_1, [0, 1]);
| |
| allFlagUniqueIds = updateAllFlagUniqueIds(SteveNoteUniqueIds);
| |
|
| |
| const Guitar1_beam4_1 = new VF.Beam([Guitar1_notes4_1[2], Guitar1_notes4_1[3]]);
| |
| const Guitar1_beam4_2 = new VF.Beam([Guitar1_notes4_1[5], Guitar1_notes4_1[6], Guitar1_notes4_1[7]]);
| |
|
| |
| var Guitar1_St4_1Voice = new Vex.Flow.Voice({ num_beats: 4, beat_value: 4 });
| |
| Guitar1_St4_1Voice.setStrict(true);
| |
| Guitar1_St4_1Voice.addTickables(Guitar1_notes4_1);
| |
|
| |
| var Guitar1_St4_2Voice = new Vex.Flow.Voice({ num_beats: 4, beat_value: 4 });
| |
| Guitar1_St4_2Voice.setStrict(true);
| |
| Guitar1_St4_2Voice.addTickables(Guitar1_notes4_2);
| |
|
| |
| var formatterGuitar1_St4_1 = new Vex.Flow.Formatter().joinVoices([Guitar1_St4_2Voice, Guitar1_St4_1Voice]);
| |
| formatterGuitar1_St4_1.format([Guitar1_St4_2Voice, Guitar1_St4_1Voice], nStaveWidth - 30);
| |
| Guitar1_St4_1Voice.draw(ctx, Guitar1St4);
| |
| Guitar1_St4_2Voice.draw(ctx, Guitar1St4);
| |
|
| |
| Guitar1_beam4_1.setContext(ctx).draw();
| |
| Guitar1_beam4_2.setContext(ctx).draw();
| |
|
| |
| shiftGuitar1_1 = addShift(
| |
| Guitar1_notes4_1,
| |
| [0, 1],
| |
| [4, 3.5]
| |
| );
| |
|
| |
| const Guitar1_ties4 = [
| |
| new StaveTie({
| |
| first_note: Guitar1_notes4_1[0],
| |
| last_note: Guitar1_notes4_1[1],
| |
| first_indices: [0],
| |
| last_indices: [0],
| |
| }),
| |
| new StaveTie({
| |
| first_note: Guitar1_notes4_1[1],
| |
| last_note: Guitar1_notes4_1[2],
| |
| first_indices: [0],
| |
| last_indices: [0],
| |
| }),
| |
| new StaveTie({
| |
| first_note: Guitar1_notes4_1[3],
| |
| last_note: Guitar1_notes4_1[4],
| |
| first_indices: [0],
| |
| last_indices: [0],
| |
| }),
| |
| new StaveTie({
| |
| first_note: Guitar1_notes4_1[5],
| |
| last_note: Guitar1_notes4_1[6],
| |
| first_indices: [0],
| |
| last_indices: [0],
| |
| }),
| |
| ];
| |
|
| |
| Guitar1_ties4.forEach((t) => {
| |
| t.setContext(ctx).draw();
| |
| });
| |
|
| |
|
|
| |
|
844行目: |
543行目: |
| Guitar1_Tab1_1.setEndBarType(VF.Barline.type.NONE); | | Guitar1_Tab1_1.setEndBarType(VF.Barline.type.NONE); |
| Guitar1_Tab1_1.draw(); | | Guitar1_Tab1_1.draw(); |
|
| |
| const Guitar1_tab_notes1_1 = [
| |
| new VF.GhostNote({ keys: ["a/3", "e/4", "a/4", "c/5"], duration: "2" }),
| |
| new VF.StaveNote({ keys: ["b/4"], duration: "8", stem_direction: -1 }),
| |
| dotted(new VF.StaveNote({ keys: ["f/5"], duration: "4d", stem_direction: -1 })),
| |
| ];
| |
| const Guitar1_tab_notes1_2 = [
| |
| new VF.GhostNote({ keys: ["f/4"], duration: "16"}),
| |
| new VF.GhostNote({ keys: ["f/4"], duration: "16"}),
| |
| new VF.GhostNote({ keys: ["f/4"], duration: "16"}),
| |
| new VF.GhostNote({ keys: ["f/4"], duration: "16"}),
| |
|
| |
| new VF.GhostNote({ keys: ["f/4"], duration: "16"}),
| |
| new VF.GhostNote({ keys: ["f/4"], duration: "16"}),
| |
| new VF.GhostNote({ keys: ["f/4"], duration: "16"}),
| |
| new VF.GhostNote({ keys: ["f/4"], duration: "16"}),
| |
|
| |
| new VF.GhostNote({ keys: ["f/4"], duration: "16"}),
| |
| new VF.GhostNote({ keys: ["f/4"], duration: "16"}),
| |
| new VF.GhostNote({ keys: ["f/4"], duration: "16"}),
| |
| new VF.GhostNote({ keys: ["f/4"], duration: "16"}),
| |
|
| |
| new VF.GhostNote({ keys: ["f/4"], duration: "16"}),
| |
| new VF.GhostNote({ keys: ["f/4"], duration: "16"}),
| |
| new VF.GhostNote({ keys: ["f/4"], duration: "16"}),
| |
| new VF.GhostNote({ keys: ["f/4"], duration: "16"}),
| |
|
| |
| ];
| |
| UniqueIds = getUniqueNoteheadIds(Guitar1_tab_notes1_1, [1, 2]);
| |
| allUniqueIds = updateAllUniqueIds(UniqueIds);
| |
|
| |
| var Guitar1_tab_St1_1Voice = new Vex.Flow.Voice({ num_beats: 4, beat_value: 4 });
| |
| Guitar1_tab_St1_1Voice.setStrict(true);
| |
| Guitar1_tab_St1_1Voice.addTickables(Guitar1_tab_notes1_1);
| |
|
| |
| var Guitar1_tab_St1_2Voice = new Vex.Flow.Voice({ num_beats: 4, beat_value: 4 });
| |
| Guitar1_tab_St1_2Voice.setStrict(true);
| |
| Guitar1_tab_St1_2Voice.addTickables(Guitar1_tab_notes1_2);
| |
|
| |
| var formatterGuitar1_tab_St1_1 = new Vex.Flow.Formatter().joinVoices([Guitar1_tab_St1_2Voice, Guitar1_tab_St1_1Voice]);
| |
| formatterGuitar1_tab_St1_1.format([Guitar1_tab_St1_2Voice, Guitar1_tab_St1_1Voice], nStaveWidth - 20 - 10);
| |
| Guitar1_tab_St1_1Voice.draw(ctx, Guitar1_Tab1_1);
| |
| Guitar1_tab_St1_2Voice.draw(ctx, Guitar1_Tab1_1);
| |
|
| |
| shiftGuitar1_tab1 = addShift(
| |
| Guitar1_tab_notes1_1,
| |
| [0, 0, 0, 0, 1, 2],
| |
| [3, 2, 1, 0, 1, -1]
| |
| );
| |
|
| |
|
| |
|
| |
|
| const Guitar1_Tab2 = new Stave(Guitar1_Tab1.width + Guitar1_Tab1.x, Guitar1_Tab1.y, nStaveWidth).setContext(ctx); | | const Guitar1_Tab2 = new Stave(Guitar1_Tab1.width + Guitar1_Tab1.x, Guitar1_Tab1.y, nStaveWidth).setContext(ctx); |
| Guitar1_Tab2.draw(); | | Guitar1_Tab2.draw(); |
|
| |
| const Guitar1_tab_gracenotes2 = [
| |
| new VF.GraceNote({ keys: ['a/5'], duration: '8', slash: true })
| |
| .addModifier(new VF.Accidental('#'), 0)
| |
| ];
| |
|
| |
| const Guitar1_tab_notes2_1 = [
| |
| new VF.StaveNote({ keys: ["b/4"], duration: "8", stem_direction: -1 })
| |
| .addModifier(new VF.Accidental('n'), 0),
| |
| new VF.StaveNote({ keys: ["b/4"], duration: "8", stem_direction: -1 }),
| |
| new VF.StaveNote({ keys: ["d/5"], duration: "8", stem_direction: -1 }),
| |
| new VF.StaveNote({ keys: ["b/4"], duration: "8", stem_direction: -1 }),
| |
| new VF.StaveNote({ keys: ["f/5"], duration: "8" }),
| |
| new VF.StaveNote({ keys: ["d/5"], duration: "8" }),
| |
| new VF.StaveNote({ keys: ["d/5"], duration: "8" }),
| |
| new VF.StaveNote({ keys: ["b/4"], duration: "8" }),
| |
| ];
| |
| const Guitar1_tab_notes2_2 = [
| |
| new VF.GhostNote({ keys: ["f/4"], duration: "16"}),
| |
| new VF.GhostNote({ keys: ["f/4"], duration: "16"}),
| |
| new VF.GhostNote({ keys: ["f/4"], duration: "16"}),
| |
| new VF.GhostNote({ keys: ["f/4"], duration: "16"}),
| |
|
| |
| new VF.GhostNote({ keys: ["f/4"], duration: "16"}),
| |
| new VF.GhostNote({ keys: ["f/4"], duration: "16"}),
| |
| new VF.GhostNote({ keys: ["f/4"], duration: "16"}),
| |
| new VF.GhostNote({ keys: ["f/4"], duration: "16"}),
| |
|
| |
| new VF.GhostNote({ keys: ["f/4"], duration: "16"}),
| |
| new VF.GhostNote({ keys: ["f/4"], duration: "16"}),
| |
| new VF.GhostNote({ keys: ["f/4"], duration: "16"}),
| |
| new VF.GhostNote({ keys: ["f/4"], duration: "16"}),
| |
|
| |
| new VF.GhostNote({ keys: ["f/4"], duration: "16"}),
| |
| new VF.GhostNote({ keys: ["f/4"], duration: "16"}),
| |
| new VF.GhostNote({ keys: ["f/4"], duration: "16"}),
| |
| new VF.GhostNote({ keys: ["f/4"], duration: "16"}),
| |
|
| |
| ];
| |
| Guitar1_tab_notes2_1[0].addModifier(new VF.GraceNoteGroup(Guitar1_tab_gracenotes2, false), 0);
| |
|
| |
| UniqueIds = getUniqueNoteheadIds(Guitar1_tab_notes2_1, [0, 1, 2, 3, 4, 5, 6, 7]);
| |
| allUniqueIds = updateAllUniqueIds(UniqueIds);
| |
|
| |
| const Guitar1_tab_beam2_1 = new VF.Beam([Guitar1_tab_notes2_1[0], Guitar1_tab_notes2_1[1], Guitar1_tab_notes2_1[2], Guitar1_tab_notes2_1[3]]);
| |
| const Guitar1_tab_beam2_2 = new VF.Beam([Guitar1_tab_notes2_1[4], Guitar1_tab_notes2_1[5], Guitar1_tab_notes2_1[6], Guitar1_tab_notes2_1[7]]);
| |
|
| |
| var Guitar1_tab_St2_1Voice = new Vex.Flow.Voice({ num_beats: 4, beat_value: 4 });
| |
| Guitar1_tab_St2_1Voice.setStrict(true);
| |
| Guitar1_tab_St2_1Voice.addTickables(Guitar1_tab_notes2_1);
| |
|
| |
| var Guitar1_tab_St2_2Voice = new Vex.Flow.Voice({ num_beats: 4, beat_value: 4 });
| |
| Guitar1_tab_St2_2Voice.setStrict(true);
| |
| Guitar1_tab_St2_2Voice.addTickables(Guitar1_tab_notes2_2);
| |
|
| |
| var formatterGuitar1_tab_St2_1 = new Vex.Flow.Formatter().joinVoices([Guitar1_tab_St2_2Voice, Guitar1_tab_St2_1Voice]);
| |
| formatterGuitar1_tab_St2_1.format([Guitar1_tab_St2_2Voice, Guitar1_tab_St2_1Voice], nStaveWidth - 20);
| |
| Guitar1_tab_St2_1Voice.draw(ctx, Guitar1_Tab2);
| |
| Guitar1_tab_St2_2Voice.draw(ctx, Guitar1_Tab2);
| |
|
| |
| shiftGuitar1_tab2 = addShift(
| |
| Guitar1_tab_notes2_1,
| |
| [0, 0, 0, 0, 1, 1, 2, 3, 4, 4, 5, 6, 7],
| |
| [1, 0, 1, 0, 1, 0, 0, 1, 2, 1, 2, 2, 3]
| |
| );
| |
|
| |
| Guitar1_tab_beam2_1.setContext(ctx).draw();
| |
| Guitar1_tab_beam2_2.setContext(ctx).draw();
| |
|
| |
|
| const Guitar1_Tab3 = new Stave(Guitar1_Tab2.width + Guitar1_Tab2.x, Guitar1_Tab1.y, nStaveWidth).setContext(ctx); | | const Guitar1_Tab3 = new Stave(Guitar1_Tab2.width + Guitar1_Tab2.x, Guitar1_Tab1.y, nStaveWidth).setContext(ctx); |
| Guitar1_Tab3.draw(); | | Guitar1_Tab3.draw(); |
|
| |
| const Guitar1_tab_notes3_1 = [
| |
| new VF.StaveNote({ keys: ["d/5"], duration: "16" }),
| |
| new VF.StaveNote({ keys: ["d/5"], duration: "16" }),
| |
| new VF.StaveNote({ keys: ["d/5"], duration: "16" }),
| |
| new VF.StaveNote({ keys: ["d/5"], duration: "16" }),
| |
| new VF.StaveNote({ keys: ["d/5"], duration: "8" }),
| |
| new VF.StaveNote({ keys: ["g/4"], duration: "16" }),
| |
| new VF.StaveNote({ keys: ["g/4"], duration: "16" }),
| |
| new VF.GhostNote({ keys: ["b/4"], duration: "2" }),
| |
| ];
| |
| const Guitar1_tab_notes3_2 = [
| |
| new VF.GhostNote({ keys: ["f/4"], duration: "16"}),
| |
| new VF.GhostNote({ keys: ["f/4"], duration: "16"}),
| |
| new VF.GhostNote({ keys: ["f/4"], duration: "16"}),
| |
| new VF.GhostNote({ keys: ["f/4"], duration: "16"}),
| |
|
| |
| new VF.GhostNote({ keys: ["f/4"], duration: "16"}),
| |
| new VF.GhostNote({ keys: ["f/4"], duration: "16"}),
| |
| new VF.GhostNote({ keys: ["f/4"], duration: "16"}),
| |
| new VF.GhostNote({ keys: ["f/4"], duration: "16"}),
| |
|
| |
| new VF.GhostNote({ keys: ["f/4"], duration: "16"}),
| |
| new VF.GhostNote({ keys: ["f/4"], duration: "16"}),
| |
| new VF.GhostNote({ keys: ["f/4"], duration: "16"}),
| |
| new VF.GhostNote({ keys: ["f/4"], duration: "16"}),
| |
|
| |
| new VF.GhostNote({ keys: ["f/4"], duration: "16"}),
| |
| new VF.GhostNote({ keys: ["f/4"], duration: "16"}),
| |
| new VF.GhostNote({ keys: ["f/4"], duration: "16"}),
| |
| new VF.GhostNote({ keys: ["f/4"], duration: "16"}),
| |
|
| |
| ];
| |
| UniqueIds = getUniqueNoteheadIds(Guitar1_tab_notes3_1, [0, 1, 2, 3, 4, 5, 6, 7]);
| |
| allUniqueIds = updateAllUniqueIds(UniqueIds);
| |
|
| |
| const Guitar1_tab_beam3_1 = new VF.Beam([Guitar1_tab_notes3_1[0], Guitar1_tab_notes3_1[1], Guitar1_tab_notes3_1[2], Guitar1_tab_notes3_1[3]]);
| |
| const Guitar1_tab_beam3_2 = new VF.Beam([Guitar1_tab_notes3_1[4], Guitar1_tab_notes3_1[5], Guitar1_tab_notes3_1[6]]);
| |
|
| |
| var Guitar1_tab_St3_1Voice = new Vex.Flow.Voice({ num_beats: 4, beat_value: 4 });
| |
| Guitar1_tab_St3_1Voice.setStrict(true);
| |
| Guitar1_tab_St3_1Voice.addTickables(Guitar1_tab_notes3_1);
| |
|
| |
| var Guitar1_tab_St3_2Voice = new Vex.Flow.Voice({ num_beats: 4, beat_value: 4 });
| |
| Guitar1_tab_St3_2Voice.setStrict(true);
| |
| Guitar1_tab_St3_2Voice.addTickables(Guitar1_tab_notes3_2);
| |
|
| |
| var formatterGuitar1_tab_St3_1 = new Vex.Flow.Formatter().joinVoices([Guitar1_tab_St3_2Voice, Guitar1_tab_St3_1Voice]);
| |
| formatterGuitar1_tab_St3_1.format([Guitar1_tab_St3_2Voice, Guitar1_tab_St3_1Voice], nStaveWidth - 20);
| |
| Guitar1_tab_St3_1Voice.draw(ctx, Guitar1_Tab3);
| |
| Guitar1_tab_St3_2Voice.draw(ctx, Guitar1_Tab3);
| |
|
| |
| shiftGuitar1_tab3 = addShift(
| |
| Guitar1_tab_notes3_1,
| |
| [0, 1, 2, 3, 4, 5, 6, 7],
| |
| [2, 2, 2, 2, 2, 4, 4, 4]
| |
| );
| |
|
| |
| Guitar1_tab_beam3_1.setContext(ctx).draw();
| |
| Guitar1_tab_beam3_2.setContext(ctx).draw();
| |
|
| |
| var Guitar1_tab_vibrato3 = new VF.VibratoBracket({
| |
| start: Guitar1_tab_notes3_1[7],
| |
| stop: null,
| |
| });
| |
| Guitar1_tab_vibrato3.setLine(1);
| |
| Guitar1_tab_vibrato3.setHarsh(true);
| |
| Guitar1_tab_vibrato3.setContext(ctx).draw();
| |
|
| |
|
| |
|
| |
|
| const Guitar1_Tab4 = new Stave(Guitar1_Tab3.width + Guitar1_Tab3.x, Guitar1_Tab1.y, nStaveWidth).setContext(ctx); | | const Guitar1_Tab4 = new Stave(Guitar1_Tab3.width + Guitar1_Tab3.x, Guitar1_Tab1.y, nStaveWidth).setContext(ctx); |
| Guitar1_Tab4.draw(); | | Guitar1_Tab4.draw(); |
|
| |
| const Guitar1_tab_gracenotes4 = [
| |
| new VF.GraceNote({ keys: ['d/5'], duration: '8', slash: true })
| |
| ];
| |
|
| |
| const Guitar1_tab_notes4_1 = [
| |
| new VF.StaveNote({ keys: ["d/5"], duration: "8" }),
| |
| new VF.StaveNote({ keys: ["d/5"], duration: "8" }),
| |
| new VF.StaveNote({ keys: ["d/5"], duration: "8" }),
| |
| new VF.StaveNote({ keys: ["d/5"], duration: "8" }),
| |
| new VF.StaveNote({ keys: ["d/5"], duration: "4" }),
| |
| new VF.StaveNote({ keys: ["b/4"], duration: "16", stem_direction: -1 }),
| |
| new VF.StaveNote({ keys: ["b/4"], duration: "16", stem_direction: -1 }),
| |
| new VF.StaveNote({ keys: ["b/4"], duration: "8", stem_direction: -1 }),
| |
| ];
| |
| const Guitar1_tab_notes4_2 = [
| |
| new VF.GhostNote({ keys: ["f/4"], duration: "16"}),
| |
| new VF.GhostNote({ keys: ["f/4"], duration: "16"}),
| |
| new VF.GhostNote({ keys: ["f/4"], duration: "16"}),
| |
| new VF.GhostNote({ keys: ["f/4"], duration: "16"}),
| |
|
| |
| new VF.GhostNote({ keys: ["f/4"], duration: "16"}),
| |
| new VF.GhostNote({ keys: ["f/4"], duration: "16"}),
| |
| new VF.GhostNote({ keys: ["f/4"], duration: "16"}),
| |
| new VF.GhostNote({ keys: ["f/4"], duration: "16"}),
| |
|
| |
| new VF.GhostNote({ keys: ["f/4"], duration: "16"}),
| |
| new VF.GhostNote({ keys: ["f/4"], duration: "16"}),
| |
| new VF.GhostNote({ keys: ["f/4"], duration: "16"}),
| |
| new VF.GhostNote({ keys: ["f/4"], duration: "16"}),
| |
|
| |
| new VF.GhostNote({ keys: ["f/4"], duration: "16"}),
| |
| new VF.GhostNote({ keys: ["f/4"], duration: "16"}),
| |
| new VF.GhostNote({ keys: ["f/4"], duration: "16"}),
| |
| new VF.GhostNote({ keys: ["f/4"], duration: "16"}),
| |
|
| |
| ];
| |
| Guitar1_tab_notes4_1[3].addModifier(new VF.GraceNoteGroup(Guitar1_tab_gracenotes4, false), 0);
| |
|
| |
| SteveNoteUniqueIds = getUniqueStaveNotesIds(Guitar1_tab_notes4_1, [0, 1]);
| |
| allFlagUniqueIds = updateAllFlagUniqueIds(SteveNoteUniqueIds);
| |
|
| |
| UniqueIds = getUniqueNoteheadIds(Guitar1_tab_notes4_1, [0, 1, 2, 3, 4, 5, 6, 7]);
| |
| allUniqueIds = updateAllUniqueIds(UniqueIds);
| |
|
| |
| const Guitar1_tab_beam4_1 = new VF.Beam([Guitar1_tab_notes4_1[2], Guitar1_tab_notes4_1[3]]);
| |
| const Guitar1_tab_beam4_2 = new VF.Beam([Guitar1_tab_notes4_1[5], Guitar1_tab_notes4_1[6], Guitar1_tab_notes4_1[7]]);
| |
|
| |
| var Guitar1_tab_St4_1Voice = new Vex.Flow.Voice({ num_beats: 4, beat_value: 4 });
| |
| Guitar1_tab_St4_1Voice.setStrict(true);
| |
| Guitar1_tab_St4_1Voice.addTickables(Guitar1_tab_notes4_1);
| |
|
| |
| var Guitar1_tab_St4_2Voice = new Vex.Flow.Voice({ num_beats: 4, beat_value: 4 });
| |
| Guitar1_tab_St4_2Voice.setStrict(true);
| |
| Guitar1_tab_St4_2Voice.addTickables(Guitar1_tab_notes4_2);
| |
|
| |
| var formatterGuitar1_tab_St4_1 = new Vex.Flow.Formatter().joinVoices([Guitar1_tab_St4_2Voice, Guitar1_tab_St4_1Voice]);
| |
| formatterGuitar1_tab_St4_1.format([Guitar1_tab_St4_2Voice, Guitar1_tab_St4_1Voice], nStaveWidth - 20);
| |
| Guitar1_tab_St4_1Voice.draw(ctx, Guitar1_Tab4);
| |
| Guitar1_tab_St4_2Voice.draw(ctx, Guitar1_Tab4);
| |
|
| |
| shiftGuitar1_tab4 = addShift(
| |
| Guitar1_tab_notes4_1,
| |
| [0, 1, 2, 3, 3, 4, 5, 6, 7, 7],
| |
| [2, 2, 2, 2, 2, 2, 1, 1, 1, 1]
| |
| );
| |
|
| |
| shiftGuitar1_tab4_tr = addShift(
| |
| Guitar1_tab_notes4_1,
| |
| [0, 1],
| |
| [3, 2.5]
| |
| );
| |
|
| |
| Guitar1_tab_beam4_1.setContext(ctx).draw();
| |
| Guitar1_tab_beam4_2.setContext(ctx).draw();
| |
|
| |
|
|
| |
|
1,124行目: |
559行目: |
| Guitar2_St1.addKeySignature('D').setContext(ctx); | | Guitar2_St1.addKeySignature('D').setContext(ctx); |
| Guitar2_St1.draw(); | | Guitar2_St1.draw(); |
|
| |
| const Guitar2_notes1_1 = [
| |
| dotted(new VF.StaveNote({ keys: ["g/4"], duration: "8d" })),
| |
| new VF.StaveNote({ keys: ["g/4"], duration: "16" }),
| |
|
| |
| new VF.StaveNote({ keys: ["g/4"], duration: "8" }),
| |
| new VF.StaveNote({ keys: ["g/4"], duration: "16" }),
| |
| new VF.StaveNote({ keys: ["g/4"], duration: "16" }),
| |
|
| |
| new VF.StaveNote({ keys: ["g/4"], duration: "16" }),
| |
| new VF.StaveNote({ keys: ["g/4"], duration: "16" }),
| |
| new VF.StaveNote({ keys: ["g/4"], duration: "16" }),
| |
| new VF.StaveNote({ keys: ["g/4"], duration: "16" }),
| |
|
| |
| new VF.StaveNote({ keys: ["g/4"], duration: "8" }),
| |
| new VF.StaveNote({ keys: ["g/4"], duration: "8" }),
| |
| ];
| |
| const Guitar2_notes1_2 = [
| |
| new VF.GhostNote({ keys: ["f/4"], duration: "16"}),
| |
| new VF.GhostNote({ keys: ["f/4"], duration: "16"}),
| |
| new VF.GhostNote({ keys: ["f/4"], duration: "16"}),
| |
| new VF.GhostNote({ keys: ["f/4"], duration: "16"}),
| |
|
| |
| new VF.GhostNote({ keys: ["f/4"], duration: "16"}),
| |
| new VF.GhostNote({ keys: ["f/4"], duration: "16"}),
| |
| new VF.GhostNote({ keys: ["f/4"], duration: "16"}),
| |
| new VF.GhostNote({ keys: ["f/4"], duration: "16"}),
| |
|
| |
| new VF.GhostNote({ keys: ["f/4"], duration: "16"}),
| |
| new VF.GhostNote({ keys: ["f/4"], duration: "16"}),
| |
| new VF.GhostNote({ keys: ["f/4"], duration: "16"}),
| |
| new VF.GhostNote({ keys: ["f/4"], duration: "16"}),
| |
|
| |
| new VF.GhostNote({ keys: ["f/4"], duration: "16"}),
| |
| new VF.GhostNote({ keys: ["f/4"], duration: "16"}),
| |
| new VF.GhostNote({ keys: ["f/4"], duration: "16"}),
| |
| new VF.GhostNote({ keys: ["f/4"], duration: "16"}),
| |
|
| |
| ];
| |
| const Guitar2_St1_beam1_1 = new VF.Beam([Guitar2_notes1_1[0], Guitar2_notes1_1[1]]);
| |
| const Guitar2_St1_beam1_2 = new VF.Beam([Guitar2_notes1_1[2], Guitar2_notes1_1[3], Guitar2_notes1_1[4]]);
| |
| const Guitar2_St1_beam1_3 = new VF.Beam([Guitar2_notes1_1[5], Guitar2_notes1_1[6], Guitar2_notes1_1[7], Guitar2_notes1_1[8]]);
| |
| const Guitar2_St1_beam1_4 = new VF.Beam([Guitar2_notes1_1[9], Guitar2_notes1_1[10]]);
| |
|
| |
| UniqueIds = getUniqueNoteheadIds(Guitar2_notes1_1, [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10]);
| |
| allUniqueIds = updateAllUniqueIds(UniqueIds);
| |
|
| |
| var Guitar2_St1_1Voice = new Vex.Flow.Voice({ num_beats: 4, beat_value: 4 });
| |
| Guitar2_St1_1Voice.setStrict(true);
| |
| Guitar2_St1_1Voice.addTickables(Guitar2_notes1_1);
| |
|
| |
| var Guitar2_St1_2Voice = new Vex.Flow.Voice({ num_beats: 4, beat_value: 4 });
| |
| Guitar2_St1_2Voice.setStrict(true);
| |
| Guitar2_St1_2Voice.addTickables(Guitar2_notes1_2);
| |
|
| |
| var formatterGuitar2_St1_1 = new Vex.Flow.Formatter().joinVoices([Guitar2_St1_2Voice, Guitar2_St1_1Voice]);
| |
| formatterGuitar2_St1_1.format([Guitar2_St1_2Voice, Guitar2_St1_1Voice], nStaveWidth - 40 - 10);
| |
| Guitar2_St1_1Voice.draw(ctx, Guitar2_St1);
| |
| Guitar2_St1_2Voice.draw(ctx, Guitar2_St1);
| |
|
| |
| Guitar2_St1_beam1_1.setContext(ctx).draw();
| |
| Guitar2_St1_beam1_2.setContext(ctx).draw();
| |
| Guitar2_St1_beam1_3.setContext(ctx).draw();
| |
| Guitar2_St1_beam1_4.setContext(ctx).draw();
| |
|
| |
| shiftGuitar2_St1 = addShift(
| |
| Guitar2_notes1_1,
| |
| [0, 1, 2, 3, 4, 6, 7, 8, 9, 10],
| |
| [4, 4, 4, 4, 4, 4, 4, 4, 4, 4]
| |
| );
| |
|
| |
|
| |
|
| |
|
| const Guitar2_St2 = new Stave(Guitar2_St1.width + Guitar2_St1.x, Guitar2_St1.y, nStaveWidth).setContext(ctx); | | const Guitar2_St2 = new Stave(Guitar2_St1.width + Guitar2_St1.x, Guitar2_St1.y, nStaveWidth).setContext(ctx); |
1,204行目: |
567行目: |
| Guitar2_St2_1.setEndBarType(VF.Barline.type.NONE); | | Guitar2_St2_1.setEndBarType(VF.Barline.type.NONE); |
| Guitar2_St2_1.draw(); | | Guitar2_St2_1.draw(); |
|
| |
| const Guitar2_notes2_1 = [
| |
| dotted(new VF.StaveNote({ keys: ["c/5"], duration: "8d", stem_direction: -1 })),
| |
| new VF.StaveNote({ keys: ["c/5"], duration: "16", stem_direction: -1 }),
| |
|
| |
| new VF.StaveNote({ keys: ["c/5"], duration: "8", stem_direction: -1 }),
| |
| new VF.StaveNote({ keys: ["c/5"], duration: "16", stem_direction: -1 }),
| |
| new VF.StaveNote({ keys: ["c/5"], duration: "16", stem_direction: -1 }),
| |
|
| |
| new VF.StaveNote({ keys: ["c/5"], duration: "16", stem_direction: -1 }),
| |
| new VF.StaveNote({ keys: ["c/5"], duration: "16", stem_direction: -1 }),
| |
| new VF.StaveNote({ keys: ["c/5"], duration: "16", stem_direction: -1 }),
| |
| new VF.StaveNote({ keys: ["c/5"], duration: "16", stem_direction: -1 }),
| |
|
| |
| new VF.StaveNote({ keys: ["c/5"], duration: "8", stem_direction: -1 }),
| |
| new VF.StaveNote({ keys: ["c/5"], duration: "8", stem_direction: -1 }),
| |
| ];
| |
| const Guitar2_notes2_2 = [
| |
| new VF.GhostNote({ keys: ["f/4"], duration: "16"}),
| |
| new VF.GhostNote({ keys: ["f/4"], duration: "16"}),
| |
| new VF.GhostNote({ keys: ["f/4"], duration: "16"}),
| |
| new VF.GhostNote({ keys: ["f/4"], duration: "16"}),
| |
|
| |
| new VF.GhostNote({ keys: ["f/4"], duration: "16"}),
| |
| new VF.GhostNote({ keys: ["f/4"], duration: "16"}),
| |
| new VF.GhostNote({ keys: ["f/4"], duration: "16"}),
| |
| new VF.GhostNote({ keys: ["f/4"], duration: "16"}),
| |
|
| |
| new VF.GhostNote({ keys: ["f/4"], duration: "16"}),
| |
| new VF.GhostNote({ keys: ["f/4"], duration: "16"}),
| |
| new VF.GhostNote({ keys: ["f/4"], duration: "16"}),
| |
| new VF.GhostNote({ keys: ["f/4"], duration: "16"}),
| |
|
| |
| new VF.GhostNote({ keys: ["f/4"], duration: "16"}),
| |
| new VF.GhostNote({ keys: ["f/4"], duration: "16"}),
| |
| new VF.GhostNote({ keys: ["f/4"], duration: "16"}),
| |
| new VF.GhostNote({ keys: ["f/4"], duration: "16"}),
| |
|
| |
| ];
| |
| const Guitar2_St2_beam1_1 = new VF.Beam([Guitar2_notes2_1[0], Guitar2_notes2_1[1]]);
| |
| const Guitar2_St2_beam1_2 = new VF.Beam([Guitar2_notes2_1[2], Guitar2_notes2_1[3], Guitar2_notes2_1[4]]);
| |
| const Guitar2_St2_beam1_3 = new VF.Beam([Guitar2_notes2_1[5], Guitar2_notes2_1[6], Guitar2_notes2_1[7], Guitar2_notes2_1[8]]);
| |
| const Guitar2_St2_beam1_4 = new VF.Beam([Guitar2_notes2_1[9], Guitar2_notes2_1[10]]);
| |
|
| |
| UniqueIds = getUniqueNoteheadIds(Guitar2_notes2_1, [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10]);
| |
| allUniqueIds = updateAllUniqueIds(UniqueIds);
| |
|
| |
| var Guitar2_St2_1Voice = new Vex.Flow.Voice({ num_beats: 4, beat_value: 4 });
| |
| Guitar2_St2_1Voice.setStrict(true);
| |
| Guitar2_St2_1Voice.addTickables(Guitar2_notes2_1);
| |
|
| |
| var Guitar2_St2_2Voice = new Vex.Flow.Voice({ num_beats: 4, beat_value: 4 });
| |
| Guitar2_St2_2Voice.setStrict(true);
| |
| Guitar2_St2_2Voice.addTickables(Guitar2_notes2_2);
| |
|
| |
| var formatterGuitar2_St2_1 = new Vex.Flow.Formatter().joinVoices([Guitar2_St2_2Voice, Guitar2_St2_1Voice]);
| |
| formatterGuitar2_St2_1.format([Guitar2_St2_2Voice, Guitar2_St2_1Voice], nStaveWidth - 45 - 10);
| |
| Guitar2_St2_1Voice.draw(ctx, Guitar2_St2_1);
| |
| Guitar2_St2_2Voice.draw(ctx, Guitar2_St2_1);
| |
|
| |
| Guitar2_St2_beam1_1.setContext(ctx).draw();
| |
| Guitar2_St2_beam1_2.setContext(ctx).draw();
| |
| Guitar2_St2_beam1_3.setContext(ctx).draw();
| |
| Guitar2_St2_beam1_4.setContext(ctx).draw();
| |
|
| |
| shiftGuitar2_St2 = addShift(
| |
| Guitar2_notes2_1,
| |
| [0, 1, 2, 3, 4, 6, 7, 8, 9, 10],
| |
| [2, 2, 2, 2, 2, 2, 2, 2, 2, 2]
| |
| );
| |
|
| |
|
| |
|
| |
|
|
| |
|
| const Guitar2_St3 = new Stave(Guitar2_St2.width + Guitar2_St2.x, Guitar2_St2.y, nStaveWidth).setContext(ctx); | | const Guitar2_St3 = new Stave(Guitar2_St2.width + Guitar2_St2.x, Guitar2_St2.y, nStaveWidth).setContext(ctx); |
| Guitar2_St3.draw(); | | Guitar2_St3.draw(); |
|
| |
| const Guitar2_notes3_1 = [
| |
| new VF.StaveNote({ keys: ["d/4", "a/4", "d/5", "f/5"], duration: "8" }),
| |
| new VF.StaveNote({ keys: ["f/5"], duration: "8" }),
| |
|
| |
| new VF.StaveNote({ keys: ["f/5"], duration: "8" }),
| |
| new VF.StaveNote({ keys: ["f/5"], duration: "16" }),
| |
| new VF.StaveNote({ keys: ["f/5"], duration: "16" }),
| |
|
| |
| new VF.StaveNote({ keys: ["f/5"], duration: "16" }),
| |
| new VF.StaveNote({ keys: ["f/5"], duration: "16" }),
| |
| new VF.StaveNote({ keys: ["f/5"], duration: "8" }),
| |
|
| |
| new VF.StaveNote({ keys: ["f/5"], duration: "8" }),
| |
| new VF.StaveNote({ keys: ["f/5"], duration: "8" }),
| |
| ];
| |
| const Guitar2_notes3_2 = [
| |
| new VF.GhostNote({ keys: ["f/4"], duration: "16"}),
| |
| new VF.GhostNote({ keys: ["f/4"], duration: "16"}),
| |
| new VF.GhostNote({ keys: ["f/4"], duration: "16"}),
| |
| new VF.GhostNote({ keys: ["f/4"], duration: "16"}),
| |
|
| |
| new VF.GhostNote({ keys: ["f/4"], duration: "16"}),
| |
| new VF.GhostNote({ keys: ["f/4"], duration: "16"}),
| |
| new VF.GhostNote({ keys: ["f/4"], duration: "16"}),
| |
| new VF.GhostNote({ keys: ["f/4"], duration: "16"}),
| |
|
| |
| new VF.GhostNote({ keys: ["f/4"], duration: "16"}),
| |
| new VF.GhostNote({ keys: ["f/4"], duration: "16"}),
| |
| new VF.GhostNote({ keys: ["f/4"], duration: "16"}),
| |
| new VF.GhostNote({ keys: ["f/4"], duration: "16"}),
| |
|
| |
| new VF.GhostNote({ keys: ["f/4"], duration: "16"}),
| |
| new VF.GhostNote({ keys: ["f/4"], duration: "16"}),
| |
| new VF.GhostNote({ keys: ["f/4"], duration: "16"}),
| |
| new VF.GhostNote({ keys: ["f/4"], duration: "16"}),
| |
|
| |
| ];
| |
| const Guitar2_St3_beam1_1 = new VF.Beam([Guitar2_notes3_1[0], Guitar2_notes3_1[1]]);
| |
| const Guitar2_St3_beam1_2 = new VF.Beam([Guitar2_notes3_1[2], Guitar2_notes3_1[3], Guitar2_notes3_1[4]]);
| |
| const Guitar2_St3_beam1_3 = new VF.Beam([Guitar2_notes3_1[5], Guitar2_notes3_1[6], Guitar2_notes3_1[7]]);
| |
| const Guitar2_St3_beam1_4 = new VF.Beam([Guitar2_notes3_1[8], Guitar2_notes3_1[9]]);
| |
|
| |
| UniqueIds = getUniqueNoteheadIds(Guitar2_notes3_1, [1, 2, 3, 4, 5, 6, 7, 8, 9]);
| |
| allUniqueIds = updateAllUniqueIds(UniqueIds);
| |
|
| |
| var Guitar2_St3_1Voice = new Vex.Flow.Voice({ num_beats: 4, beat_value: 4 });
| |
| Guitar2_St3_1Voice.setStrict(true);
| |
| Guitar2_St3_1Voice.addTickables(Guitar2_notes3_1);
| |
|
| |
| var Guitar2_St3_2Voice = new Vex.Flow.Voice({ num_beats: 4, beat_value: 4 });
| |
| Guitar2_St3_2Voice.setStrict(true);
| |
| Guitar2_St3_2Voice.addTickables(Guitar2_notes3_2);
| |
|
| |
| var formatterGuitar2_St3_1 = new Vex.Flow.Formatter().joinVoices([Guitar2_St3_2Voice, Guitar2_St3_1Voice]);
| |
| formatterGuitar2_St3_1.format([Guitar2_St3_2Voice, Guitar2_St3_1Voice], nStaveWidth - 10);
| |
| Guitar2_St3_1Voice.draw(ctx, Guitar2_St3);
| |
| Guitar2_St3_2Voice.draw(ctx, Guitar2_St3);
| |
|
| |
| Guitar2_St3_beam1_1.setContext(ctx).draw();
| |
| Guitar2_St3_beam1_2.setContext(ctx).draw();
| |
| Guitar2_St3_beam1_3.setContext(ctx).draw();
| |
| Guitar2_St3_beam1_4.setContext(ctx).draw();
| |
|
| |
| shiftGuitar2_St3 = addShift(
| |
| Guitar2_notes3_1,
| |
| [0, 1, 2, 3, 4, 6, 7, 8, 9],
| |
| [2, 2, 2, 2, 2, 2, 2, 2, 2]
| |
| );
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
| const Guitar2_St4 = new Stave(Guitar2_St3.width + Guitar2_St3.x, Guitar2_St3.y, nStaveWidth).setContext(ctx); | | const Guitar2_St4 = new Stave(Guitar2_St3.width + Guitar2_St3.x, Guitar2_St3.y, nStaveWidth).setContext(ctx); |
| Guitar2_St4.draw(); | | Guitar2_St4.draw(); |
|
| |
| const Guitar2_notes4_1 = [
| |
| new VF.StaveNote({ keys: ["g/3", "d/4", "g/4", "d/5"], duration: "8" }),
| |
| new VF.StaveNote({ keys: ["d/5"], duration: "8" }),
| |
|
| |
| new VF.StaveNote({ keys: ["d/5"], duration: "8" }),
| |
| new VF.StaveNote({ keys: ["d/5"], duration: "16" }),
| |
| new VF.StaveNote({ keys: ["d/5"], duration: "16" }),
| |
|
| |
| new VF.StaveNote({ keys: ["d/5"], duration: "16" }),
| |
| new VF.StaveNote({ keys: ["d/5"], duration: "16" }),
| |
| new VF.StaveNote({ keys: ["d/5"], duration: "8" }),
| |
|
| |
| new VF.StaveNote({ keys: ["d/5"], duration: "8" }),
| |
| new VF.StaveNote({ keys: ["d/5"], duration: "16" }),
| |
| new VF.StaveNote({ keys: ["d/5"], duration: "16" }),
| |
| ];
| |
| const Guitar2_notes4_2 = [
| |
| new VF.GhostNote({ keys: ["f/4"], duration: "16"}),
| |
| new VF.GhostNote({ keys: ["f/4"], duration: "16"}),
| |
| new VF.GhostNote({ keys: ["f/4"], duration: "16"}),
| |
| new VF.GhostNote({ keys: ["f/4"], duration: "16"}),
| |
|
| |
| new VF.GhostNote({ keys: ["f/4"], duration: "16"}),
| |
| new VF.GhostNote({ keys: ["f/4"], duration: "16"}),
| |
| new VF.GhostNote({ keys: ["f/4"], duration: "16"}),
| |
| new VF.GhostNote({ keys: ["f/4"], duration: "16"}),
| |
|
| |
| new VF.GhostNote({ keys: ["f/4"], duration: "16"}),
| |
| new VF.GhostNote({ keys: ["f/4"], duration: "16"}),
| |
| new VF.GhostNote({ keys: ["f/4"], duration: "16"}),
| |
| new VF.GhostNote({ keys: ["f/4"], duration: "16"}),
| |
|
| |
| new VF.GhostNote({ keys: ["f/4"], duration: "16"}),
| |
| new VF.GhostNote({ keys: ["f/4"], duration: "16"}),
| |
| new VF.GhostNote({ keys: ["f/4"], duration: "16"}),
| |
| new VF.GhostNote({ keys: ["f/4"], duration: "16"}),
| |
|
| |
| ];
| |
| const Guitar2_St4_beam1_1 = new VF.Beam([Guitar2_notes4_1[0], Guitar2_notes4_1[1]]);
| |
| const Guitar2_St4_beam1_2 = new VF.Beam([Guitar2_notes4_1[2], Guitar2_notes4_1[3], Guitar2_notes4_1[4]]);
| |
| const Guitar2_St4_beam1_3 = new VF.Beam([Guitar2_notes4_1[5], Guitar2_notes4_1[6], Guitar2_notes4_1[7]]);
| |
| const Guitar2_St4_beam1_4 = new VF.Beam([Guitar2_notes4_1[8], Guitar2_notes4_1[9], Guitar2_notes4_1[10]]);
| |
|
| |
| UniqueIds = getUniqueNoteheadIds(Guitar2_notes4_1, [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]);
| |
| allUniqueIds = updateAllUniqueIds(UniqueIds);
| |
|
| |
| var Guitar2_St4_1Voice = new Vex.Flow.Voice({ num_beats: 4, beat_value: 4 });
| |
| Guitar2_St4_1Voice.setStrict(true);
| |
| Guitar2_St4_1Voice.addTickables(Guitar2_notes4_1);
| |
|
| |
| var Guitar2_St4_2Voice = new Vex.Flow.Voice({ num_beats: 4, beat_value: 4 });
| |
| Guitar2_St4_2Voice.setStrict(true);
| |
| Guitar2_St4_2Voice.addTickables(Guitar2_notes4_2);
| |
|
| |
| var formatterGuitar2_St4_1 = new Vex.Flow.Formatter().joinVoices([Guitar2_St4_2Voice, Guitar2_St4_1Voice]);
| |
| formatterGuitar2_St4_1.format([Guitar2_St4_2Voice, Guitar2_St4_1Voice], nStaveWidth - 10 - 10);
| |
| Guitar2_St4_1Voice.draw(ctx, Guitar2_St4);
| |
| Guitar2_St4_2Voice.draw(ctx, Guitar2_St4);
| |
|
| |
| Guitar2_St4_beam1_1.setContext(ctx).draw();
| |
| Guitar2_St4_beam1_2.setContext(ctx).draw();
| |
| Guitar2_St4_beam1_3.setContext(ctx).draw();
| |
| Guitar2_St4_beam1_4.setContext(ctx).draw();
| |
|
| |
| shiftGuitar2_St4 = addShift(
| |
| Guitar2_notes4_1,
| |
| [0, 1, 2, 3, 4, 6, 7, 8, 9, 10],
| |
| [2, 2, 2, 2, 2, 2, 2, 2, 2, 2]
| |
| );
| |
|
| |
|
| |
|
| |
|
|
| |
|
1,436行目: |
582行目: |
| const Guitar2_Tab1 = new Stave(Guitar2_St1.x, Guitar2_St1.y + 120, nHeadMargin + nStaveWidth).setContext(ctx); | | const Guitar2_Tab1 = new Stave(Guitar2_St1.x, Guitar2_St1.y + 120, nHeadMargin + nStaveWidth).setContext(ctx); |
| Guitar2_Tab1.draw(); | | Guitar2_Tab1.draw(); |
|
| |
| const Guitar2_tab_notes1_1 = [
| |
| dotted(new VF.StaveNote({ keys: ["b/4"], duration: "8d" })),
| |
| new VF.StaveNote({ keys: ["b/4"], duration: "16" }),
| |
|
| |
| new VF.StaveNote({ keys: ["b/4"], duration: "8" }),
| |
| new VF.StaveNote({ keys: ["b/4"], duration: "16" }),
| |
| new VF.StaveNote({ keys: ["b/4"], duration: "16" }),
| |
|
| |
| new VF.StaveNote({ keys: ["b/4"], duration: "16" }),
| |
| new VF.StaveNote({ keys: ["b/4"], duration: "16" }),
| |
| new VF.StaveNote({ keys: ["b/4"], duration: "16" }),
| |
| new VF.StaveNote({ keys: ["b/4"], duration: "16" }),
| |
|
| |
| new VF.StaveNote({ keys: ["b/4"], duration: "8" }),
| |
| new VF.StaveNote({ keys: ["b/4"], duration: "8" }),
| |
| ];
| |
| const Guitar2_tab_notes1_2 = [
| |
| new VF.GhostNote({ keys: ["f/4"], duration: "16"}),
| |
| new VF.GhostNote({ keys: ["f/4"], duration: "16"}),
| |
| new VF.GhostNote({ keys: ["f/4"], duration: "16"}),
| |
| new VF.GhostNote({ keys: ["f/4"], duration: "16"}),
| |
|
| |
| new VF.GhostNote({ keys: ["f/4"], duration: "16"}),
| |
| new VF.GhostNote({ keys: ["f/4"], duration: "16"}),
| |
| new VF.GhostNote({ keys: ["f/4"], duration: "16"}),
| |
| new VF.GhostNote({ keys: ["f/4"], duration: "16"}),
| |
|
| |
| new VF.GhostNote({ keys: ["f/4"], duration: "16"}),
| |
| new VF.GhostNote({ keys: ["f/4"], duration: "16"}),
| |
| new VF.GhostNote({ keys: ["f/4"], duration: "16"}),
| |
| new VF.GhostNote({ keys: ["f/4"], duration: "16"}),
| |
|
| |
| new VF.GhostNote({ keys: ["f/4"], duration: "16"}),
| |
| new VF.GhostNote({ keys: ["f/4"], duration: "16"}),
| |
| new VF.GhostNote({ keys: ["f/4"], duration: "16"}),
| |
| new VF.GhostNote({ keys: ["f/4"], duration: "16"}),
| |
|
| |
| ];
| |
| const Guitar2_tab_St1_beam1_1 = new VF.Beam([Guitar2_tab_notes1_1[0], Guitar2_tab_notes1_1[1]]);
| |
| const Guitar2_tab_St1_beam1_2 = new VF.Beam([Guitar2_tab_notes1_1[2], Guitar2_tab_notes1_1[3], Guitar2_tab_notes1_1[4]]);
| |
| const Guitar2_tab_St1_beam1_3 = new VF.Beam([Guitar2_tab_notes1_1[5], Guitar2_tab_notes1_1[6], Guitar2_tab_notes1_1[7], Guitar2_tab_notes1_1[8]]);
| |
| const Guitar2_tab_St1_beam1_4 = new VF.Beam([Guitar2_tab_notes1_1[9], Guitar2_tab_notes1_1[10]]);
| |
|
| |
| UniqueIds = getUniqueNoteheadIds(Guitar2_tab_notes1_1, [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10]);
| |
| allUniqueIds = updateAllUniqueIds(UniqueIds);
| |
|
| |
| var Guitar2_tab_St1_1Voice = new Vex.Flow.Voice({ num_beats: 4, beat_value: 4 });
| |
| Guitar2_tab_St1_1Voice.setStrict(true);
| |
| Guitar2_tab_St1_1Voice.addTickables(Guitar2_tab_notes1_1);
| |
|
| |
| var Guitar2_tab_St1_2Voice = new Vex.Flow.Voice({ num_beats: 4, beat_value: 4 });
| |
| Guitar2_tab_St1_2Voice.setStrict(true);
| |
| Guitar2_tab_St1_2Voice.addTickables(Guitar2_tab_notes1_2);
| |
|
| |
| var formatterGuitar2_tab_St1_1 = new Vex.Flow.Formatter().joinVoices([Guitar2_tab_St1_2Voice, Guitar2_tab_St1_1Voice]);
| |
| formatterGuitar2_tab_St1_1.format([Guitar2_tab_St1_2Voice, Guitar2_tab_St1_1Voice], nStaveWidth - 40 - 10);
| |
| Guitar2_tab_St1_1Voice.draw(ctx, Guitar2_Tab1_1);
| |
| Guitar2_tab_St1_2Voice.draw(ctx, Guitar2_Tab1_1);
| |
|
| |
| Guitar2_tab_St1_beam1_1.setContext(ctx).draw();
| |
| Guitar2_tab_St1_beam1_2.setContext(ctx).draw();
| |
| Guitar2_tab_St1_beam1_3.setContext(ctx).draw();
| |
| Guitar2_tab_St1_beam1_4.setContext(ctx).draw();
| |
|
| |
| shiftGuitar2_Tab1 = addShift(
| |
| Guitar2_tab_notes1_1,
| |
| [0, 1, 2, 3, 4, 6, 7, 8, 9, 10],
| |
| [3, 3, 3, 3, 3, 3, 3, 3, 3, 3]
| |
| );
| |
|
| |
|
|
| |
|
1,513行目: |
589行目: |
| const Guitar2_Tab2 = new Stave(Guitar2_Tab1.width + Guitar2_Tab1.x, Guitar2_Tab1.y, nStaveWidth).setContext(ctx); | | const Guitar2_Tab2 = new Stave(Guitar2_Tab1.width + Guitar2_Tab1.x, Guitar2_Tab1.y, nStaveWidth).setContext(ctx); |
| Guitar2_Tab2.draw(); | | Guitar2_Tab2.draw(); |
| | |
|
| |
|
| const Guitar2_Tab2_1 = new Stave(Guitar2_Tab1.width + Guitar2_Tab1.x + 45, Guitar2_Tab1.y, 0).setContext(ctx); | | const Guitar2_Tab2_1 = new Stave(Guitar2_Tab1.width + Guitar2_Tab1.x + 45, Guitar2_Tab1.y, 0).setContext(ctx); |
1,518行目: |
595行目: |
| Guitar2_Tab2_1.setEndBarType(VF.Barline.type.NONE); | | Guitar2_Tab2_1.setEndBarType(VF.Barline.type.NONE); |
| Guitar2_Tab2_1.draw(); | | Guitar2_Tab2_1.draw(); |
|
| |
| const Guitar2_tab_notes2_1 = [
| |
| dotted(new VF.StaveNote({ keys: ["b/4"], duration: "8d", stem_direction: -1 })),
| |
| new VF.StaveNote({ keys: ["b/4"], duration: "16", stem_direction: -1 }),
| |
|
| |
| new VF.StaveNote({ keys: ["b/4"], duration: "8", stem_direction: -1 }),
| |
| new VF.StaveNote({ keys: ["b/4"], duration: "16", stem_direction: -1 }),
| |
| new VF.StaveNote({ keys: ["b/4"], duration: "16", stem_direction: -1 }),
| |
|
| |
| new VF.StaveNote({ keys: ["b/4"], duration: "16", stem_direction: -1 }),
| |
| new VF.StaveNote({ keys: ["b/4"], duration: "16", stem_direction: -1 }),
| |
| new VF.StaveNote({ keys: ["b/4"], duration: "16", stem_direction: -1 }),
| |
| new VF.StaveNote({ keys: ["b/4"], duration: "16", stem_direction: -1 }),
| |
|
| |
| new VF.StaveNote({ keys: ["b/4"], duration: "8", stem_direction: -1 }),
| |
| new VF.StaveNote({ keys: ["b/4"], duration: "8", stem_direction: -1 }),
| |
| ];
| |
| const Guitar2_tab_notes2_2 = [
| |
| new VF.GhostNote({ keys: ["f/4"], duration: "16"}),
| |
| new VF.GhostNote({ keys: ["f/4"], duration: "16"}),
| |
| new VF.GhostNote({ keys: ["f/4"], duration: "16"}),
| |
| new VF.GhostNote({ keys: ["f/4"], duration: "16"}),
| |
|
| |
| new VF.GhostNote({ keys: ["f/4"], duration: "16"}),
| |
| new VF.GhostNote({ keys: ["f/4"], duration: "16"}),
| |
| new VF.GhostNote({ keys: ["f/4"], duration: "16"}),
| |
| new VF.GhostNote({ keys: ["f/4"], duration: "16"}),
| |
|
| |
| new VF.GhostNote({ keys: ["f/4"], duration: "16"}),
| |
| new VF.GhostNote({ keys: ["f/4"], duration: "16"}),
| |
| new VF.GhostNote({ keys: ["f/4"], duration: "16"}),
| |
| new VF.GhostNote({ keys: ["f/4"], duration: "16"}),
| |
|
| |
| new VF.GhostNote({ keys: ["f/4"], duration: "16"}),
| |
| new VF.GhostNote({ keys: ["f/4"], duration: "16"}),
| |
| new VF.GhostNote({ keys: ["f/4"], duration: "16"}),
| |
| new VF.GhostNote({ keys: ["f/4"], duration: "16"}),
| |
|
| |
| ];
| |
| const Guitar2_tab_St2_beam1_1 = new VF.Beam([Guitar2_tab_notes2_1[0], Guitar2_tab_notes2_1[1]]);
| |
| const Guitar2_tab_St2_beam1_2 = new VF.Beam([Guitar2_tab_notes2_1[2], Guitar2_tab_notes2_1[3], Guitar2_tab_notes2_1[4]]);
| |
| const Guitar2_tab_St2_beam1_3 = new VF.Beam([Guitar2_tab_notes2_1[5], Guitar2_tab_notes2_1[6], Guitar2_tab_notes2_1[7], Guitar2_tab_notes2_1[8]]);
| |
| const Guitar2_tab_St2_beam1_4 = new VF.Beam([Guitar2_tab_notes2_1[9], Guitar2_tab_notes2_1[10]]);
| |
|
| |
| UniqueIds = getUniqueNoteheadIds(Guitar2_tab_notes2_1, [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10]);
| |
| allUniqueIds = updateAllUniqueIds(UniqueIds);
| |
|
| |
| var Guitar2_tab_St2_1Voice = new Vex.Flow.Voice({ num_beats: 4, beat_value: 4 });
| |
| Guitar2_tab_St2_1Voice.setStrict(true);
| |
| Guitar2_tab_St2_1Voice.addTickables(Guitar2_tab_notes2_1);
| |
|
| |
| var Guitar2_tab_St2_2Voice = new Vex.Flow.Voice({ num_beats: 4, beat_value: 4 });
| |
| Guitar2_tab_St2_2Voice.setStrict(true);
| |
| Guitar2_tab_St2_2Voice.addTickables(Guitar2_tab_notes2_2);
| |
|
| |
| var formatterGuitar2_tab_St2_1 = new Vex.Flow.Formatter().joinVoices([Guitar2_tab_St2_2Voice, Guitar2_tab_St2_1Voice]);
| |
| formatterGuitar2_tab_St2_1.format([Guitar2_tab_St2_2Voice, Guitar2_tab_St2_1Voice], nStaveWidth - 40 - 10);
| |
| Guitar2_tab_St2_1Voice.draw(ctx, Guitar2_Tab2_1);
| |
| Guitar2_tab_St2_2Voice.draw(ctx, Guitar2_Tab2_1);
| |
|
| |
| Guitar2_tab_St2_beam1_1.setContext(ctx).draw();
| |
| Guitar2_tab_St2_beam1_2.setContext(ctx).draw();
| |
| Guitar2_tab_St2_beam1_3.setContext(ctx).draw();
| |
| Guitar2_tab_St2_beam1_4.setContext(ctx).draw();
| |
|
| |
| shiftGuitar2_Tab2 = addShift(
| |
| Guitar2_tab_notes2_1,
| |
| [0, 1, 2, 3, 4, 6, 7, 8, 9, 10],
| |
| [2, 2, 2, 2, 2, 2, 2, 2, 2, 2]
| |
| );
| |
|
| |
|
| |
|
| |
|
|
| |
|
| const Guitar2_Tab3 = new Stave(Guitar2_Tab2.width + Guitar2_Tab2.x, Guitar2_Tab2.y, nStaveWidth).setContext(ctx); | | const Guitar2_Tab3 = new Stave(Guitar2_Tab2.width + Guitar2_Tab2.x, Guitar2_Tab2.y, nStaveWidth).setContext(ctx); |
| Guitar2_Tab3.draw(); | | Guitar2_Tab3.draw(); |
|
| |
| const Guitar2_tab_notes3_1 = [
| |
| new VF.StaveNote({ keys: ["b/5"], duration: "8" }),
| |
| new VF.StaveNote({ keys: ["b/5"], duration: "8" }),
| |
|
| |
| new VF.StaveNote({ keys: ["b/5"], duration: "8" }),
| |
| new VF.StaveNote({ keys: ["b/5"], duration: "16" }),
| |
| new VF.StaveNote({ keys: ["b/5"], duration: "16" }),
| |
|
| |
| new VF.StaveNote({ keys: ["b/5"], duration: "16" }),
| |
| new VF.StaveNote({ keys: ["b/5"], duration: "16" }),
| |
| new VF.StaveNote({ keys: ["b/5"], duration: "8" }),
| |
|
| |
| new VF.StaveNote({ keys: ["b/5"], duration: "8" }),
| |
| new VF.StaveNote({ keys: ["b/5"], duration: "8" }),
| |
| ];
| |
| const Guitar2_tab_notes3_2 = [
| |
| new VF.GhostNote({ keys: ["f/4"], duration: "16"}),
| |
| new VF.GhostNote({ keys: ["f/4"], duration: "16"}),
| |
| new VF.GhostNote({ keys: ["f/4"], duration: "16"}),
| |
| new VF.GhostNote({ keys: ["f/4"], duration: "16"}),
| |
|
| |
| new VF.GhostNote({ keys: ["f/4"], duration: "16"}),
| |
| new VF.GhostNote({ keys: ["f/4"], duration: "16"}),
| |
| new VF.GhostNote({ keys: ["f/4"], duration: "16"}),
| |
| new VF.GhostNote({ keys: ["f/4"], duration: "16"}),
| |
|
| |
| new VF.GhostNote({ keys: ["f/4"], duration: "16"}),
| |
| new VF.GhostNote({ keys: ["f/4"], duration: "16"}),
| |
| new VF.GhostNote({ keys: ["f/4"], duration: "16"}),
| |
| new VF.GhostNote({ keys: ["f/4"], duration: "16"}),
| |
|
| |
| new VF.GhostNote({ keys: ["f/4"], duration: "16"}),
| |
| new VF.GhostNote({ keys: ["f/4"], duration: "16"}),
| |
| new VF.GhostNote({ keys: ["f/4"], duration: "16"}),
| |
| new VF.GhostNote({ keys: ["f/4"], duration: "16"}),
| |
|
| |
| ];
| |
| const Guitar2_tab_St3_beam1_1 = new VF.Beam([Guitar2_tab_notes3_1[0], Guitar2_tab_notes3_1[1]]);
| |
| const Guitar2_tab_St3_beam1_2 = new VF.Beam([Guitar2_tab_notes3_1[2], Guitar2_tab_notes3_1[3], Guitar2_tab_notes3_1[4]]);
| |
| const Guitar2_tab_St3_beam1_3 = new VF.Beam([Guitar2_tab_notes3_1[5], Guitar2_tab_notes3_1[6], Guitar2_tab_notes3_1[7]]);
| |
| const Guitar2_tab_St3_beam1_4 = new VF.Beam([Guitar2_tab_notes3_1[8], Guitar2_tab_notes3_1[9]]);
| |
|
| |
| UniqueIds = getUniqueNoteheadIds(Guitar2_tab_notes3_1, [0, 1, 2, 3, 4, 5, 6, 7, 8, 9]);
| |
| allUniqueIds = updateAllUniqueIds(UniqueIds);
| |
|
| |
| var Guitar2_tab_St3_1Voice = new Vex.Flow.Voice({ num_beats: 4, beat_value: 4 });
| |
| Guitar2_tab_St3_1Voice.setStrict(true);
| |
| Guitar2_tab_St3_1Voice.addTickables(Guitar2_tab_notes3_1);
| |
|
| |
| var Guitar2_tab_St3_2Voice = new Vex.Flow.Voice({ num_beats: 4, beat_value: 4 });
| |
| Guitar2_tab_St3_2Voice.setStrict(true);
| |
| Guitar2_tab_St3_2Voice.addTickables(Guitar2_tab_notes3_2);
| |
|
| |
| var formatterGuitar2_tab_St3_1 = new Vex.Flow.Formatter().joinVoices([Guitar2_tab_St3_2Voice, Guitar2_tab_St3_1Voice]);
| |
| formatterGuitar2_tab_St3_1.format([Guitar2_tab_St3_2Voice, Guitar2_tab_St3_1Voice], nStaveWidth - 10);
| |
| Guitar2_tab_St3_1Voice.draw(ctx, Guitar2_Tab3);
| |
| Guitar2_tab_St3_2Voice.draw(ctx, Guitar2_Tab3);
| |
|
| |
| Guitar2_tab_St3_beam1_1.setContext(ctx).draw();
| |
| Guitar2_tab_St3_beam1_2.setContext(ctx).draw();
| |
| Guitar2_tab_St3_beam1_3.setContext(ctx).draw();
| |
| Guitar2_tab_St3_beam1_4.setContext(ctx).draw();
| |
|
| |
| shiftGuitar2_Tab3 = addShift(
| |
| Guitar2_tab_notes3_1,
| |
| [ 0, 0, 0, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9],
| |
| [-1, 0, 1, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2]
| |
| );
| |
|
| |
|
| |
|
|
| |
|
| const Guitar2_Tab4 = new Stave(Guitar2_Tab3.width + Guitar2_Tab3.x, Guitar2_Tab3.y, nStaveWidth).setContext(ctx); | | const Guitar2_Tab4 = new Stave(Guitar2_Tab3.width + Guitar2_Tab3.x, Guitar2_Tab3.y, nStaveWidth).setContext(ctx); |
| Guitar2_Tab4.draw(); | | Guitar2_Tab4.draw(); |
|
| |
| const Guitar2_tab_notes4_1 = [
| |
| new VF.StaveNote({ keys: ["g/5"], duration: "8" }),
| |
| new VF.StaveNote({ keys: ["g/5"], duration: "8" }),
| |
|
| |
| new VF.StaveNote({ keys: ["g/5"], duration: "8" }),
| |
| new VF.StaveNote({ keys: ["g/5"], duration: "16" }),
| |
| new VF.StaveNote({ keys: ["g/5"], duration: "16" }),
| |
|
| |
| new VF.StaveNote({ keys: ["g/5"], duration: "16" }),
| |
| new VF.StaveNote({ keys: ["g/5"], duration: "16" }),
| |
| new VF.StaveNote({ keys: ["g/5"], duration: "8" }),
| |
|
| |
| new VF.StaveNote({ keys: ["g/5"], duration: "8" }),
| |
| new VF.StaveNote({ keys: ["g/5"], duration: "16" }),
| |
| new VF.StaveNote({ keys: ["g/5"], duration: "16" }),
| |
| ];
| |
| const Guitar2_tab_notes4_2 = [
| |
| new VF.GhostNote({ keys: ["f/4"], duration: "16"}),
| |
| new VF.GhostNote({ keys: ["f/4"], duration: "16"}),
| |
| new VF.GhostNote({ keys: ["f/4"], duration: "16"}),
| |
| new VF.GhostNote({ keys: ["f/4"], duration: "16"}),
| |
|
| |
| new VF.GhostNote({ keys: ["f/4"], duration: "16"}),
| |
| new VF.GhostNote({ keys: ["f/4"], duration: "16"}),
| |
| new VF.GhostNote({ keys: ["f/4"], duration: "16"}),
| |
| new VF.GhostNote({ keys: ["f/4"], duration: "16"}),
| |
|
| |
| new VF.GhostNote({ keys: ["f/4"], duration: "16"}),
| |
| new VF.GhostNote({ keys: ["f/4"], duration: "16"}),
| |
| new VF.GhostNote({ keys: ["f/4"], duration: "16"}),
| |
| new VF.GhostNote({ keys: ["f/4"], duration: "16"}),
| |
|
| |
| new VF.GhostNote({ keys: ["f/4"], duration: "16"}),
| |
| new VF.GhostNote({ keys: ["f/4"], duration: "16"}),
| |
| new VF.GhostNote({ keys: ["f/4"], duration: "16"}),
| |
| new VF.GhostNote({ keys: ["f/4"], duration: "16"}),
| |
|
| |
| ];
| |
| const Guitar2_tab_St4_beam1_1 = new VF.Beam([Guitar2_tab_notes4_1[0], Guitar2_tab_notes4_1[1]]);
| |
| const Guitar2_tab_St4_beam1_2 = new VF.Beam([Guitar2_tab_notes4_1[2], Guitar2_tab_notes4_1[3], Guitar2_tab_notes4_1[4]]);
| |
| const Guitar2_tab_St4_beam1_3 = new VF.Beam([Guitar2_tab_notes4_1[5], Guitar2_tab_notes4_1[6], Guitar2_tab_notes4_1[7]]);
| |
| const Guitar2_tab_St4_beam1_4 = new VF.Beam([Guitar2_tab_notes4_1[8], Guitar2_tab_notes4_1[9], Guitar2_tab_notes4_1[10]]);
| |
|
| |
| UniqueIds = getUniqueNoteheadIds(Guitar2_tab_notes4_1, [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10]);
| |
| allUniqueIds = updateAllUniqueIds(UniqueIds);
| |
|
| |
| var Guitar2_tab_St4_1Voice = new Vex.Flow.Voice({ num_beats: 4, beat_value: 4 });
| |
| Guitar2_tab_St4_1Voice.setStrict(true);
| |
| Guitar2_tab_St4_1Voice.addTickables(Guitar2_tab_notes4_1);
| |
|
| |
| var Guitar2_tab_St4_2Voice = new Vex.Flow.Voice({ num_beats: 4, beat_value: 4 });
| |
| Guitar2_tab_St4_2Voice.setStrict(true);
| |
| Guitar2_tab_St4_2Voice.addTickables(Guitar2_tab_notes4_2);
| |
|
| |
| var formatterGuitar2_tab_St4_1 = new Vex.Flow.Formatter().joinVoices([Guitar2_tab_St4_2Voice, Guitar2_tab_St4_1Voice]);
| |
| formatterGuitar2_tab_St4_1.format([Guitar2_tab_St4_2Voice, Guitar2_tab_St4_1Voice], nStaveWidth - 10 - 10);
| |
| Guitar2_tab_St4_1Voice.draw(ctx, Guitar2_Tab4);
| |
| Guitar2_tab_St4_2Voice.draw(ctx, Guitar2_Tab4);
| |
|
| |
| Guitar2_tab_St4_beam1_1.setContext(ctx).draw();
| |
| Guitar2_tab_St4_beam1_2.setContext(ctx).draw();
| |
| Guitar2_tab_St4_beam1_3.setContext(ctx).draw();
| |
| Guitar2_tab_St4_beam1_4.setContext(ctx).draw();
| |
|
| |
| shiftGuitar2_Tab4 = addShift(
| |
| Guitar2_tab_notes4_1,
| |
| [0, 0, 0, 0, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10],
| |
| [0, 1, 2, 3, 4, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2]
| |
| );
| |
|
| |
|
| |
|
| |
|
|
| |
|
1,859行目: |
722行目: |
| Drum_St1_1.setEndBarType(VF.Barline.type.NONE); | | Drum_St1_1.setEndBarType(VF.Barline.type.NONE); |
| Drum_St1_1.draw(); | | Drum_St1_1.draw(); |
|
| |
| const Drum_notes1_1 = [
| |
| new StaveNote({ keys: ["f/4"], duration: "4", stem_direction: -1 }),
| |
| new StaveNote({ keys: ["c/4"], duration: "4r" }),
| |
| new StaveNote({ keys: ["c/4"], duration: "8r" }),
| |
| new StaveNote({ keys: ["f/4"], duration: "8", stem_direction: -1 }),
| |
| new StaveNote({ keys: ["c/4"], duration: "8r" }),
| |
| new StaveNote({ keys: ["f/4"], duration: "8", stem_direction: -1 })
| |
| ];
| |
| const Drum_beam1_1 = new VF.Beam([Drum_notes1_1[3],Drum_notes1_1[5]]);
| |
|
| |
| var Drum_St1_1Voice = new Vex.Flow.Voice({ num_beats: 4, beat_value: 4 });
| |
| Drum_St1_1Voice.setStrict(true);
| |
| Drum_St1_1Voice.addTickables(Drum_notes1_1);
| |
|
| |
|
| const Drum_St1_2 = new Stave(nHeadMargin + Base_Tab1.x, Base_Tab1.y + 120, 0).setContext(ctx); | | const Drum_St1_2 = new Stave(nHeadMargin + Base_Tab1.x, Base_Tab1.y + 120, 0).setContext(ctx); |
1,878行目: |
727行目: |
| Drum_St1_2.setEndBarType(VF.Barline.type.NONE); | | Drum_St1_2.setEndBarType(VF.Barline.type.NONE); |
| Drum_St1_2.draw(); | | Drum_St1_2.draw(); |
|
| |
| const Drum_notes1_2 = [
| |
| new VF.StaveNote({ keys: ["g/5"], duration: "8", stem_direction: 1 }),
| |
| new VF.StaveNote({ keys: ["g/5"], duration: "8", stem_direction: 1 }),
| |
| new VF.StaveNote({ keys: ["c/5"], duration: "8", stem_direction: 1 }),
| |
| new VF.StaveNote({ keys: ["g/5"], duration: "16", stem_direction: 1 }),
| |
| new VF.StaveNote({ keys: ["c/5"], duration: "16", stem_direction: 1 }),
| |
| new VF.StaveNote({ keys: ["g/5"], duration: "8", stem_direction: 1 }),
| |
| new VF.StaveNote({ keys: ["g/5"], duration: "8", stem_direction: 1 }),
| |
| new VF.StaveNote({ keys: ["c/5"], duration: "8", stem_direction: 1 }),
| |
| new VF.StaveNote({ keys: ["g/5"], duration: "8", stem_direction: 1 })
| |
| ];
| |
|
| |
| const Drum_notes1_3 = [
| |
| new VF.GhostNote({ keys: ["a/5"], duration: "16", stem_direction: 1 }),
| |
| new VF.GhostNote({ keys: ["a/5"], duration: "16", stem_direction: 1 }),
| |
| new VF.GhostNote({ keys: ["a/5"], duration: "16", stem_direction: 1 }),
| |
| new VF.GhostNote({ keys: ["a/5"], duration: "16", stem_direction: 1 }),
| |
|
| |
| new VF.GhostNote({ keys: ["a/5"], duration: "16", stem_direction: 1 }),
| |
| new VF.GhostNote({ keys: ["a/5"], duration: "16", stem_direction: 1 }),
| |
| new VF.GhostNote({ keys: ["a/5"], duration: "16", stem_direction: 1 }),
| |
| new VF.GhostNote({ keys: ["a/5"], duration: "16", stem_direction: 1 }),
| |
|
| |
| new VF.GhostNote({ keys: ["a/5"], duration: "16", stem_direction: 1 }),
| |
| new VF.GhostNote({ keys: ["a/5"], duration: "16", stem_direction: 1 }),
| |
| new VF.GhostNote({ keys: ["a/5"], duration: "16", stem_direction: 1 }),
| |
| new VF.GhostNote({ keys: ["a/5"], duration: "16", stem_direction: 1 }),
| |
|
| |
| new VF.GhostNote({ keys: ["a/5"], duration: "16", stem_direction: 1 }),
| |
| new VF.GhostNote({ keys: ["a/5"], duration: "16", stem_direction: 1 }),
| |
| new VF.GhostNote({ keys: ["a/5"], duration: "16", stem_direction: 1 }),
| |
| new VF.GhostNote({ keys: ["a/5"], duration: "16", stem_direction: 1 })
| |
| ];
| |
|
| |
| UniqueIds = getUniqueNoteheadIds(Drum_notes1_2, [0, 1, 3, 5, 6, 8]);
| |
| allUniqueIds = updateAllUniqueIds(UniqueIds);
| |
|
| |
| const Drum_beam1_2_1 = new VF.Beam([Drum_notes1_2[0], Drum_notes1_2[1]]);
| |
| const Drum_beam1_2_2 = new VF.Beam([Drum_notes1_2[2], Drum_notes1_2[3], Drum_notes1_2[4]]);
| |
| const Drum_beam1_2_3 = new VF.Beam([Drum_notes1_2[5], Drum_notes1_2[6], Drum_notes1_2[7], Drum_notes1_2[8]]);
| |
|
| |
| var Drum_St1_2Voice = new Vex.Flow.Voice({ num_beats: 4, beat_value: 4 });
| |
| Drum_St1_2Voice.setStrict(true);
| |
| Drum_St1_2Voice.addTickables(Drum_notes1_2);
| |
|
| |
| var Drum_St1_3Voice = new Vex.Flow.Voice({ num_beats: 4, beat_value: 4 });
| |
| Drum_St1_3Voice.setStrict(true);
| |
| Drum_St1_3Voice.addTickables(Drum_notes1_3);
| |
|
| |
| var formatterDrum_St1_2 = new Vex.Flow.Formatter().joinVoices([Drum_St1_3Voice, Drum_St1_1Voice, Drum_St1_2Voice]);
| |
| //formatter13_2.formatToStave([stave13_3Voice, stave13_1Voice, stave13_2Voice], stave13_2);
| |
| formatterDrum_St1_2.format([Drum_St1_3Voice, Drum_St1_1Voice, Drum_St1_2Voice], nStaveWidth - 30);
| |
| Drum_St1_1Voice.draw(ctx, Drum_St1_2);
| |
| Drum_St1_2Voice.draw(ctx, Drum_St1_2);
| |
|
| |
| Drum_beam1_1.setContext(ctx).draw();
| |
|
| |
| Drum_beam1_2_1.setContext(ctx).draw();
| |
| Drum_beam1_2_2.setContext(ctx).draw();
| |
| Drum_beam1_2_3.setContext(ctx).draw();
| |
|
| |
| shiftDrum1 = addShift(
| |
| Drum_notes1_2,
| |
| [0, 1, 2, 3, 5, 5, 6, 6, 7, 7, 8, 8],
| |
| [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1]
| |
| );
| |
|
| |
|
| |
|
| const Drum_St2 = new Stave(Drum_St1.width + Drum_St1.x, Drum_St1.y, nStaveWidth).setContext(ctx); | | const Drum_St2 = new Stave(Drum_St1.width + Drum_St1.x, Drum_St1.y, nStaveWidth).setContext(ctx); |
1,982行目: |
763行目: |
| AllConnector.draw(); | | AllConnector.draw(); |
|
| |
|
| const Perc_notes1_1 = [
| |
| new VF.StaveNote({ keys: ["a/4"], duration: "16", stem_direction: -1 }),
| |
| new VF.StaveNote({ keys: ["a/4"], duration: "16", stem_direction: -1 }),
| |
| new VF.StaveNote({ keys: ["a/4"], duration: "16", stem_direction: -1 }),
| |
| new VF.StaveNote({ keys: ["a/4"], duration: "16", stem_direction: -1 }),
| |
|
| |
| new VF.StaveNote({ keys: ["a/4"], duration: "16", stem_direction: -1 }),
| |
| new VF.StaveNote({ keys: ["a/4"], duration: "16", stem_direction: -1 }),
| |
| new VF.StaveNote({ keys: ["a/4"], duration: "16", stem_direction: -1 }),
| |
| new VF.StaveNote({ keys: ["a/4"], duration: "16", stem_direction: -1 }),
| |
|
| |
| new VF.StaveNote({ keys: ["a/4"], duration: "16", stem_direction: -1 }),
| |
| new VF.StaveNote({ keys: ["a/4"], duration: "16", stem_direction: -1 }),
| |
| new VF.StaveNote({ keys: ["a/4"], duration: "16", stem_direction: -1 }),
| |
| new VF.StaveNote({ keys: ["a/4"], duration: "16", stem_direction: -1 }),
| |
|
| |
| new VF.StaveNote({ keys: ["a/4"], duration: "16", stem_direction: -1 }),
| |
| new VF.StaveNote({ keys: ["a/4"], duration: "16", stem_direction: -1 }),
| |
| new VF.StaveNote({ keys: ["a/4"], duration: "16", stem_direction: -1 }),
| |
| new VF.StaveNote({ keys: ["a/4"], duration: "16", stem_direction: -1 })
| |
| ];
| |
| UniqueIds = getUniqueNoteheadIds(Perc_notes1_1, [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15]);
| |
| allUniqueIds = updateAllUniqueIds(UniqueIds);
| |
|
| |
| const Perc_beam1_1_1 = new VF.Beam([Perc_notes1_1[0], Perc_notes1_1[1], Perc_notes1_1[2], Perc_notes1_1[3]]);
| |
| const Perc_beam1_1_2 = new VF.Beam([Perc_notes1_1[4], Perc_notes1_1[5], Perc_notes1_1[6], Perc_notes1_1[7]]);
| |
| const Perc_beam1_1_3 = new VF.Beam([Perc_notes1_1[8], Perc_notes1_1[9], Perc_notes1_1[10], Perc_notes1_1[11]]);
| |
| const Perc_beam1_1_4 = new VF.Beam([Perc_notes1_1[12], Perc_notes1_1[13], Perc_notes1_1[14], Perc_notes1_1[15]]);
| |
|
| |
| var Perc_St1_1Voice = new Vex.Flow.Voice({ num_beats: 4, beat_value: 4 });
| |
| Perc_St1_1Voice.setStrict(true);
| |
| Perc_St1_1Voice.addTickables(Perc_notes1_1);
| |
|
| |
| var formatterPerc_St1_1 = new Vex.Flow.Formatter().joinVoices([Perc_St1_1Voice]);
| |
| //formatterPerc_St1_1.formatToStave([stave17_1Voice], Perc_St1_1);
| |
| formatterPerc_St1_1.format([Perc_St1_1Voice], nStaveWidth - 30);
| |
| Perc_St1_1Voice.draw(ctx, Perc_St1_1);
| |
|
| |
| Perc_beam1_1_1.setContext(ctx).draw();
| |
| Perc_beam1_1_2.setContext(ctx).draw();
| |
| Perc_beam1_1_3.setContext(ctx).draw();
| |
| Perc_beam1_1_4.setContext(ctx).draw();
| |
|
| |
| Perc_note1_1_0.x = Perc_notes1_1[0].getAbsoluteX();
| |
| Perc_note1_1_0.y = Perc_notes1_1[0].getStave().getYForLine(1);
| |
|
| |
| shiftPerc1 = addShift(
| |
| Perc_notes1_1,
| |
| [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15],
| |
| [4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4]
| |
| );
| |
|
| |
|
| const Perc_St2 = new Stave(Perc_St1.width + Perc_St1.x, Perc_St1.y, nStaveWidth).setContext(ctx); | | const Perc_St2 = new Stave(Perc_St1.width + Perc_St1.x, Perc_St1.y, nStaveWidth).setContext(ctx); |