Band1 überarbeitet

This commit is contained in:
2026-04-03 12:31:22 +02:00
parent b44b507b84
commit f97399615b
3 changed files with 364 additions and 438 deletions
+10 -424
View File
@@ -11,11 +11,6 @@
#let einruecken(abstand, inhalt) = pad(left: abstand, inhalt) #let einruecken(abstand, inhalt) = pad(left: abstand, inhalt)
#let def-counter = counter("definition")
// Zähler bei jedem neuen Kapitel (Ebene 1) zurücksetzen
#let def-counter = counter("definition") #let def-counter = counter("definition")
// Zähler bei jedem neuen Kapitel zurücksetzen // Zähler bei jedem neuen Kapitel zurücksetzen
@@ -64,10 +59,6 @@
#it #it
] ]
//#import "definitionen.typ": *
#set text( #set text(
font: "Lato", //Serifenlose Schrift font: "Lato", //Serifenlose Schrift
size: 8.5pt, size: 8.5pt,
@@ -89,10 +80,8 @@
#let meinContent = [*Band 7* #sym.dot.c _Grundlagen_] #let meinContent = [*Band 7* #sym.dot.c _Grundlagen_]
// Einfach die Funktion aufrufen // Einfach die Funktion aufrufen
#deckblatt(bandnr: "1", autor: tt, titel: "Grundlagen der Mathematik,\nAbbildungen,\nFunktionen, Folgen") #deckblatt(bandnr: "1", autor: tt, titel: "Grundlagen der Mathematik,\nAbbildungen,\nFunktionen, Folgen")
#pagebreak()
//#abhaengigkeit()
////////////////////////// #pagebreak()
#set page( #set page(
width:162mm, width:162mm,
@@ -105,6 +94,7 @@
leading: 0.55em, leading: 0.55em,
) )
#set page( #set page(
//background: grid(columns: (1mm,) * 162, rows: (1mm,) * 230, stroke: 0.1mm), //background: grid(columns: (1mm,) * 162, rows: (1mm,) * 230, stroke: 0.1mm),
margin: ( margin: (
@@ -115,374 +105,14 @@
width:162mm, width:162mm,
height: 230mm, height: 230mm,
) )
#v(9mm)
#heading(outlined: false)[Abhängigkeitsgraph] #heading(outlined: false)[Abhängigkeitsgraph]
/* #let mynode(pos, text1, text2, name) = {
node(pos, [#text( size:1.7em, text2) \ #text1], name:name, stroke: 1pt, corner-radius: 0mm,
height: 3.5em, width:10em)
/* Dashed separator from east to west */
//edge(label(str(name)+".west"), label(str(name)+".east"),"-", stroke: 0.2mm, dash:(1mm, 0.8mm))
} */
#let mynode(pos, zahl, inhalt, name) = {
node(
pos,
name: name,
shape: rect, // 1. Zwingt Fletcher zum Rechteck
corner-radius: 0pt, // 2. Verhindert abgerundete Ecken
fill: white, // Optional: Hintergrund füllen
stroke: 1.25pt,
// 3. WICHTIG: Festlegen einer Mindestgröße, damit alle gleich starten
// Anstatt extrude nutzen wir feste Maße, die sich aber am Gitter ausrichten
width: 12em,
height: 5.8em,
{
// Dein Layout-Block
set align(top + right)
text(2.5em, fill: gray.darken(90%))[#zahl]
place(bottom + left, inhalt)
}
)}
#let myedge(start, end, type, ) = {
let sep = 0.15em
edge(start, end, type)
edge(start, end)
}
#diagram(
spacing: (11mm, 7mm),
//debug: 3,
edge-stroke: 1.25pt,
mark-scale: 55%,
mynode((0,0),"",[Vorbereitungsband], <A0>),
mynode((1,0),"1", [Grundlagen], <A1>),
mynode((2,0), "13",[Lineare Algebra], <A13>),
mynode((0,1),"3",[Unendliche Reihen], <A3>),
mynode((1,1), "2",[Differential- und Integralrechnung], <A2>),
mynode((2,1), "14",[Lineare Optimierung], <A14>),
mynode((0,2), [7$#sub(text(0.5em)[1])$],[Gewöhnliche Differentialgleichungen], <A7_1>),
mynode((1,2), "4",[Differentialrechnung mit mehreren Variablen], <A4>),
mynode((2,2), "15",[Nichtlineare Optimierung], <A15>),
mynode((0,3), [7$#sub(text(0.5em)[2])$],[Gewöhnliche Differentialgleichungen], <A7_2>),
mynode((1,3.), "5",[Integralrechnung mit mehreren Variablen], <A5>),
mynode((2,3), "16",[Optimale Prozesse und Systeme], <A16>),
mynode((0,4), "8",[Partielle Differentialgleichungen], <A8>),
mynode((1,4), "6",[Differentialgeometrie], <A6>),
mynode((2,4), "17",[Wahrscheinlichkeitsrechnung, math.Statistik], <A17>),
mynode((0,5), "9",[Komplexe Funktionen], <A9>),
mynode((1,5), "10",[Operatorenrechnung], <A10>),
mynode((2,5), [21$#sub(text(0.5em)[1])$],[Spieltheorie], <A21_1>),
mynode((0,6), "12",[Spezielle Funktionen], <A12>),
mynode((1,6), "11",[Tensoralgebra und -analysis], <A11>),
mynode((2,6), [21$#sub(text(0.5em)[2])$],[Graphentheorie], <A21_2>),
mynode((0,7), [18],[Numerische Methoden], <A18>),
mynode((1,7), [20],[Simulation], <A20>),
mynode((2,7), [19$#sub(text(0.5em)[1])$],[Stochastische Prozesse und Modelle], <A19_1>),
mynode((0,8), [22],[Funktionalanalysis], <A22>),
mynode((1,8), [23],[Symmetriegruppen], <A23>),
mynode((2,8), [19$#sub(text(0.5em)[2])$],[Statistische Versuchsplanung], <A19_2>),
myedge(<A0.east>,<A1.west>,"-|>"),
myedge(<A1.south>,<A2.north>,"-|>"),
myedge(<A2.west>,<A3.east>,"-|>"),
myedge(<A13.south>,<A14.north>,"-|>"),
myedge(<A2.south>,<A4.north>,"-|>"),
myedge(<A4.south>,<A5.north>,"-|>"),
myedge(<A5.south>,<A6.north>,"-|>"),
myedge(<A14.south>,<A15.north>,"-|>"),
myedge(<A7_1.south>,<A7_2.north>,"-|>"),
myedge(<A7_2.south>,<A8.north>,"-|>"),
myedge(<A8.south>,<A9.north>,"-|>"),
myedge(<A9.south>,<A12.north>,"-|>"),
myedge(<A12.south>,<A18.north>,"-|>"),
myedge(<A10.south>,<A11.north>,"-|>"),
myedge(<A15.south>,<A16.north>,"-|>"),
myedge(<A17.south>,<A21_1.north>,"-|>"),
myedge(<A19_1.south>,<A19_2.north>,"-|>"),
// NEUES Edge: 1,3 (n3_1) → 3,2 (n2_3)
// Verlauf: rechts von n3_1 nach rechts, runter auf Höhe von n2_3, dann links zur Node
//9 → 22
edge(
vertices: (
<A9.east>,
(0, 5.2), // deutlich nach rechts → sichtbarer Knick
(0.5, 5.2), // dann nach links
(0.5, 8), // runter
<A22.east>,
),
corner: right,
corner-radius: 0pt, // abgerundete Ecken!
stroke: orange + 1.25pt,
marks: "-|>",
shift: (1pt, 1pt),
),
//10 → 22
edge(
vertices: (
<A10.west>,
(1, 5.2), // deutlich nach rechts → sichtbarer Knick
(0.5, 5.2), // dann nach links
(0.5, 8), // runter
<A22.east>,
),
corner: left,
corner-radius: 0pt, // abgerundete Ecken!
stroke: orange + 1.25pt,
marks: "-|>",
shift: (1pt, 1pt),
),
//3 → 7.2
edge(
vertices: (
<A3.west>,
(-0.85, 1), // deutlich nach rechts → sichtbarer Knick
(-0.85, 1), // dann nach links
(-0.85, 3), // runter
<A7_2.west>,
),
corner: left,
corner-radius: 0pt, // abgerundete Ecken!
stroke: red + 1.25pt,
marks: "-|>",
shift: (1pt, 1pt),
),
//13 → 4
edge(
vertices: (
<A13.west>,
(2, 0.18), // deutlich nach rechts → sichtbarer Knick
(1.5, 0.2), // dann nach links
(1.5, 2), // runter
<A4.east>,
),
corner: left,
corner-radius: 0pt, // abgerundete Ecken!
stroke: green + 1.25pt,
marks: "-|>",
shift: (2pt, 2pt),
),
//1 → 13
edge(
(rel: (0pt, 5mm), to: <A1.east>),
(rel: (0.1, 0.)),
(rel: (0pt, 5mm), to: <A13.west>),
"-|>",
corner-radius: 0pt ,
stroke: green.darken(30%) + 1.25pt,
),
//5 → 8
edge(
(rel: (0pt, 0mm), to: <A5.west>),
(rel: (-0.15, 0.)),
(rel: (0.08,0), to: <A8.east>),
(rel: (0.,0), to: <A8.east>),
"-|>",
corner-radius: 0pt ,
stroke: 1.25pt + olive,
),
//7_1 → 6
edge(
vertices: (
(rel: (0pt, -2pt), to: <A7_1.east>),
(0.25, 2.2),
(0.52, 2.2),
(0.52,4),
(rel: (0pt, 0pt), to: <A6.west>)
),
corner-radius: 0pt,
stroke: gray + 1.25pt,
marks: "-|>",
),
//4 → 7_1
edge(
(rel: (0pt, 5mm), to: <A4.west>),
(rel: (-0.1, 0.)),
(rel: (0pt, 5mm), to: <A7_1.east>),
"-|>",
corner-radius: 0pt ,
stroke: 1.25pt ,
),
//9 → 10
edge(
(rel: (0pt, 5mm), to: <A9.east>),
(rel: (0.1, 0.)),
(rel: (0pt, 5mm), to: <A10.west>),
"-|>",
corner-radius: 0pt ,
stroke: 1.25pt ,
),
//5 → 17
edge(
<A5.east>,
(rel: (0.07, 0.)),
(rel: (0, 0.5)),
(rel: (0pt, 10pt), to: <A17.north>),
<A17.north>,
"-|>",
corner-radius: 0pt ,
stroke: blue.lighten(20%) +1.25pt ,
),
//4 → 15
edge(
(rel: (0pt, -5mm), to: <A4.east>),
(rel: (0.1, 0.)),
(rel: (0pt, -5mm), to: <A15.west>),
"-|>",
corner-radius: 0pt ,
stroke: 1.25pt ,
),
//8 → 16
edge(
(rel: (0.2,0), to: <A8.south>),
(rel: (0., 0.1)),
(rel: (1.3, 0.)),
(rel: (-0.115, 0), to: <A16.west>),
<A16.west>,
"-|>",
corner-radius: 0pt ,
stroke: 1.25pt + yellow.darken(20%),
),
//6 → 11
edge(
(rel: (0pt, -5mm), to: <A6.east>),
(rel: (0.065, 0.)),
(rel: (0.065,0), to: <A11.east>),
(rel: (0.,0), to: <A11.east>),
"-|>",
corner-radius: 0pt ,
stroke: 1.25pt + purple.lighten(20%),
),
//13 → 23
edge(
(<A13.east>),
(rel:(0.75,0)),
(rel:(0, 9.8)),// <----
(rel:(-3.38, 0)),
//(rel: (0.6, 0.), to: <A21_2.east>),
<A23.south>,
"-|>",
corner-radius: 0pt ,
stroke: 1.25pt + orange.darken(10%),
),
//15 → 21_1 21_2
edge(
(<A15.east>),
// Startpunkt
(rel: (0.5, 0)),
(rel: (0.5, 0.), to: <A21_1.east>),
<A21_1.east>,
"-|>",
corner-radius: 0pt ,
stroke: 1.25pt + blue,
),
edge(
(<A15.east>),
// Startpunkt
(rel: (0.5, 0)),
(rel: (0.5, 0.), to: <A21_2.east>),
<A21_2.east>,
"-|>",
corner-radius: 0pt ,
stroke: 1.25pt + blue,
),
//16 → 19_1 19_2
edge(
(<A16.east>),
(rel: (0.3, 0)),
(rel: (0.3, 0.), to: <A19_1.east>),
<A19_1.east>,
"-|>",
corner-radius: 0pt ,
stroke: 1.25pt + purple,
),
edge(
(<A16.east>),
(rel: (0.3, 0)),
(rel: (0.3, 0.), to: <A19_2.east>),
<A19_2.east>,
"-|>",
corner-radius: 0pt ,
stroke: 1.25pt + purple,
),
//17 → 21_2
edge(
(rel: (-0.2,0), to: <A17.south>),
(rel: (0, 0.2)),
(rel: (-.325, 0.)),
(rel: (-0.14, 0), to: <A21_2.west>),
<A21_2.west>,
"-|>",
corner-radius: 0pt ,
stroke: 1.25pt + red,
),
//17 → 19_1, 19_2
edge(
(<A17.west>),
(rel: (-0.075, 0)),
(rel: (-0.075,-0.20), to: <A19_1.west>),
(rel: (0.,-0.2), to: <A19_1.west>),
"-|>",
corner-radius: 0pt ,
stroke: 1.25pt + green,
),
edge(
(<A17.west>),
(rel: (-0.075, 0)),
(rel: (-0.075, 0.), to: <A19_2.west>),
<A19_2.west>,
"-|>",
corner-radius: 0pt ,
stroke: 1.25pt + green,
),
//19_2 → 20
edge(
(<A19_2.north>),
(rel: (-0.2, 0)),
(rel: (0, -0.1)),
(rel: (-0, 0.18), to: <A20.south>),
<A20.south>,
"-|>",
corner-radius: 0pt ,
stroke: 1.25pt + blue,
),
)
/////////////////////////
#v(-6mm)
#scale(x:90%, y:90%)[#abhaengigkeit]
//#scale(factor: 90%, abhaengigkeit)
//#abhaengigkeit
#show heading: it => { #show heading: it => {
set block(below: if it.level == 1 { 2em } else { 1em }) set block(below: if it.level == 1 { 2em } else { 1em })
@@ -491,10 +121,10 @@ edge(
#counter(page).update(1) #counter(page).update(1)
#pagebreak() #pagebreak()
#set text(font: "Atkinson Hyperlegible Next") #set text(font: "Lato")
#set text( #set text(
font: "Atkinson Hyperlegible Next", //Serifenlose Schrift font: "Lato", //Serifenlose Schrift
size: 9pt, size: 9pt,
lang: "de", //Deutsche Spracheinstellungen lang: "de", //Deutsche Spracheinstellungen
) )
@@ -522,50 +152,6 @@ edge(
#outline() #outline()
#pagebreak() #pagebreak()
/* #set page(
header: context {
// 1. Prüfen, ob ein Kapitel (Ebene 1) auf dieser Seite startet
let h1_on_page = query(heading.where(level: 1))
.any(it => it.location().page() == here().page())
// Wenn Kapitelstart: Header komplett leer lassen
if h1_on_page { return none }
let page_num = here().page()
// 2. Die aktuell gültigen Überschriften finden (vor oder auf dieser Seite)
let h1_current = query(heading.where(level: 1))
.filter(it => it.location().page() <= page_num)
.at(-1, default: none)
let h2_current = query(heading.where(level: 2))
.filter(it => it.location().page() <= page_num)
.at(-1, default: none)
// 3. Header-Inhalt zusammenbauen
if calc.even(page_num) {
// Gerade Seite: Seitenzahl links, Überschrift 1 rechts
grid(
columns: (20%, 1fr),
align(left)[#page_num],
align(right)[#if h1_current != none { h1_current.body }]
)
} else {
// Ungerade Seite: Überschrift 2 links, Seitenzahl rechts
grid(
columns: (1fr, 20%),
align(left)[#if h2_current != none { h2_current.body }],
align(right)[#page_num]
)
}
// Optionale Trennlinie unter dem Header
v(0.5em)
line(length: 100%, stroke: 0.5pt + gray)
},
header-ascent: 20%,
) */
#set page( #set page(
header: context { header: context {
// 1. Kapitelstart-Check (wie zuvor) // 1. Kapitelstart-Check (wie zuvor)
@@ -862,7 +448,7 @@ $w(p_1=F, w(p_2)=F, w(p_3=W, w(p_4=W, w(p_5)=F,$
$w(p_6)=W, w(p_7)=F$. $w(p_6)=W, w(p_7)=F$.
] ]
Wir wollen nun die Überlegungen aus Beispiel @Bsp_3_4 verallgemeinern. Die Größen $p$ und $q$ bezeichnen zwei beliebige Aussagen, $p \in A_2, q \in A_2$. Dann gibt die folgende Tabelle die den Beispielen entsprechenden Aussagenverbindungen, deren Namen und Kurzschreibweisen an. Wir bemerken noch einmal, daß eine solche Aussagenverbindung je zwei Elementen von $A_2$ in eindeutiger Weise ein Element von $A_2$ zuordnet. Im Beispiel (1) wird einer Aussage aus $A_2$ eine andere Aussage, ebenfalls aus $A_2$, eindeutig zugeordnet. Aus diesem Grunde können wir auch das Wort Aussagenfunktion anstelle Aussagenverbindung benutzen. //Wir wollen nun die Überlegungen aus Beispiel @Bsp_3_4 verallgemeinern. Die Größen $p$ und $q$ bezeichnen zwei beliebige Aussagen, $p \in A_2, q \in A_2$. Dann gibt die folgende Tabelle die den Beispielen entsprechenden Aussagenverbindungen, deren Namen und Kurzschreibweisen an. Wir bemerken noch einmal, daß eine solche Aussagenverbindung je zwei Elementen von $A_2$ in eindeutiger Weise ein Element von $A_2$ zuordnet. Im Beispiel (1) wird einer Aussage aus $A_2$ eine andere Aussage, ebenfalls aus $A_2$, eindeutig zugeordnet. Aus diesem Grunde können wir auch das Wort Aussagenfunktion anstelle Aussagenverbindung benutzen.
// \begin{table} // \begin{table}
// \captionsetup{labelformat=empty} // \captionsetup{labelformat=empty}
+355 -15
View File
@@ -1,20 +1,360 @@
#import "@preview/fletcher:0.5.8" as fletcher: diagram, node, edge
#let abhaengigkeit() = {
/* place(
top + left,
dx: -1.5cm, // Hebt den linken Rand auf
dy: -0cm, // Abstand von der Oberkante des Blattes
box(fill: white, inset: (x: 20pt, y: 20pt), outset: (x: 0pt, y:0pt), stroke: 2pt)[Vorbereitungsband])
place(
top + left,
dx: 3cm, // Hebt den linken Rand auf
dy: -0cm, // Abstand von der Oberkante des Blattes
box(fill: white, inset: (x: 20pt, y: 20pt), outset: (x: 0pt, y:0pt), stroke: 2pt)[Vorbereitungsband])*/
#let mynode(pos, zahl, inhalt, name) = {
node(
pos,
name: name,
shape: rect, // 1. Zwingt Fletcher zum Rechteck
corner-radius: 0pt, // 2. Verhindert abgerundete Ecken
fill: white, // Optional: Hintergrund füllen
stroke: 1.25pt,
// 3. WICHTIG: Festlegen einer Mindestgröße, damit alle gleich starten
// Anstatt extrude nutzen wir feste Maße, die sich aber am Gitter ausrichten
width: 12em,
height: 5.8em,
{
// Dein Layout-Block
set align(top + right)
text(2.5em, fill: gray.darken(90%))[#zahl]
place(bottom + left, inhalt)
} }
)}
#let myedge(start, end, type, ) = {
let sep = 0.15em
edge(start, end, type)
edge(start, end)
}
#let abhaengigkeit = diagram(
spacing: (11mm, 7mm),
//debug: 3,
edge-stroke: 1.25pt,
mark-scale: 55%,
mynode((0,0),"",[Vorbereitungsband], <A0>),
mynode((1,0),"1", [Grundlagen], <A1>),
mynode((2,0), "13",[Lineare Algebra], <A13>),
mynode((0,1),"3",[Unendliche Reihen], <A3>),
mynode((1,1), "2",[Differential- und Integralrechnung], <A2>),
mynode((2,1), "14",[Lineare Optimierung], <A14>),
mynode((0,2), [7$#sub(text(0.5em)[1])$],[Gewöhnliche Differentialgleichungen], <A7_1>),
mynode((1,2), "4",[Differentialrechnung mit mehreren Variablen], <A4>),
mynode((2,2), "15",[Nichtlineare Optimierung], <A15>),
mynode((0,3), [7$#sub(text(0.5em)[2])$],[Gewöhnliche Differentialgleichungen], <A7_2>),
mynode((1,3.), "5",[Integralrechnung mit mehreren Variablen], <A5>),
mynode((2,3), "16",[Optimale Prozesse und Systeme], <A16>),
mynode((0,4), "8",[Partielle Differentialgleichungen], <A8>),
mynode((1,4), "6",[Differentialgeometrie], <A6>),
mynode((2,4), "17",[Wahrscheinlichkeitsrechnung, math.Statistik], <A17>),
mynode((0,5), "9",[Komplexe Funktionen], <A9>),
mynode((1,5), "10",[Operatorenrechnung], <A10>),
mynode((2,5), [21$#sub(text(0.5em)[1])$],[Spieltheorie], <A21_1>),
mynode((0,6), "12",[Spezielle Funktionen], <A12>),
mynode((1,6), "11",[Tensoralgebra und -analysis], <A11>),
mynode((2,6), [21$#sub(text(0.5em)[2])$],[Graphentheorie], <A21_2>),
mynode((0,7), [18],[Numerische Methoden], <A18>),
mynode((1,7), [20],[Simulation], <A20>),
mynode((2,7), [19$#sub(text(0.5em)[1])$],[Stochastische Prozesse und Modelle], <A19_1>),
mynode((0,8), [22],[Funktionalanalysis], <A22>),
mynode((1,8), [23],[Symmetriegruppen], <A23>),
mynode((2,8), [19$#sub(text(0.5em)[2])$],[Statistische Versuchsplanung], <A19_2>),
myedge(<A0.east>,<A1.west>,"-|>"),
myedge(<A1.south>,<A2.north>,"-|>"),
myedge(<A2.west>,<A3.east>,"-|>"),
myedge(<A13.south>,<A14.north>,"-|>"),
myedge(<A2.south>,<A4.north>,"-|>"),
myedge(<A4.south>,<A5.north>,"-|>"),
myedge(<A5.south>,<A6.north>,"-|>"),
myedge(<A14.south>,<A15.north>,"-|>"),
myedge(<A7_1.south>,<A7_2.north>,"-|>"),
myedge(<A7_2.south>,<A8.north>,"-|>"),
myedge(<A8.south>,<A9.north>,"-|>"),
myedge(<A9.south>,<A12.north>,"-|>"),
myedge(<A12.south>,<A18.north>,"-|>"),
myedge(<A10.south>,<A11.north>,"-|>"),
myedge(<A15.south>,<A16.north>,"-|>"),
myedge(<A17.south>,<A21_1.north>,"-|>"),
myedge(<A19_1.south>,<A19_2.north>,"-|>"),
// NEUES Edge: 1,3 (n3_1) → 3,2 (n2_3)
// Verlauf: rechts von n3_1 nach rechts, runter auf Höhe von n2_3, dann links zur Node
//9 → 22
edge(
vertices: (
<A9.east>,
(0, 5.2), // deutlich nach rechts → sichtbarer Knick
(0.5, 5.2), // dann nach links
(0.5, 8), // runter
<A22.east>,
),
corner: right,
corner-radius: 0pt, // abgerundete Ecken!
stroke: orange + 1.25pt,
marks: "-|>",
shift: (1pt, 1pt),
),
//10 → 22
edge(
vertices: (
<A10.west>,
(1, 5.2), // deutlich nach rechts → sichtbarer Knick
(0.5, 5.2), // dann nach links
(0.5, 8), // runter
<A22.east>,
),
corner: left,
corner-radius: 0pt, // abgerundete Ecken!
stroke: orange + 1.25pt,
marks: "-|>",
shift: (1pt, 1pt),
),
//3 → 7.2
edge(
vertices: (
<A3.west>,
(-0.85, 1), // deutlich nach rechts → sichtbarer Knick
(-0.85, 1), // dann nach links
(-0.85, 3), // runter
<A7_2.west>,
),
corner: left,
corner-radius: 0pt, // abgerundete Ecken!
stroke: red + 1.25pt,
marks: "-|>",
shift: (1pt, 1pt),
),
//13 → 4
edge(
vertices: (
<A13.west>,
(2, 0.18), // deutlich nach rechts → sichtbarer Knick
(1.5, 0.2), // dann nach links
(1.5, 2), // runter
<A4.east>,
),
corner: left,
corner-radius: 0pt, // abgerundete Ecken!
stroke: green + 1.25pt,
marks: "-|>",
shift: (2pt, 2pt),
),
//1 → 13
edge(
(rel: (0pt, 5mm), to: <A1.east>),
(rel: (0.1, 0.)),
(rel: (0pt, 5mm), to: <A13.west>),
"-|>",
corner-radius: 0pt ,
stroke: green.darken(30%) + 1.25pt,
),
//5 → 8
edge(
(rel: (0pt, 0mm), to: <A5.west>),
(rel: (-0.15, 0.)),
(rel: (0.08,0), to: <A8.east>),
(rel: (0.,0), to: <A8.east>),
"-|>",
corner-radius: 0pt ,
stroke: 1.25pt + olive,
),
//7_1 → 6
edge(
vertices: (
(rel: (0pt, -2pt), to: <A7_1.east>),
(0.25, 2.2),
(0.52, 2.2),
(0.52,4),
(rel: (0pt, 0pt), to: <A6.west>)
),
corner-radius: 0pt,
stroke: gray + 1.25pt,
marks: "-|>",
),
//4 → 7_1
edge(
(rel: (0pt, 5mm), to: <A4.west>),
(rel: (-0.1, 0.)),
(rel: (0pt, 5mm), to: <A7_1.east>),
"-|>",
corner-radius: 0pt ,
stroke: 1.25pt ,
),
//9 → 10
edge(
(rel: (0pt, 5mm), to: <A9.east>),
(rel: (0.1, 0.)),
(rel: (0pt, 5mm), to: <A10.west>),
"-|>",
corner-radius: 0pt ,
stroke: 1.25pt ,
),
//5 → 17
edge(
<A5.east>,
(rel: (0.07, 0.)),
(rel: (0, 0.5)),
(rel: (0pt, 10pt), to: <A17.north>),
<A17.north>,
"-|>",
corner-radius: 0pt ,
stroke: blue.lighten(20%) +1.25pt ,
),
//4 → 15
edge(
(rel: (0pt, -5mm), to: <A4.east>),
(rel: (0.1, 0.)),
(rel: (0pt, -5mm), to: <A15.west>),
"-|>",
corner-radius: 0pt ,
stroke: 1.25pt ,
),
//8 → 16
edge(
(rel: (0.2,0), to: <A8.south>),
(rel: (0., 0.1)),
(rel: (1.3, 0.)),
(rel: (-0.115, 0), to: <A16.west>),
<A16.west>,
"-|>",
corner-radius: 0pt ,
stroke: 1.25pt + yellow.darken(20%),
),
//6 → 11
edge(
(rel: (0pt, -5mm), to: <A6.east>),
(rel: (0.065, 0.)),
(rel: (0.065,0), to: <A11.east>),
(rel: (0.,0), to: <A11.east>),
"-|>",
corner-radius: 0pt ,
stroke: 1.25pt + purple.lighten(20%),
),
//13 → 23
edge(
(<A13.east>),
(rel:(0.75,0)),
(rel:(0, 9.8)),// <----
(rel:(-3.38, 0)),
//(rel: (0.6, 0.), to: <A21_2.east>),
<A23.south>,
"-|>",
corner-radius: 0pt ,
stroke: 1.25pt + orange.darken(10%),
),
//15 → 21_1 21_2
edge(
(<A15.east>),
// Startpunkt
(rel: (0.5, 0)),
(rel: (0.5, 0.), to: <A21_1.east>),
<A21_1.east>,
"-|>",
corner-radius: 0pt ,
stroke: 1.25pt + blue,
),
edge(
(<A15.east>),
// Startpunkt
(rel: (0.5, 0)),
(rel: (0.5, 0.), to: <A21_2.east>),
<A21_2.east>,
"-|>",
corner-radius: 0pt ,
stroke: 1.25pt + blue,
),
//16 → 19_1 19_2
edge(
(<A16.east>),
(rel: (0.3, 0)),
(rel: (0.3, 0.), to: <A19_1.east>),
<A19_1.east>,
"-|>",
corner-radius: 0pt ,
stroke: 1.25pt + purple,
),
edge(
(<A16.east>),
(rel: (0.3, 0)),
(rel: (0.3, 0.), to: <A19_2.east>),
<A19_2.east>,
"-|>",
corner-radius: 0pt ,
stroke: 1.25pt + purple,
),
//17 → 21_2
edge(
(rel: (-0.2,0), to: <A17.south>),
(rel: (0, 0.2)),
(rel: (-.325, 0.)),
(rel: (-0.14, 0), to: <A21_2.west>),
<A21_2.west>,
"-|>",
corner-radius: 0pt ,
stroke: 1.25pt + red,
),
//17 → 19_1, 19_2
edge(
(<A17.west>),
(rel: (-0.075, 0)),
(rel: (-0.075,-0.20), to: <A19_1.west>),
(rel: (0.,-0.2), to: <A19_1.west>),
"-|>",
corner-radius: 0pt ,
stroke: 1.25pt + green,
),
edge(
(<A17.west>),
(rel: (-0.075, 0)),
(rel: (-0.075, 0.), to: <A19_2.west>),
<A19_2.west>,
"-|>",
corner-radius: 0pt ,
stroke: 1.25pt + green,
),
//19_2 → 20
edge(
(<A19_2.north>),
(rel: (-0.2, 0)),
(rel: (0, -0.1)),
(rel: (-0, 0.18), to: <A20.south>),
<A20.south>,
"-|>",
corner-radius: 0pt ,
stroke: 1.25pt + blue,
),
)
+1 -1
View File
@@ -16,8 +16,8 @@
#import "@preview/marge:0.1.0": sidenote #import "@preview/marge:0.1.0": sidenote
#import "@preview/eqalc:0.1.3": * #import "@preview/eqalc:0.1.3": *
#import "grafiken.typ": * #import "grafiken.typ": *
#let einruecken(abstand, inhalt) = pad(left: abstand, inhalt) #let einruecken(abstand, inhalt) = pad(left: abstand, inhalt)