diff options
Diffstat (limited to 'obsolete/macros/mtex/documentation/mdoc9.tex')
-rw-r--r-- | obsolete/macros/mtex/documentation/mdoc9.tex | 1135 |
1 files changed, 1135 insertions, 0 deletions
diff --git a/obsolete/macros/mtex/documentation/mdoc9.tex b/obsolete/macros/mtex/documentation/mdoc9.tex new file mode 100644 index 0000000000..d0ed715c54 --- /dev/null +++ b/obsolete/macros/mtex/documentation/mdoc9.tex @@ -0,0 +1,1135 @@ +\def\adchap#1{{\advance\chap#1{}\the\chap}} +\heading{Der Balken- und Bogensatz} +Im Gegensatz zu den bisher behandelten Notenschriftzeichen sind die +Balken und Bogen satztechnisch dadurch ausgezeichnet, da\3 sie in der +L"ange und Gestalt variieren k"onnen, so da\3 es nicht ausreicht, nur +ein Element in einem Font f"ur den Satz zur Verf"ugung zu stellen. Die +Neigung der Balken bzw. die Kr"ummung der Bogen ist abh"angig von den zu +verbindenden bzw. zu "uberspannenden Noten. + +Au\3er den Faustregeln, +da\3 aus der Neigung des Balkens der Melodieverlauf +erkenntlich sein soll, um ein schnelleres Notenlesen zu erm"oglichen, und +da\3 der +Bogen von Notenkopf zu Notenkopf verlaufen sollte, jedoch andere +Zeichen nicht schneiden darf, gibt es keine +expliziten Regeln f"ur den Satz dieser Notenschriftelemente. + +\Beispiel +{\loose +\hsize10cm +\advance\hsize2\iindent +\parindent2\iindent +\beginsong +\vio\C +\group{\\{\a0}\\{\a2}\\{\a4}}{\\{0}\\{2}\\{4}}\ubeam13\go +\group{\\{\a4}\\{\a2}\\{\a0}}{\\{4}\\{2}\\{0}}\ubeam13\go +\group{\\{\a4}\\{\a6}}{\\{4}\\{6}}\lbeam12\uslur12\go +\group{\\{\a2}\\{\a4}}{\\{2}\\{4}}\ubeam12\lslur12\go +\group{\\{\h4}\\{\h2}}{\\{4}\\{2}}\uslur12\go\doublebarline +\endsong} +\vskip-1cm +\endBeispiel + +Alle anderen Satzregeln m"ussen daher aus der Notenliteratur abgeleitet +werden. Es gilt also, Verfahren f"ur den automatischen Notensatz zu +entwickeln, die den ansonsten nicht notwendig einheitlichen +Handsatz so nachahmen, da\3 die Ergebnisse in den +meisten F"allen mit dem Handgesetzten "ubereinstimmen. + +Die Verfahren f"ur den Balken- und Bogensatz gliedern sich in folgende +Abschnitte: +\item{1)} Berechnung der Steigung des Balkens bzw. der Sekantensteigung +des Bogens, + +\item{2)} Diskretisierung der Steigungen und Zusammenstellung der +Balken bzw. Bogen aus den Zei\-chen\-s"at\-zen, + +\item{3)} Endg"ultige Positionierung des Balkens bzw. Bogens. + +\Bemerkung Die hier vorgestellte Vorgehensweise ist durch die Tatsache +bedingt, da\3 ein Textsatzprogramm verwendet wird und nicht +koordinaten-orientiert gearbeitet wird. Das Zeichnen der Balken w"are +im anderen Fall direkt und ohne Diskretisierung + der berechneten Steigung +ausf"uhrbar. +\endBemerkung + +\subheading{Entwicklung des Verfahrens zur Verbalkung} +Gesucht ist ein Verfahren zur \defi{Verbalkung} von Noten, +d.h. ein Verfahren, +das jede beliebige Folge von Noten $(N_i)_{i=1,\ldots,n}$ durch einen +(oder mehrere) Balken verbindet, so da\3 der Aufpunkt $P$ und die +Neigung $S$ der Balken dem Handgesetzten nahe kommt. + +Ein solches Verfahren gliedert sich in drei Teilschritte: + +\item{1)} Bestimmung der Balkensteigung. +\item{2)} Anpassung der Notenh"alse. +\item{3)} Bestimmung des Aufpunktes aller Balkenst"ucke der Notengruppe. + +\Bemerkung +\item{1)} +Die Anzahl der Balken an einer Note stimmt mit der Anzahl der dem +Notenwert entsprechenden F"ahnchen (s. a. \the\chap.2.2) "uberein. +Alle Balkensteigungen innerhalb einer Notengruppe stimmen mit +der des "au\3ersten (d.h. des `Achtel'-Balkens) "uberein. +\item{}Es gen"ugt also, nur eine Steigung f"ur die ganze Notengruppe zu +berechnen. +\item{2)} Die Lage der Balken (oberhalb oder unterhalb der Notenk"opfe) +ist durch Regel N4b in \adchap{-1}.1 \XX festgelegt. +Die gemeinsame Richtung der +Notenh"alse kann zu jeder Folge von Noten bestimmt werden und sei +o.B.d.A. vorgegeben. +\item{3)} Die Balkensteigung ist nicht abh"angig von der absoluten +Tonh"ohe der Noten, sondern von der Position der Noten im Liniensystem. +Es gen"ugt also, + die interne Tonh"ohe der betroffenen Noten zu betrachten. +\endBemerkung + +\subsubheading{Bestimmung der Balkensteigung} +F"ur die folgenden "Uberlegungen beschreibe $d\in\{-1,+1\}$ wie in +\adchap{-1}.2.2 +die nach Regel N4c) bestimmte gemeinsame Richtung der Notenh"alse der +Balkengruppe. + +\subsubsubheading{Das Vorzeichen der Steigung} +Betrachtet man zun"achst zwei Noten $N_1$ und $N_2$ mit zugeh"origen +internen Tonh"ohen $p_1$ und $p_2$, +dann gilt unabh"angig von der gemeinsamen Richtung der Notenh"alse +$d$ f"ur das +Vorzeichen der Steigung $S$: +$$\align \text{F"ur }p_1<p_2& \text{ gilt }S>0\;,\\ + \text{f"ur }p_1=p_2& \text{ gilt }S=0 \text { und }\\ + \text{f"ur }p_1>p_2& \text{ gilt }S<0 \;.\endalign%\tag{S$_1$} + $$ +d.h. die Balkensteigung entspricht der Tendenz des Melodieverlaufs. + +\Beispiel +{\loose +\hsize10cm +\advance\hsize2\iindent +\parindent2\iindent +\beginsong +\vio\C +\group{\\{\a2}\\{\a3}}{\\{2}\\{3}}\ubeam12\go +\group{\\{\a3}\\{\a2}}{\\{3}\\{2}}\ubeam12\go +\group{\\{\a3}\\{\a8}}{\\{3}\\{8}}\lbeam12\go +\group{\\{\a6}\\{\a4}}{\\{6}\\{4}}\lbeam12\go +\group{\\{\a4}\\{\a4}}{\\{4}\\{4}}\lbeam12\go +\group{\\{\a3}\\{\a3}}{\\{3}\\{3}}\ubeam12\go +\=\endsong} +\vskip-1cm +\endBeispiel + +Das Vorzeichen ist f"ur zwei beliebige Noten eindeutig festgelegt. + +Dies gilt jedoch nicht mehr unbedingt f"ur Notengruppen mit mehr +Elementen. Man findet in der Literatur: + +{\loose +\hsize8cm +\advance\hsize2\iindent +\parindent2\iindent +\beginsong +\vio\C +\group{\\{\a0}\\{\a1}\\{\a2}\\{\a3}}{\\{0}\\{1}\\{2}\\{3}}\ubeam14\go +\group{\\{\a2}\\{\a1}\\{\a0}}{\\{2}\\{1}\\{0}}\ubeam13\go +\group{\\{\a4}\\{\a8}\\{\a4}}{\\{4}\\{8}\\{4}}\lbeam13\go\=% +\endsong} +\vskip-1cm + +Das Beispiel f"ur $p_1=p_n$ zeigt, da\3 hier die Steigung abh"angig von +der Tonh"ohe der ersten +und letzten Note bestimmt wurde. + +Untersucht man andere +Notenkombinationen, so zeigt sich auch f"ur F"alle mit $p_1\ne p_n$, +da\3 die Neigung nach der ersten +und letzten Note bestimmt wurde. + +\Beispiel +{\hsize 7cm +\loose +\advance\hsize2\iindent +\parindent2\iindent +\beginsong +\vio\C +\def\beamlist{\\{1-3,}\\{2-3,}} +\group{\\{\a6}\\{\s8}\\{\s2}}{\\{6}\\{8}\\{2}}\lbeam13\go +\def\beamlist{\\{1-\the\N,}} +\group{\\{\a4}\\{\a{12}}\\{\a{10}}\\{\a8}}{\\{4}\\{12}\\{10}\\{8}}% +\lbeam14\go\=% +\endsong} +\vskip-1cm +\endBeispiel + +Allgemein gilt f"ur $n>2$: +$$\align \text{F"ur }p_1<p_n&\text{ gilt }S\ge0\;,\\ + \text{f"ur }p_1=p_n&\text{ gilt }S=0 \text { und }\\ + \text{f"ur }p_1>p_n&\text{ gilt }S\le0 \;.\endalign%\tag{S$_2$} + $$ +Dabei gilt $S=0$, falls f"ur ein $i\in\{2,\ldots,n-1\}$ gilt: +$$\align &p_i\ge \max(p_1,p_n )\text{, falls }\quad d=1\;\\ +\text{oder }& p_i\le \min(p_1,p_n)\text{, falls }\quad +d=-1\;.\endalign$$ +Gibt es also innerhalb einer Notengruppe, deren Notenh"alse nach oben +gestielt sind, Noten, deren Tonh"ohe gr"o\3er oder gleich der Tonh"ohe +der h"ohergelegenen ``Randnote'' ist, so wird der Balken nicht +geneigt. Weisen alle Notenh"alse nach unten, +so wird die jeweils tiefergelegene ``Randnote'' betrachtet. +\Beispiel +\par\noindent\vbox{\hsize 6cm +\loose +\advance\hsize2\iindent +\parindent2\iindent +\beginsong +\vio\C +\group{\\{\a4}\\{\a3}\\{\a5}}{\\{4}\\{3}\\{5}}\lbeam13\go +\group{\\{\a0}\\{\a3}\\{\a3}}{\\{0}\\{3}\\{3}}\ubeam13\go\=% +\endsong} +\vskip-1cm +\endBeispiel + +Das Vorzeichen der Steigung wird also +nach der Konstellation der ersten und +letzten Note der Balkengruppe bestimmt. + +\subsubsubheading{Der Betrag der Steigung} +Sei im folgenden \folgi Nin eine Folge von Noten, f"ur die nach den +obigen Bedingungen +die Steigung $S$ nicht verschwindet. +Um gr"o\3ere Steigungen zu vermeiden, wird der +Betrag der Steigung nicht nach der +Position der Notenk"opfe bestimmt wird, sondern bez"uglich der Endpunkte +der Notenh"alse. + +Sei $E_i=(h_i,e_i)$ der Endpunkt des Notenhalses von $N_i$, wobei $h_i$ +den Abszissenwert des Notenhalses und $e_i:=\bar p_i+ d\cdot s^d(p_i)$ +den +vertikalen Abstand von der Grundlinie angibt ($\bar p_i = p_i\cdot 0.5 +\verbatimon|\nhh|$). + +Aus diesen Werten kann allgemein die Steigung $S^*$ einer Geraden durch +die Punkte $E_1$ und $E_n$ berechnet werden durch Bildung des +Differenzenquotienten +$$S^*= +\Frac{e_n-e_1}{h_n-h_1}\;.$$ +Diese errechnete Steigung kann jedoch erst nach einigen weiteren +Korrekturen der Notenh"alse als endg"ulti\-ge Steigung f"ur den Balken +"ubernommen werden. +\subsubsubheading{Die Korrektur der Notenhalsl"angen} +Es sind zun"achst zwei verschiedene Korrekturen der Notenhalsl"angen +m"oglich. +\item{1)} +Wegen +$$\verbatimoff |s^d(p_1)-s^d(p_n)|\le|\bar p_1-\bar p_n|$$ +gilt immer: +$$ +\align &e_n-e_1\ge0 \text{ f"ur }p_1<p_n\;\\ +\text{und }& e_n-e_1\le0\text{ f"ur }p_1>p_n\;.\endalign$$ +\item{} +In einigen F"allen wird +jedoch die strikte Positivit"at bzw. Negativit"at +von $S^*$ nicht mehr gew"ahrleis\-tet. + +\Beispiel +{\hsize 4cm +\loose +\advance\hsize2\iindent +\parindent2\iindent +\beginsong +\vio\C +\ \v{-4}\v{-3}\v{11}\v{13}\hfill\null +\endsong} +\vskip-1cm +\endBeispiel + +\item{} +In diesen F"allen m"ussen also die Notenhalsl"angen so korrigiert werden, +da\3 die Bedingung f"ur das Vorzeichen der Steigung + erf"ullt ist, und eine betragsm"a\3ig +kleine Steigung +die Tendenz der Notengruppe ausdr"uckt. + +\item{2)}Eine +weitere Korrektur ergibt sich aus der Tatsache, +da\3 Balken mit einer Steigung von mehr als + $25^\circ $--$ 30^\circ$ geneigt sind, nicht +verwendet werden, da sie das Gesamtbild optisch unruhig erscheinen +lassen. +Da die Steigung von der Differenz der Abszissenwerte der Notenh"alse +abh"angig ist, +tritt dies h"aufig auf bei Notenpaaren +mit stark unterschiedlichen Tonh"ohen, z.B. + +{\hsize 4cm +\advance\hsize2\iindent +\parindent2\iindent +\universal +\beginsong +\vio\C +\hskip20pt\v{-3}\v{3} \hfill +\endsong} +\vskip-1cm\ +\item{} +Die Korrektur sollte also dahin zielen, den Betrag der Balkensteigung so +zu verkleinern, da\3 die h"ochstzul"assige Steigung angenommen wird. +Dies kann auf zwei Arten geschehen: +\itemitem{a)} Vergr"o\3ern des horizontalen Abstands, was aus den in +Kapitel \adchap{-2}.1 +\XX angef"uhrten Gr"unden jedoch unzul"assig ist, und +\itemitem{b)} Verkleinern des vertikalen Abstandes durch Ver"andern der +Notenhalsl"angen. + +\item{}Auch in diesem Fall ist also eine Korrektur der Notenhalsl"angen +erforderlich. + +Aus den Beipielen in der Notenliteratur ergibt sich, da\3 +die Korrektur der Notenhalsl"angen stets durch Verl"angern der +entsprechenden Notenh"alse erfolgt, nie durch Verk"urzen. + +Die Verl"angerung der Notenh"alse ist nicht unabh"angig von der +gemeinsamen Notenhalsrichtung $d$. Es gilt +f"ur die zu den Noten $N_1$ und $N_n$ zugeh"origen Halsl"angen $s_1$ und +$s_n$ f"ur die zuerst vorgestellte Korrekturm"oglichkeit: +\verbatimon +$$\align \text{Ist }d\cdot(p_1-p_n)>0&\text{, so gilt } +s_1 =s^d(p_1)+0.5\hbox{|\nhh| und } s_n=s^d(p_n)\,,\\ + \text{und ist }d\cdot(p_1-p_n)<0&\text{, so gilt } +s_n =s^d(p_n)+0.5\hbox{|\nhh| und } s_1=s^d(p_1)\;.\endalign$$ +Die zweite Korrektur wird wie folgt durchgef"uhrt: + +Sei $h:=h_n-h_1$ die Differenz der Abzissen der Notenh"alse +und $\epsilon:=\sin\alpha$, wobei $\alpha$ den maximal zul"assigen +Neigungswinkel angibt. Dann gilt +$$\align \text{Ist }d\cdot(p_1-p_n)>0&\text{, so gilt } +s_1 =s^d(p_1)+\verbatimoff (|e_n-e_1| -\epsilon \cdot h) +\hbox{ und } s_n=s^d(p_n)\,,\\ + \text{und ist }d\cdot(p_1-p_n)<0&\text{, so gilt } +s_n =s^d(p_n)+\verbatimoff (|e_n-e_1| -\epsilon \cdot h) +\hbox{ und } s_1=s^d(p_1)\;.\endalign$$ + +Die der Notengruppe zugeh"orige Balkensteigung $S$ lautet nun: +$$S:=\Frac{(\bar p_n - \bar p_1) + d(s_n-s_1)}{h_n-h_1} $$ + +\Beispiel +\par +\input mdocpic2 +\endBeispiel + +\subsubsubheading{Die Diskretisierung der Balkensteigung} +Die Balkensteigung $S$ hat einen reellen Wertebereich, wenn man die oben +angef"uhrte Definition anwendet +($S\in\lbrack-\tan\alpha,\tan\alpha\rbrack\subset\rz$). + +Wie schon in +\adchap{-4}.1.4 \XX angedeutet, bietet \TeX\ au\3er Rules keine +M"oglichkeit, Linien zu setzen. Man w"urde also einen Balken beliebiger +Steigung aus gen"ugend kleinen ausgef"ullten Rechtecken zusammensetzen +m"ussen und dabei ein Optimierungsverfahren anwenden. Diese +Vorgehensweise w"are sowohl im Satz als auch in der Ausgabe sehr +zeitaufwendig und w"urde dennoch bei von Null verschiedenen Steigungen +eine sichtbare Treppenstruktur ergeben. + +Es liegt daher nahe, die Balkensteigung zu diskretisieren und Balken +dieser Steigungen in einem eigenen Zeichensatz zusammenzufassen. + +\Bemerkung +\item{1)}Das folgende Verfahren ist nicht spezifisch f"ur das +Textsatzsystem \TeX, sondern k"onnte auch f"ur andere Satzsysteme +verwendet werden. +\item{2)} +Diese Vorgehensweise der Diskretisierung +findet man auch beim Typendruckverfahren, +das im wesentlichen zwei verschiedene Neigungen verwendet: +steile und flache (s. \lit{\genzmeier, S.119}). + +\endBemerkung +Es sollen hier jedoch feinere Unterschiede gemacht werden: +\item{1)}Die Balkensteigung soll die errechnete m"oglichst realistisch +wiedergeben. +\item{2)}Die gr"o\3te Steigung entspricht $\tan\alpha$, wobei +$\alpha$ den maximal zul"assigen Neigungswinkel angibt. (Es gilt z.B. +$25^\circ\approx\arctan{\hbox{|\nhh|}\over\hbox{2|\nhw|}}=\arctan +0.\overline{45}$, falls |\nhw|=1.1|\nhh|.) + +Gesucht ist eine Folge $0=m_0<m_1<\ldots<m_k\cong 0.45$, die die in +der Notenliteratur erforderlichen Steigungen wiedergibt. +(Als negative Steigungen ergeben sich dann $-m_i\;,\;i=0,\ldots,k$.) + +Als Schranke $\eta>0$ f"ur den absoluten Fehler wurde das Zweifache der +Balkenst"arke gew"ahlt, so da\3 sich +bei Rundung auf den n"achsten diskreten +Steigungswert ein maximaler Fehler von $\eta/2$, d.h. der St"arke eines +Balkens ($\approx$0.6|\nhh|), ergibt. +Sei $\epsilon:=\max_{i=0,\ldots,k-1}\{m_{i+1}-m_i\}$, so gilt f"ur den +absoluten Fehler: +$$\verbatimoff |m_{i+1}-m_i|\cdot|h|<\eta\;.$$ +Die Wahl von $\epsilon$ ist also abh"angig von $|h|$. +W"ahlt man acht verschiedene Steigungen, d.h. $k=8$, und als obere +Schranke $m_8=0.45$, so erh"alt man f"ur +$\epsilon=\Frac{0.45}8\cong0.056$ die gew"unschte Genauigkeit f"ur +\verbatimoff +$|h|=\verbatimon{\hbox{1.2|\nhh|}\over\dsize0.056}\cong21\hbox{|\nhh|} +\cong20\hbox{|\nhw|}$.\verbatimon + +Diese Genauigkeit wird also bei einer Verbalkung von zehn Achtelnoten +bei universellem Zeilenausschlu\3 (s. 5.1.1\XX) eingehalten. Dies ist +ausreichend, da selten l"angere Balken ben"otigt werden. Bei einer +Verbalkung von sechs Achtelnoten erreicht man eine Genauigkeit von +$\eta/2$. +Aus diesen Gr"unden wurde f"ur den Balkenzeichensatz der +`Steigungssatz' $m_i=0.056\cdot i\,,$ $i=1,\ldots,8$ gew"ahlt. + +Die Anpassung der oben berechneten Steigung $S$ an die im Zeichensatz +vorhandenen erfolgt f"ur +\verbatimoff$|S|\ge m_1$ durch Runden auf den n"achsten diskreten +Steigungswert $m_i$ mit $m_i\le |S|$ und + f"ur $0<|S|<m_1$ durch +Aufrunden auf $m_1$, damit die obigen Bedingungen f"ur das Vorzeichen der +Steigung auch bei diskretisierter Steigung erf"ullt bleiben. + +\verbatimon +Stellt man den Zeichensatz so zusammen, da\3 zu jeder Steigung +Balkenst"ucke der Zeichenbreite $w_i:=\frac12\cdot 2^i\pt=2^{i-1}\pt$, +$i\in\{0,\ldots,7\}$ existieren, so k"onnen Balken beliebiger L"ange auf +$0.5\pt$ genau zusammengef"ugt werden, wobei die auf den Drucker +zu "ubertragende Anzahl der Zeichen minimiert ist +Der dazu erstellte Zeichensatz ist im Anhang D zu finden. + +\subsubheading{Die Anpassung der Notenhalsl"angen} +Da der Balkenverlauf nur nach der ersten und letzten Note bestimmt +wurde, aber die dazwischen liegenden Noten $N_2,\ldots,N_{n-1}$ beliebig +sind, ist es notwendig, zun"achst die "ubrigen Notenhalsl"angen +anzugleichen, abh"angig von den internen Tonh"ohen der inneren Noten +eine dritte Korrektur aller Notenh"alse durchzuf"uhren und abh"angig +von der Anzahl der zu setzenden Balkenreihen eventuell die Notenh"alse +durch eine vierte Korrektur erneut zu verl"angern. + +\subsubsubheading{Das Angleichen der Notenh"alse} +Ausgehend vom +(eventuell korrigierten) Notenhalsendpunkt $E_1$ ist die L"ange des +Notenhalses $s_i$ von $N_i$ der vertikale Abstand des Notenkopfes vom +Balken. Es gilt: +$$s_i:= s_1+d(\bar p_1 -\bar p_i + S\cdot (h_i-h_1))\;,$$ +wobei $S$ die angepa\3te diskretisierte Steigung ist und $d$ wiederum +die gemeinsame Notenhalsrichtung beschreibt. + +\subsubsubheading{Die erste Verl"angerung der Notenh"alse} +Sei $\bar s$ die minimal zul"assige Halsl"ange innerhalb einer +Notengruppe. Dann sind zun"achst alle Halsl"angen der Gruppe um +$$s^*:=\max_{1\le i\le n}(0,\bar s-s_i)$$ +zu verl"angern. Die Verl"angerung $s^*$ ist also nur positiv, falls f"ur +mindestens ein $i$ gilt $s_i<\bar s$, andernfalls ist keine Korrektur +notwendig. + +Die minimal zul"assige Halsl"ange ist wie folgt bestimmt: +$$\bar s =\cases 2\hbox{|\nhh|}\,,&\text{falls +}s^d(p_1)\le3\hbox{|\nhh|}\text{ oder } +s^d(p_n)\le3\hbox{|\nhh|}\;,\\3\hbox{|\nhh|}\,,&\text{sonst.}\endcases$$ +Es gilt also $\bar s=2\hbox{|\nhh|}$ f"ur $p\ge6$, falls $d=+1$ und f"ur +$p\le1$, falls $d=-1$. + +Diese (willk"urlich festgelegten) Werte f"ur $\bar s$ haben sich in der +Praxis bew"ahrt. + +\Beispiel +\par +\input mdocpic3 +\endBeispiel + +\subsubsubheading{Die zweite Verl"angerung der Notenh"alse} +Abh"angig von der Anzahl der Balkenreihen $r$ m"ussen die +Notenhalsl"angen eventuell nochmals korrigiert werden um +$$s^{**}:=\cases0\,,&\text{f"ur +}r\le2\,,\\(r-2)\hbox{|\nhh|}\,,&\text{f"ur }r>2\,.\endcases$$ +Auch diese Werte sind heuristisch bestimmt. +\par +\subsubheading{% +Bestimmung des Aufpunktes aller Balken der Notengruppe} +Der Aufpunkt $P_{i,j}=(h_i,a_{i,j})\,,1\le i\le n$ und $1\le j\le r$, +der einzelnen Balken der Notengruppe +wird nun wie folgt bestimmt: +$$a_{i,j} = \bar p_i + d\cdot s_i + d\cdot r\cdot\hbox{|\nhh|}\;.$$ +Dabei wird der Balken bis auf den Spezialfall eines ``Halbbalkens'' +immer rechts vom Notenhals positioniert. Gilt ein Balken nur f"ur +eine Note, so wird er je nach Position der Note innerhalb der +Notengruppe links oder rechts vom Notenhals plaziert, z.B immer links +f"ur $N_n$ und immer rechts f"ur $N_1$. Innerhalb der Gruppe richtet +sich die Position nach dem metrischen Gef"uge (s.\lit\ziegen). Ein +solcher Balken hat immer als L"ange die H"ohe +eines Notenkopfes. + +\Beispiel +{\hsize 10cm +\advance\hsize2\iindent +\parindent2\iindent +\loose +\beginsong +\vio\C +\def\beamlist{\\{1-2,}\\{-2,}} +\group{\\{\a6\.1}\\{\s6}}{\\{6}\\{6}}\lbeam12\go +\def\beamlist{\\{1-2,}\\{1-1,}} +\group{\\{\s6}\\{\a7\.1}}{\\{6}\\{7}}\lbeam12\go +\def\beamlist{\\{1-4,}\\{-2,-4,}} +\group{\\{\a7\.1}\\{\s8}\\{\a6\.1}% +\\{\s7}}{\\{7}\\{8}\\{6}\\{7}}\lbeam14\go +\def\beamlist{\\{1-4,}\\{1-1,3-3,}} +\group{\\{\s7}\\{\a8\.1}\\{\s6}\\{\a7\.1}} +{\\{7}\\{8}\\{6}\\{7}}\lbeam14\go +\hfill\=% +\endsong} +\vskip-1cm +\endBeispiel + +\subsubheading{Abschlie\3ende Bemerkungen zur Verbalkung} +Das obige +Verfahren zur Verbalkung l"a\3t sich auch f"ur Akkorde durchf"uhren, +wenn f"ur die interne Tonh"ohe die am weitesten von der jeweiligen +Bezugsnote entfernte Note zur Berechnung verwendet wird. + +\Beispiel +{\hsize 4cm +\advance\hsize2\iindent +\parindent2\iindent +\loose +\beginsong +\vio\C% +\def\beamlist{\\{1-3,}\\{1-3,}}% +\group{\\{\b7\rchord\a7\a{-1}\endchord}\\{\rchord\a{14}\a8\endchord} +\\{\rchord\a{11}\a5\endchord}}{\\{-1}\\{8}\\{5}}\lbeam13\go\hfill +\endsong} +\vskip-1cm +\endBeispiel + +\subheading{Entwicklung eines Verfahrens zur Phrasierung} + +Gesucht ist ein Verfahren zur \defi{Phrasierung} +von Noten, d.h. ein Verfahren, +das jede beliebige Folge von Noten \folgi Nin mit zugeh"origen +Tonh"ohen \folgi pin, Notenhalsl"angen \folgi sin und +Notenhalsrichtungen \folgi din mit einem Bogen "uberspannt. + +Wie bei der Verbalkung mu\3 zun"achst entschieden werden, ob der Bogen +oberhalb oder unterhalb der Noten verl"auft. Verl"auft der Bogen +oberhalb, so ist eine konkave Form zu w"ahlen, andernfalls +eine konvexe Form. + +Als Grundregel gilt: + +\item{P1)}Bei einstimmiger Notation wird der Bogen von Notenkopf zu +Notenkopf gef"uhrt, so da\3 die betroffenen Noten deutlich erkennbar +sind, d.h. f"ur $d_1=d_n$ wird der Bogen +unterhalb der Notenk"opfe gef"uhrt, +falls $d_1=+1$, und oberhalb, falls $d_1=-1$. +\item{} +F"ur $d_1\ne d_n$ gibt es keine einheitliche Regelung, jedoch findet man +meistens (vor allem in der Vokalmusik) die Regelung, da\3 der Bogen +oberhalb +der Notenk"opfe gef"uhrt wird, um nicht in Konflikt mit unterlegtem Text +zu geraten. +\item{P2)} Bei zwei- (oder mehr-)stimmiger Notation gilt jedoch +allgemeing"ultig die Regelung, da\3 f"ur die Phrasierung der Oberstimme +konkave Bogen und f"ur die Phrasierung der Unterstimme konvexe Bogen +vorgeschrieben sind. + +\Beispiel +{\universal +\hsize 10 cm +\advance\hsize2\iindent +\parindent2\iindent +\beginsong +\vio\C +\group{\\{\h5}\\{\h5}}{\\{5}\\{5}}\uslur12\go +\group{\\{\h3}\\{\h3}}{\\{3}\\{3}}\lslur12\go +\group{\\{\h4}\\{\h3}}{\\{4}\\{3}}\uslur12\go +\group{\\{\h3}\\{\h4}}{\\{3}\\{4}}\uslur12\go +\two{% +\group{\\{\h3}\\{\h7}}{\\{3}\\{7}}\uslur12\go} +{\group{\\{\h1}\\{\h4}}{\\{1}\\{4}}\lslur12\go}\=\endsong +}\vskip-1cm +\endBeispiel + +Der Bogen wird im Gegensatz zum Balken +nicht dazu verwendet, den Melodieverlauf auszudr"ucken, +sondern wird abh"angig vom zur Verf"ugung stehenden Freiraum +positioniert, d.h. er darf innere Noten der Notengruppe nicht +durchkreuzen. + +Beim Handnotensatz unterscheidet der Notensetzer Legato- und Haltebogen +von Phrasierungsbogen. + +Legato- und Haltebogen sind k"urzer und meist schon als Stempel +vorhanden, w"ahrend Phrasierungsbogen freier gestochen +werden und l"anger sind. + +Legatobogen haben also f"ur eine bestimmte L"ange eine feste Kr"ummung, +w"ahrend Phrasierungsbogen in der Form variieren k"onnen. + +Da \TeX\ nicht die graphischen M"oglichkeiten besitzt, Bogen zu +zeichnen, mu\3te eine Algorithmus gefunden werden, der Bogen mit einer +festen Kr"ummung bei gleicher Breite setzt. + +Berechnet man also die Sekantensteigungen des Bogens, so ist der +zugeh"orige zu w"ahlende Bogen eindeutig bestimmt und in einem +Zeichensatz speicherbar. + +Daher ist es f"ur das Setzen eines Bogens +ausreichend, nur seine Sekantensteigung zu berechnen und +diese zu diskretisieren. + +\subsubheading{Bestimmung des Anfangs- und Endpunktes des Bogens} + +O.B.d.A. seien im folgenden Noten durch einen konkaven Bogen zu +"uberspannen. F"ur den konvexen Bogen lassen sich die "Uberlegungen +analog durchf"uhren. + +Sei \folgi Nin eine Notengruppe. Seien +\folgi pin die zugeh"origen Tonh"ohen und +$\bar p_i:=p_i\cdot0.5\hbox{|\nhh|} $ wie oben. +Seien \folgi din die Richtungen der Notenh"alse, + \folgi sin die zugeh"origen Notenhalsl"angen und + \folgi hin die Abszissenwerte der Notenh"alse. +\Bemerkung O.B.d.A. sei $h_1:=0$. Gilt +$d_i=0$ f"ur ein $i$, so besitzt +die Note keinen Notenhals. In diesem Fall sei $h_i$ +der Abszissenwert des Notenkopfmittelpunktes. +\endBemerkung +Dann gilt f"ur den Anfangspunkt $A_i$ des Bogens f"ur Noten, die nicht +mit aufw"arts gestielten Notenh"alsen verbalkt sind: +$$\matrix\format\r&\l&\l\\ +\text{F"ur } &d_i=+1& \text{ gilt } A_i=(h_i+0.5\hbox{|\nhh|}, +\bar p_i+\hbox{|\nhh|})\,,\\ + \text{f"ur } &d_i=0&\text{ gilt } A_i=(h_i, +\bar p_i+\hbox{|\nhh|})\,,\\ + \text{f"ur } &d_i=-1&\text{ gilt } A_i=(h_i+0.5\hbox{|\nhh|}, +\bar p_i+\hbox{|\nhh|})\,.\endmatrix$$ +Ist $N_i$ Element einer oberhalb der Notenk"opfe verbalkten Notengruppe, +so ist eine weitere Fallunterscheidung notwendig. Falls $N_i$ nicht das +\disp{letzte} Element der verbalkten Notengruppe ist, gilt: +$A_i =(h_i,\bar p_i+s_i+0.5\hbox{|\nhh|})\;.$ +Dies gilt auch f"ur die letzte Note einer ``Balkengruppe'', falls die +Note des Bogenendes auf die gleiche Weise verbalkt wurde, andernfalls +gilt $A_i= (h_i+0.5\hbox{|\nhh|}, \bar p_i+\hbox{|\nhh|})$. + +F"ur den Endpunkt $E_i$ des Bogens f"ur Noten, die nicht +mit aufw"arts gestielten Notenh"alsen verbalkt sind, gilt: +$$\matrix\format\r&\l&\l\\ +\text{F"ur }& d_i=+1&\text{ gilt } E_i=(h_i-0.5\hbox{|\nhh|}, +\bar p_i+\hbox{|\nhh|})\,,\\ + \text{f"ur }& d_i=0&\text{ gilt } E_i=(h_i, +\bar p_i+\hbox{|\nhh|})\,,\\ + \text{f"ur }&d_i=-1&\text{ gilt } E_i=(h_i+0.5\hbox{|\nhh|}, +\bar p_i+\hbox{|\nhh|})\,.\endmatrix$$ +Ist $N_i$ Element einer oberhalb der Notenk"opfe verbalkten Notengruppe, +so ist wiederum +eine Fallunterscheidung notwendig. Falls $N_i$ nicht das +\disp{erste} Element der verbalkten Notengruppe ist, so ist +$E_i =(h_i,\bar p_i+s_i+0.5\hbox{|\nhh|})\;.$ +Dies gilt auch f"ur die erste Note einer ``Balkengruppe'', falls die +Note des Bogenendes auf die gleiche Weise verbalkt wurde, andernfalls +ist $E_i= (h_i,\bar p_i+\hbox{|\nhh|})$. +\verbatimoff +\par +\Beispiel +\par +{\hsize 16 cm\universal +\parindent = 0pt +\beginsong +\vio\C% +\group{\\{\h3}\\{\h3}}{\\{3}\\{3}}\uslur12\go +\group{\\{\h3}\\{\g5}}{\\{3}\\{5}}\uslur12\go +\group{\\{\h3}\\{\h4}}{\\{3}\\{4}}\uslur12\go\doublebarline +\group{\\{\g4}\\{\h1}}{\\{4}\\{1}}\uslur12\go +\group{\\{\g5}\\{\g5}}{\\{5}\\{5}}\uslur12\go +\group{\\{\g5}\\{\h5}}{\\{5}\\{5}}\uslur12\go\doublebarline +\group{\\{\h4}\\{\h3}}{\\{4}\\{3}}\uslur12\go +\group{\\{\h5}\\{\g5}}{\\{5}\\{5}}\uslur12\go +\group{\\{\h4}\\{\h8}}{\\{4}\\{8}}\uslur12\go\hfill\doublebarline +\group{\\{\a3}\\{\a3}\\{\h6}}{\\{3}\\{3}\\{6}}\ubeam12\uslur13\go +\group{\\{\a3}\\{\a3}\\{\h6}}{\\{3}\\{3}\\{6}}\ubeam12\uslur23\go +\doublebarline +\group{\\{\a3}\\{\a3}\\{\a3}\\{\a3}}{\\{3}\\{3}\\{3}\\{3}% +}\ubeam12\ubeam34\uslur13\go\|% +\group{\\{\a3}\\{\a3}\\{\a3}\\{\a3}}{\\{3}\\{3}\\{3}\\{3}% +}\ubeam12\ubeam34\uslur23\go +\=\endsong} +\vskip-1cm +\endBeispiel + +Wie bei der Verbalkung mu\3 in Extremf"allen die Sekantensteigung + korrigiert werden. Dies geschieht wiederum nur durch Verschieben der +Anfangs- bzw. Endpunkte in vertikaler Richtung, d.h. durch Ver"andern der +Ordinaten. +\verbatimon + +Im folgenden seien \folgi ain und \folgi ein die Ordinatenwerte der +Punkte \folgi Ain{}bzw. \folgi Ein. +Eine Korrektur wird (auch in der Notenliteratur) nur so durchgef"uhrt, +da\3 die Sekantensteigung betragsm"a\3ig verkleinert wird, jedoch kein +Vorzeichenwechsel auftritt. + +Da die +Anfangs- und Endpunkte f"ur einen konkaven Bogen so gew"ahlt sind, +da\3 der vertikale Abstand von der Grundlinie der minimal m"ogliche ist, +kann die Korrektur nur durch Erh"ohen des Abstandes durchgef"uhrt werden. + +\item{1)}Zun"achst ist eine Korrektur notwendig, +falls der Bogen, der die Noten zwischen $N_1$ und $N_n$ "uberspannen +soll, die inneren Noten schneidet. +Die Bogen der Notenliteratur "ahneln eher Parabelausschnitten als +Kreisbogenausschnitten, wie man zun"achst vermuten w"urde. Um den +Bogenverlauf m"oglichst genau nachzuahmen, wurde ein Parabelausschnitt +gew"ahlt, der durch die beiden Endpunkte des Bogens und einen dritten +Punkt eindeutig bestimmt ist. Dieser dritte Punkt ist durch einen +Vektor, der senkrecht auf der Sekante steht, mit dem Sekantenmittelpunkt +als Aufpunkt und einer L"ange, abh"angig von der Sekantenl"ange, gegeben. +Als L"ange hat sich +hierbei ein Sechstel der Sekantenl"ange bew"ahrt, soweit +diese nicht den Betrag von |2\nhh| "uberschreitet. +\par +\item{} +Da nur eine grobe Korrektur notwendig ist, gen"ugt es, den Bogen +geeignet linear zu approximieren und zu "uberpr"ufen, ob die +inneren Noten unterhalb einer solchen Geraden +verlaufen. +\item{} +Die Gerade, die dies f"ur alle F"alle gew"ahrleistet, ist nat"urlich +die Gerade durch die +Sekante des Bogens. Dies f"uhrt jedoch f"ur die Noten, +die sich unter der Sekantenmitte befinden, zu unbefriedigenden +Ergebnissen. + Da +sich jedoch in unmittelbarer N"ahe der Bogenendpunkte keine +inneren Noten befinden, kann eine Gerade gew"ahlt werden, die +zur Sekante parallel verl"auft. +Der Abstand zur Sekante ist + abh"angig von der ``Auslenkung'' des +Bogens und der Sekantensteigung. +\item{} +Sei $\epsilon$ der Abstand der beiden +Geraden und +$S$ die errechnete Sekantensteigung bzgl. $A_1$ und $E_n$. +Dann ist +$s^*=\max_{i=2,\ldots,n-1}\{0\,,\,(e_i-a_1+S\cdot h_i)-\epsilon\}$ +der Maximalwert, um den die Approximationsgerade "uberschritten wurde. +Die Korrektur der Bogensteigung wird dann wie folgt durchgef"uhrt: +gilt $a_1<e_n$, dann wird $a_1$ um $s^*$ +vergr"o\3ert. +Falls $a_1+s^*>e_n$, wird so korrigiert, da\3 $S$ verschwindet, d.h. +$e_n$ mu\3 um den Betrag $e_n-(a_1+s^*)$ vergr"o\3ert werden. F"ur +$a_1>e_n$ wird zun"achst $e_n$ vergr"o\3ert. Falls dabei +$S$ Null wird, ist zus"atzlich $a_1$ zu korrigieren. +\medskip +\input mdocpic4 +\medskip +\centerline{{\eightrm Skizze zur Approximation des Bogens}} +\item{2)}Eine weitere Korrektur mu\3 (nach der Diskretisierung +(s. \the\chap.2.2\XX)) +durchgef"uhrt werden, falls die Steigung die f"ur die +Zeichenbreite des Bogens zul"assige maximale Steigung "uberschreitet. +\item{} +Die Sekantensteigungen $S$ liegen im Intervall $(-1,1)\in\rz$, jedoch +kommt es auch nur selten vor, da\3 \verbatimoff$S\cdot |h|>\verbatimon +4\hbox{|\nhh|}$, d.h. die H"ohe des Zeilensystems "uberschreitet. Die +maximal zul"assige Steigung ist also abh"angig von $h$ und kann +beschrieben werden durch: +\verbatimon +$$\bar s(h)=\min(1,{4\hbox{|\nhh|}\over h})\;.$$ +Dann wird die Korrektur wiederum so durchgef"uhrt, da\3 +$a_1$ vergr"o\3ert wird, falls $a_1<e_n$, +und $e_n$ vergr"o\3ert wird, falls $a_1>e_n$. + Es gilt: +$$a_{1,{\rm neu}}:=e_n-\bar s(h)\cdot h \quad\text{ bzw. }\quad +e_{1,{\rm neu}}:=a_n-\bar s(h)\cdot h \;.$$ + +\subsubheading{Diskretisierung der Sekantensteigung} +Aus den gleichen Gr"unden wie bei der Verbalkung ist eine +Diskretisierung der Sekantensteigung notwendig. Da die St"arke des +Bogens jeweils zum Bogenende abnimmt, w"are es sehr zeitaufwendig, den +Bogen aus Einzelst"ucken zusammenzusetzen. +Zu jeder Breite und jeder Steigung m"u\3te also ein vollst"andiger Bogen +bereitgehalten werden. + +Ber"ucksichtigt man folgende Gesichtspunkte, kann jedoch eine +repr"asentative Auswahl getroffen werden. +\item{1)}Da der Bogen die +Notengruppe nur "uberspannen und nicht exakt zwischen zwei Notenh"alsen +eingepa\3t werden mu\3, gen"ugt es, Bogen der Zeichenbreite $w=k\cdot +\hbox{|\nhw|} \text { mit } k\in\nz^+$ bereitzuhalten. +\item{2)}Der vertikale Abstand der Bogenendpunkte betr"agt (meistens) +ein +$m$-faches von 0.5|\nhh|, wobei als obere Grenze 4|\nhh| +angesehen werden kann, d.h. $m\le8$. +% +\item{3)}Eine weitere Schranke ist $m\le2k$, da die Sekantensteigung +kleiner als 1 sein sollte. +\item{4)}Da jedoch nicht Bogen beliebiger +L"ange bereitgehalten werden k"onnen, ist es entgegen obiger +"Uberlegung doch notwendig, Bogen gr"o\3erer Breite aus Einzelst"ucken +zusammenzusetzen. Dabei wird das Mittelst"uck durch eine Rule beliebiger +L"ange ersetzt. + +Es ergeben sich aus den obigen Gesichtspunkten f"unf verschiedene +Zeichens"atze: +\item{1)}konkave Bogen positiver Sekantensteigungen ($\frac{ht}w$) mit +Breiten $w = i\cdot\hbox{|\nhw|}\,,i\in\{1,\ldots,17\}$ und H"ohen +$ht = j\cdot0.5\hbox{|\nhh|}\,,j\in\{1,\ldots,\min({2i,8})\}$. + +\item{2)}konkave Bogen negativer Sekantensteigungen ($\frac{dp}w$) mit +Breiten $w = i\cdot\hbox{|\nhw|}\,,i\in\{1,\ldots,17\}$ und Tiefen +$dp =-j\cdot0.5\hbox{|\nhh|}\,,j\in\{1,\ldots,\min({2i,8})\}$. + +\item{3)}konvexe Bogen positiver Sekantensteigungen ($\frac{ht}w$) mit +Breiten $w$ und H"ohen $ht$ wie oben. +\item{4)}konvexe Bogen negativer Sekantensteigungen ($\frac{dp}w$) mit +Breiten $w$ und Tiefen $dp$ wie oben. +\item{5)}konkave und konvexe Haltebogen ($j=0$) verschiedener Breite +$w$ wie oben +und konkave und konvexe Bogenst"ucke +positiver und negativer Sekantensteigung konstanter Breite (% +$w=9\hbox{|\nhw|}$). +\Bemerkung +\item{1)}Die Maximalbreite $w=17\hbox{|\nhw|}$ hat sich so ergeben, da\3 +die Zeichens"atze mit jeweils 124 Elementen belegt werden konnten. +Vollst"andige Bogen einer gr"o\3eren Breite erschienen nicht sinnvoll, +da sie selten vorkommen und viel Speicherplatz ben"otigen. +\item{2)} +Zur Wahl der Bogenst"ucke: +\item{}Der Bogen wird aus drei Teilen zusammengesetzt und zwar werden je +ein Bogenst"uck positiver Sekantensteigung und ein Bogenst"uck +negativer Sekantensteigung, die jeweils konvex bzw. konkav sind, durch +eine Rule beliebiger L"ange verbunden. Dabei k"onnen sich vier +verschiedene Situationen ergeben: + +\Beispiel\vskip-1cm +\begingroup +\def\vt#1{{\offinterlineskip\vtop{\null\hbox{\slurfont\char\hex#1}\vss}% +}} +\def\vb#1{{\offinterlineskip\vbox{\vss\hbox{\slurfont\char\hex#1}\null}% +}} +\medskip +\def\rulet{\vrule height 0pt depth 1pt width36pt} +\def\ruleb{\vrule height 1pt depth 0pt width36pt} +\baselineskip2cm +\halign{\hskip\iindent#\hfil&\quad$\vcenter{#}$&\hskip\iindent#\hfil +&\quad$\vcenter{#}$\cr +a)&\hbox{\vt{28} \rulet\ \vt{30}}&b)&\hbox{\vt{20} \rulet\ \vt{38}}\cr +c)&\hbox{\vb{40} \ruleb\ \vb{58}}&d)&\hbox{\vb{48} \ruleb\ \vb{50}}\cr} +\endgroup +\medskip +\endBeispiel +\item{} +Die folgenden "Uberlegungen gelten f"ur die in Beispiel a) +aufgef"uhrte Situation, k"onnen jedoch auch auf die anderen "ubertragen +werden. +\item{} +Sei $S=\Frac{e_n-a_1}h={\dsize j\cdot0.5\hbox{|\nhh|}\over \dsize +h}$, wobei +$j\in\{0,\ldots,8\}$. +O.B.d.A. gilt $e_n>a_1$. Sei $S_1>0$ die Sekantensteigung des ersten +Bogenst"ucks und $S_2<0$ die des zweiten. Dann gilt $S_1>S$. +Die f"ur die Bogen gew"ahlten Steigungen reichen also in diesem Fall +nicht aus. Je gr"o\3er \verbatimoff$|S_2|$ gew"ahlt wird, desto +gr"o\3ere Werte m"ussen also f"ur $S_1$ bereitgehalten werden. +\item{} +Dann gilt:\verbatimon +$$S_1={S\cdot h + 9\hbox{|\nhw|}\cdot +\verbatimoff|S_2|\over\verbatimon +9\hbox{|\nhw|}}$$\verbatimon +Da die H"ohen in den "ubrigen Zeichens"atzen als Vielfaches von +0.5|\nhh| gew"ahlt wurden, d.h. +da\3 $S\cdot h = j\cdot 0.5\hbox{|\nhh|}$ f"ur ein +$j\in\{1,\ldots,8\}$, gilt, falls eine solche Darstellung auch f"ur +\verbatimoff $|S_2|\cdot 9\verbatimon +\hbox{|\nhw|}=j^*\cdot0.5\hbox{|\nhh|}$ mit fest gew"ahltem +$j^*\in\nz$ +angenommen wird,\verbatimon +$$S_1={(j+j^*)\cdot 0.5\hbox{|\nhh|}\over 9\hbox{|\nhw|}}\,.$$ +Dies ergibt f"ur $S_1$ acht verschiedene Werte +$ht_j=j\cdot\hbox{|\nhh|}$, +$j\in\{j^*+1,\ldots,j^*+8\}$. \verbatimoff +Da der Wert f"ur $|S_2|$ noch mitgerechnet \verbatimon +werden mu\3, sind neun verschiedene Bogenst"ucke f"ur jeden Fall +notwendig (positiv, negativ, konvex, konkav). +\item{} +Die Auswahl der Steigungen ist also nur abh"angig von $j^*$ und nicht +von $h$. +Die vorliegenden Zeichens"atze wurden mit $j^*=2$ erzeugt. +Der Fall $S=0$ mu\3 als Sonderfall betrachtet werden, da in diesem Fall +$S_1=-S_2$ gelten mu\3. Die Wahl +$j^*=2$ erweist sich in diesem Fall jedoch als +zu flach. Aus diesem Grund werden f"ur $S=0$ Bogen mit $j=4$ +verwendet. +\endBemerkung +\subheading{Ausf"uhrung des Balken- und Bogensatzes} + +\subsubheading{Nachbarschaften} + +Das Setzen der Bogen und Balken ist in hohem Ma\3e abh"angig vom +Kontext, z.B. Bestimmung der Anfangs- und Endpunkte der Bogen, die +Richtung und L"ange der Notenh"alse. + +Im Unterschied zum Textsatz besteht hier die Notwendigkeit, +Notenschriftelemente, die auf eine solche Weise in Verbindung stehen, +d.h. nicht isoliert zu behandeln sind, gleichzeitig zu verarbeiten. + +Gomberg (\lit\gomb) hat f"ur Notenschriftelemente, die untereinander in +Beziehung stehen, indem sie gleichen horizontalen Raum beanspruchen, +den Begriff der \defi{Nachbarschaften} formuliert +(s.a. Kapitel \adchap2\XX). + +Anlehnend an diesen Begriff m"ochte ich Notenschriftelemente, die in +irgendeiner Weise (graphisch) miteinander verbunden sind, zu einer +Nachbarschaft zusammenfassen. Dazu geh"oren Notengruppen, die verbalkt +werden sollen, aber auch Notengruppen, die mit einem Bogen "uberspannt +werden sollen. Da sich diese Gruppen "uberschneiden k"onnen, sind +Nachbarschaften oft gr"o\3er als die einzelne Notengruppe. + +\Beispiel +{\hsize 10 cm +\loose +\advance\hsize2\iindent +\parindent2\iindent +\beginsong +\vio\Es \hskip20pt\group{\\{\a8}\\{\s3}\\{\s4}\\{\a5} +\\{\s5}\\{\s6}\\{\n7\a7}\\{\s{13}}\\{\s7}} +{\\{8}\\{3}\\{4}\\{5}\\{5}\\{6}\\{7}\\{13}\\{7}} +\def\beamlist{\\{1-3,}\\{2-3,}}\lbeam13% +\def\beamlist{\\{4-6,}\\{5-6,}}\lbeam46% +\def\beamlist{\\{7-9,}\\{8-9,}}\lbeam79\uslur24\uslur57\uslur89\go +\hfill\=% +\endsong} +\vskip-1cm +\endBeispiel + +\Bemerkung Da es in einer Nachbarschaft nicht m"oglich ist, eine Note +isoliert zu sehen, ist es auch nicht m"oglich, eine Nachbarschaft ohne +"au\3eres Einwirken (durch den Benutzer) zu trennen. +\item{} +In \TeX\ wird eine solche Nachbarschaft als Box aufgefa\3t, deren Glue +nicht mehr variabel ist. Enth"alt ein Musikst"uck gr"o\3ere +Nachbarschaften, wird es problematisch, geeignete Umbruchpunkte f"ur den +Zeilenumbruch zu finden. +\item{} +Das \TeX-Konzept f"ur Ausschlu\3 und Zeilenumbruch erweist sich also an +dieser Stelle als hinderlich. +\goodbreak +\subsubheading{Verarbeitung der Nachbarschaften}Zur Verarbeitung der +Nachbarschaften ist es notwendig, Informationen "uber die einzelnen +Nachbarschaftselemente zu verwalten, z.B. die Tonh"ohen der Noten, die +L"angen der Notenh"alse, den oberen und unteren Anfangs- und Endpunkt +f"ur Bogen. + +Eine Speicherung beliebig vieler gleichartiger Elemente, z.B. in +Vektoren, ist in \TeX\ nicht vorgesehen. Es ist jedoch m"oglich, mit +Hilfe von Kontrollsequenzen Listen aufzubauen (\lit\Knuth, \Texbook, +Anhang D.2). +Eine Liste von $n$ Informationen kann in der Form +\begindisplay +|\\{|\<item$_1$>|}\\{|\<item$_2$>|}| $\ldots$ |\\{|\<item$_n$>|}| +\enddisplay +kodiert werden, +wobei jedes \<item> eine wohlgeklammerte Tokenliste ist. + +Eine parameterlose Kontrollsequenz, z.B. |\liste|, deren Ersetzungstext +obige Form besitzt, hei\3t \defi{Listenmacro} (\tex{list macro}). +Das leere Listenmacro mit $n=0$ hei\3t |\empty|. Die einzelnen Elemente +werden durch |\\| getrennt. +Wird |\\| als Kontrollsequenz aufgefa\3t und als Makro +mit einem Argument definiert, so k"onnen +verschiedene Effekte erzielt werden, wenn es auf die +Liste angewendet wird. +\Beispiel +Mit |\def\\#1{\hbox{#1}}| +werden durch Aufruf von |\vbox{\liste}| alle Elemente von Liste +untereinander gesetzt. +\endBeispiel +Durch Umdefinieren von |\\| kann man auch auf die Elemente selber +einwirken. Sie k"onnen ausgetauscht werden, neue Elemente an- und +eingef"ugt oder alte gel"oscht werden. + +Solche Listen k"onnen also dazu benutzt werden, Informationen, die zur +Bearbeitung der Nachbarschaften notwendig sind, zu speichern. + +Die Bearbeitung der Nachbarschaften erfolgt in drei Teilschritten: +\item{1)}Die Initialisierung der ben"otigten Listen. +\item{2)}Die Berechnung der ben"otigten Balken und Bogen nach den in +\the\chap.1 und \the\chap.2 +beschriebenen Verfahren und das Einf"ugen der ent\-% +sprechenden Zeichensatzelemente in die Nachbarschaft. +\item{3)} Das endg"ultige Setzen der Nachbarschaft. + +\subsubsubheading{Die ben"otigten Listen} +Im folgenden sollen die ben"otigten Listen beschrieben werden. + +\item{1)}Als Anfangsinformation m"ussen folgende Listen gegeben sein. +Diese sind vom "Ubersetzungspro\-gramm +(\lit\Schofer) bereitzustellen: +\item{a)}Die Liste aller Elemente der Nachbarschaft (|\elementlist|). +\item{} +Normalerweise bestehen die Elemente aus jeweils einer Note mit, falls +vorhanden, zugeh"origem Vorzeichen und eventuellen Wertpunkten. +Des weiteren kann ein Element einen Akkord beinhalten oder +andere Notenschriftelemente wie z.B. Taktstriche, zu unterlegende Texte +oder Akzente. +\item{b)}Die Liste der Tonh"ohen der Noten der +Nachbarschaft (|\pitchlist|).\item{} +Das $i$-te Element der +|\pitchlist| enth"alt die jeweilige + Tonh"ohe des $i$-ten Elementes der |\elementlist|. + Bei Akkorden kann jedoch +nur die Tonh"ohe des Notenkopfes, der f"ur die Verbalkung +relevant ist, angegeben werden. Auch Taktstrichen kann eine Tonh"ohe +zugewiesen werden. So kann man vor einem Zeilenumbruch einen +Bogen "uber einem Taktstrich enden lassen. +\item{c)} Die Liste, die Informationen "uber die durch Balken zu +verbindenden Noten enth"alt (|\beamlist|). +\item{} +Die Zahl der Elemente gibt die Anzahl der Balkenreihen $r$ an und die +jeweiligen Elemente, +welche Noten in der Balkenreihe zu verbinden sind. +Wie in \XX \the\chap.1 +erw"ahnt, ist nicht allein aus den Notenwerten erkennbar, +welche Noten der Nachbarschaft miteinander verbunden werden m"ussen, da +die Noten +innerhalb der Balkengruppe noch weiter gruppiert werden m"ussen, +um die Betonungsverh"altnisse im Takt zu verdeutlichen. +\item{} +Aus diesem Grund enthalten die Elemente der Balkenlisten eine weitere +Liste, die angibt, welche Noten in der jeweiligen Balkenreihe +miteinander verbunden werden. +\item{} +Sei $l$ die Anzahl der Elemente einer solchen ``Unterliste'' und +seien die Elemente $n_1$ bis $n_2$ der Nachbarschaft zu verbalken. +Das $i$-te Element des Listenelementes ist dabei +von der Form: +$$\matrix\format\l&\r&\l\\\hbox{A:}\qquad& +k_{i_1}-k_{i_2},& \text{ wobei }k_{i_{1,2}}\in\{n_1,\ldots,n_2\} +\text{ und }k_{i_1}\leq k_{i_2}\,,\\ +\noalign{\text{ oder }} +\hbox{B:}\qquad&-k_{i_2},&\text{ wobei }k_{i_2} +\text{ wie oben und }k_{i_1} \text{ fehlt.} +\endmatrix$$ +\item{}F"ur die Folge +$(k_{i_1},k_{i_2}),i\in\{1,\ldots,l-1\}$ mu\3 gelten: +$$k_{i_1}<k_{(i+1)_1}\text{ und }k_{i_2}\leq k_{(i+1)_1}\,,\text{ falls +}k_{i_2}\text{ nicht fehlt.}$$ +\item{}Dabei bedeutet die Form: +{\iindent=40pt +\itemitem{$k_{i_1}-k_{i_2}$:} Verbalke das $k_{i_1}$-te bis +$k_{i_2}$-te Element der |\elementlist|, falls $k_{i_1}\ne k_{i_2}$, +sonst verbalke Element $k_{i_1}$ nach rechts. +\itemitem{$-k_{i_2}$:}Verbalke das $k_{i_2}$-te Element nach +links. +\par} +\item{}In beiden F"allen betr"agt die Breite des Balkens |\nhw|. + +\Beispiel(s. \the\chap.1.3) +\endBeispiel +\item{} +Es ist nach oben beschriebenem System nicht unbedingt notwendig, da\3 +die erste Balkenreihe durchgehend ist, d.h. von der Form $n_1-n_2$. + Dies ist kein +Fehler, sondern es erm"oglicht, ein Bild folgender Art zu erhalten: + +{\loose +\hsize7cm +\advance\hsize2\iindent +\parindent2\iindent +\beginsong +\vio\C +\def\beamlist{\\{1-4,5-8,}}% +\group{\\{\a{-2}}\\{\a{-1}}\\{\a0}\\{\a1}\\{\a2}\\{\a3}\\{\a4}\\{\a5}} +{\\{-2}\\{-1}\\{0}\\{1}\\{2}\\{3}\\{4}\\{5}}\ubeam18\go\=% +\endsong} +\vskip-1cm +\goodbreak +\item{2)}Zur Verarbeitung werden folgende Listen ben"otigt: +\item{}Da diese Listen Informationen "uber das jeweilige Element +der |\elementlist| speichern, mu\3 +die Anzahl der Listenelemente (Kardinalit"at) +mit der Anzahl der Elemente der |\elementlist| "ubereinstimmen. +\item{a)}Die Liste, die Informationen "uber die horizontale +Breite der Nachbarschaft und ihrer Elemente enth"alt (|\Hlist|). +\item{} +Das $i$-te Element enth"alt die Breite der Nachbarschaft +vom 1. bis $i$-ten Element einschlie\3lich, ohne da\3 am Ende +Glue angef"ugt wurde. Ist die $i$-te Note nicht punktiert, so schlie\3t +diese Nachbarschaft f"ur $d_i=+1$ mit dem Notenhals, f"ur +$d_i=-1$ mit dem Notenkopf ab. Der Abstand des Notenhalses zum +Ende dieser Notengruppe betr"agt also |\nhw|. +Ist die Note mit Wertpunkten versehen, +so erh"oht sich der Abstand um die Breite, die +die Punkte beanspruchen. Bei Akkorden mit aufsteigendem Notenhals +kann es vorkommen, da\3 die Nachbarschaft nicht mit dem Notenhals ab\-% +schlie\3t, falls ein Notenkopf auf der rechten Seite des Notenhalses +erscheint. Der Abstand betr"agt dann, falls keine Wertpunkte vorhanden +sind, |\nhw|. +\item{b)} Die Liste, die Informationen "uber die Abszissenwerte der +Notenh"alse liefert (|\Hcorlist|). +\item{} +Das $i$-te Element enth"alt als Korrektur den +horizontalen Abstand des Notenhalses des $i$-ten Elements zum +Ende einer Nachbarschaft, die mit diesem Element abschlie\3en w"urde. +Mit dieser Liste k"onnen die Wertpunkte sowie Akkorde +z.B. f"ur die Berechnung +der L"ange des Balkens ber"ucksichtigt werden. +\item{} +Das $i$-te Element enth"alt als Korrektur den +horizontalen Abstand des Notenhalses des $i$-ten Elements zum +Ende einer Nachbarschaft, die mit diesem Element abschlie\3en w"urde. +\item{c)} Die Liste, die Informationen "uber die Notenhalsl"angen der +zu verbalkenden Noten enth"alt (|\stemlist|). +\item{}Diese Liste wird zun"achst mit Null initialisiert und nur +ver"andert, falls eine Note zu verbalken ist. Es ist also eine Unter\-% +scheidung zwischen einzelstehenden Noten und Balkengruppen anhand dieser +Liste m"oglich. +\item{d)}Die Liste, die Informationen "uber die Richtung der +Notenh"alse in der Notengruppe enth"alt (|\dirlist|). +\item{} +Bei Verbalkung wird die eventuelle "Anderung der Notenhalsrichtung der +betroffenen Noten in dieser Liste vermerkt, soda\3 es m"oglich ist +einen Bogen "uber oder unter diesen Noten korrekt zu plazieren. +\item{e)}Die Listen, die die vertikalen Positionen der Bogenanfangs- +und Endpunkte oberhalb bzw. unterhalb der Noten enthalten +(|\uslurlist| und |\lslurlist|). +\item{}Die Listen sind so angelegt, da\3 ein Element +Informationstr"ager sowohl der Ordinaten des + Anfangs- als auch des Endpunktes +ist. Stimmen die Werte nicht "uberein, so wird dies durch einen Wert, +der betragsm"a\3ig gr"o\3er als 100\pt\ ist, angezeigt. +\item{} +Die Elemente erhalten nur von Null verschiedene Werte, falls der +Anfangs- bzw. Endpunkt nicht direkt am Notenkopf liegt. Andernfalls +werden sie abh"angig vom jeweiligen Wert der Tonh"ohenliste berechnet. + +Weitere Listen sind f"ur den einstimmigen Notensatz nicht erforderlich. +% + +\subsubsubheading{Die Initialisierung der Listen} + +Durch das Makro |\group| werden alle Listen, die nicht vorgegeben sind, +initialisiert.\par +Dies geschieht, indem die Nachbarschaftsliste (|\elementlist|) einmal +abgearbeitet, jedoch noch nicht gesetzt, sondern zun"achst +in einer Box akkumuliert wird. +Weiterhin wird das Z"ahler-Register |\N| mit der Anzahl +der Listenelemente der |\elementlist| belegt. + +\subsubsubheading{Das Setzen der Nachbarschaft} +Nachdem die Nachbarschaftsliste durch die Informationen "uber die zu +setzenden Balken und Bogen, Aufpunkt, L"ange und Steigung, erweitert +wurde, mu\3 sie ein zweites Mal abgearbeitet werden. +Dabei mu\3 ber"ucksichtigt werden, da\3 +der variable Glue der vorangegangenen Note vor der Nachbarschaft gesetzt +wird, um einen besseren Zeilenausschlu\3 zu erm"oglichen. Der +Glue innerhalb der Nachbarschaft mu\3 auf den nat"urlichen Abstand +fixiert werden, da die L"angen der Balken und Bogen nicht mehr ver"andert +werden k"onnen. +F"ur die Notenhalsl"ange wird im Falle, da\3 die Note verbalkt wird, +der Wert der |\stemlist| gew"ahlt; andernfalls wird sie anhand + der Funktion f"ur die Notenhalsl"ange neu berechnet. + +\vfill\eject |