3.1 Übersicht über den Programmaufbau 69 Tabelle 3.1: Die Rangfolge der verschiedenen Symbole bei gleicher Einsatzzeit. Je größer der Rang, desto weiter links wird das zugehörige Sym-bol Rang Symbol 9 Bogenende 8 Balkenende 7 Schlüssel 6 Taktstrich 5 Tonartvorzeichen 4 Taktartangabe 3 Balkenanfang 2 Bogenanfang 1 Akkorde und Pausen angeordnet. noch unklar. Im einfachsten Fall kann dem Autoren die Festlegung der Reihenfolge überlassen werden und der Generator überträgt die Symbolreihenfolge des Einga-becodes auf die zu erzeugende Graphik. Aufgrund dieser Freiheit sind zwangsläufig fehlerhafte Notenbilder, die nicht zuletzt auf geringen Notensatzkenntnissen oder sich schnell einschleichenden Codierfehlern beruhen können, nicht auszuschließen. Zweckmäßiger scheint deshalb die Berücksichtigung der üblichen innerzeitlichen Symbolverteilung. Zum Beispiel erscheint ein Notenschlüssel üblicherweise vor den Tonartvorzeichen und diese wiederum vor einer Taktartangabe. Bei Schlüssel- oder Taktartwechseln wird die neue Taktart erst nach dem Taktstrich angezeigt, wäh-rend der neue Schlüssel davor erscheint. Insgesamt ergibt sich aus diesen Beziehun-gen eine Rangfolge, welche die Sortierung aller zeitgleichen Symbole erlaubt (vgl. Tabelle 3.1), so daß unabhängig von der codierten Reihenfolge stets eine korrekte Symbolanordnung möglich wird. Zusammenfassend kann damit festgehalten wer-den, daß die horizontale Koordinierung der Symbole durch ihre Aneinanderrei-hung in einem Notensystemobjekt realisiert und die vertikale Zusammengehörig-keit durch identische Zeitstempel ausgedrückt wird. Die Grundlage zur Notenbild-generierung und damit zur Berechnung der genauen Symbolpositionen, dem wohl komplexesten Bereich jedes Notenmoduls, ist damit geschaffen. 3.1.3 Wechselseitige Abhängigkeiten notengraphischer Parameter Bevor die Algorithmen zur genauen Positionierung der verschiedenen Notations-elemente entworfen werden können, ist es wichtig, sich einen Überblick über ihre gegenseitigen Abhängigkeiten zu verschaffen und diese auf geeignete Weise in die Positionierungsalgorithmen zu integrieren. Wie beim manuellen Notenstechen ist es auch beim computergenerierten Notensatz keineswegs gleichgültig, welche Nota-tionselemente zuerst ihre endgültige Position erhalten. Solange z.B. Halsrichtungen und Balkenpositionen nicht ermittelt sind, können keine Bögen gezeichnet werden, da sie sich an schon berechneten Parametern orientieren und somit von ihnen ab-hängig sind. Ebenso können Balken erst nach der endgültigen Akkordplazierung gesetzt werden, welcher wiederum die Taktverteilung auf mehrere Systeme voran-gegangen sein muß. Es gibt nun mehrere Möglichkeiten, diesen Abhängigkeiten pro-grammtechnisch gerecht zu werden. Zum einen kann in einer Tabelle festgehalten