Scripting: Cursor.add(chord) über Taktgrenze hinweg geht nicht

• 12. Mär 2012 - 14:51

Hi ich will ein PluginScript schreiben, das mit 4 "Voice" Stimmen arbeitet, die jeweils eine eigene Notenzeile bekommen, und wenn ich zB.
bei 4/4 Takt händisch eine 1/4 Note und dann eine Ganze Note eingebe,
dann macht MuseScore richtigerweise eine 1/4 Note, eine punktierte Halbe, und mittels Bindebogen verbunden, eine weitere 1/4 Note im nächsten Takt.

Wenn ich dasselbe mit JavaScript Interface machen will
Also:

function test()
{
    var score   = curScore;
    var cursor = new Cursor(score);
 
	cursor.staff = 2;
	cursor.voice = 0;
	cursor.rewind();
	var len = 440; // 1/4 Note
	var chord     = new Chord();
	chord.tickLen = len;
	var note      = new Note();
	note.pitch    = 72; // C
	chord.addNote(note);
	cursor.add(chord);
	var t = cursor.tick() + len;
	while(cursor.tick() < t)
		cursor.next();
 
	var len = 1920; // 1/1 Note
	var chord     = new Chord();
	chord.tickLen = len;
	var note      = new Note();
	note.pitch    = 72; // C
	chord.addNote(note);
	cursor.add(chord);
}

dann funktioniert das nicht.

Wie kann ich mit JavaScript beliebige Noten über Taktegrenzen hinweg eingeben?
MfG
Mark


Comments

Do you still have an unanswered question? Please log in first to post your question.