66 Konzepte und Strukturen eines interaktiven Notenmoduls Page System Staff Symbol Symbol Symbol Symbol Symbol Staff Symbol Symbol Symbol Symbol Symbol System Staff Symbol Symbol Symbol Symbol Symbol Staff Symbol Symbol Symbol Symbol Symbol Abbildung 3.2: Die Containerstruktur der Notationsobjekte. Die abstrakte Klasse Sym-bol repräsentiert hier jeweils eines der von ihr abgeleiteten konkreten Symbole (vgl. Abb. 3.1). Eine Besonderheit stellen die Symbole der Kategorie Bracket dar. Sie reprä-sentieren Objekte, die sich über mehrere Akkorde und Pausen hinweg erstrecken können und so ein zeitliches Intervall einklammern, wie etwa Balken und Bögen. Im Fall eines Balkens markiert ein Objekt der Klasse BeamBegin seinen Anfang und BeamEnd analog dazu das Ende. Sämtliche Symbole, die sich zwischen einem solchen Klammerungspaar befinden, müssen bei der Positionierung des Balkens be-rücksichtigt und gegebenenfalls in ihrer Darstellung modifiziert werden. Zu solchen Modifikationen gehören unter anderem die Entfernung von Fähnchen bei Akkorden und die Verlängerung bzw. Verkürzung der Notenhälse sowie ihre Richtungsanpas-sung, damit die Hälse bis an den Balken heranreichen. Detailliertere Ausführungen zu diesem Thema sind im Abschnitt 6.1 dieser Arbeit nachzulesen. Die Hierarchisierung der verschiedenen Notationselemente stellt nur ein wesent-liches Prinzip der Implementation dar. Ein zweites ist schon im Zusammenhang mit der Darstellung der ersten Klassengeneration angeklungen. Wie leicht nachzuvoll-ziehen, bildet die Klassenfolge Page → System → Staff → Symbol eine Aussonde-rungssequenz von Elementen übergeordneter Mengen, das heißt konkret: eine Seite besteht aus mehreren Akkoladen, jede davon wieder aus mehreren Notensystemen und jedes Notensystem enthält verschiedene Symbole (Abb. 3.2). Im besonderen Fall des Akkords setzt sich dieses »Containerprinzip« weiter fort, denn ein Ak-kord umfaßt mehrere Pitch-Klassen, welche eine Kombination aus Notenkopf und Versetzungszeichen repräsentieren. Da die sequentielle Objektanordnung innerhalb eines Containers zur Berech-nung des Notenbildes eine sehr wichtige Rolle spielt, also beispielsweise die einzel-nen Symbole gemäß ihrer Anordnung nacheinander durchwandert werden müssen,