1569 lines
40 KiB
Plaintext
1569 lines
40 KiB
Plaintext
#import "@preview/cetz:0.4.0"
|
||
|
||
#set page(margin: 1cm, columns: 2)
|
||
#set heading(numbering: "1.1")
|
||
|
||
#set math.mat(delim: "[")
|
||
#set math.vec(delim: "[")
|
||
|
||
#let transpose(t)={
|
||
let output=t.at(0).zip(..t.slice(1))
|
||
output
|
||
}
|
||
|
||
#let card(
|
||
question: "",
|
||
answer: ""
|
||
) = rect(width: 100%)[
|
||
#strong(question)
|
||
|
||
#answer
|
||
]
|
||
|
||
|
||
/*
|
||
* Grundseite XY
|
||
* X = Höhe
|
||
* Y = Breite
|
||
* Z = Tiefe
|
||
* x ^ . z
|
||
* | /
|
||
* +---> y
|
||
*/
|
||
|
||
#let cube = (
|
||
points: (
|
||
(0,0,0), // 0
|
||
(1,0,0), // 1
|
||
(0,1,0), // 2
|
||
(1,1,0), // 3
|
||
(0,0,1), // 4
|
||
(1,0,1), // 5
|
||
(0,1,1), // 6
|
||
(1,1,1), // 7
|
||
),
|
||
edges: (
|
||
(0,1, orange),
|
||
(0,2, orange),
|
||
(0,4),
|
||
(1,3, orange),
|
||
(1,5),
|
||
(2,3, orange),
|
||
(2,6),
|
||
(3,7),
|
||
(4,5),
|
||
(4,6),
|
||
(5,7),
|
||
(6,7)
|
||
)
|
||
)
|
||
|
||
#let house = (
|
||
points: (
|
||
(0.0, 0.0, 0.0), // 0
|
||
(0.0, 0.0, 0.5), // 1
|
||
(0.0, 1.0, 0.0), // 2
|
||
(0.0, 1.0, 0.5), // 3
|
||
(1.0, 0.0, 0.0), // 4
|
||
(1.0, 0.0, 0.5), // 5
|
||
(1.0, 1.0, 0.0), // 6
|
||
(1.0, 1.0, 0.5), // 7
|
||
(0.0, 0.5, 1.0),
|
||
(1.0, 0.5, 1.0)
|
||
),
|
||
edges: (
|
||
(0,1, orange),
|
||
(0,2, orange),
|
||
(0,4),
|
||
(1,3, orange),
|
||
(1,5),
|
||
(2,3, orange),
|
||
(2,6),
|
||
(3,7),
|
||
(4,5),
|
||
(4,6),
|
||
(5,7),
|
||
(6,7),
|
||
// Roof
|
||
(1,8, orange),
|
||
(3,8, orange),
|
||
(5,9),
|
||
(7,9),
|
||
(8,9)
|
||
)
|
||
)
|
||
|
||
= Darstellende Geometrie
|
||
== Der Satz von Pohlke
|
||
#card(
|
||
question: [Wie lautet der Satz von Pohlke und wie lasst er sich anwenden?],
|
||
answer: [
|
||
Jedes Dreibein, das eine Ebene aufspannt, ist Parallelprojektion eines
|
||
gleichschenkligen orthogonalen Dreibeins im Raum.
|
||
|
||
#cetz.canvas({
|
||
import cetz.draw: *
|
||
import cetz.matrix: *
|
||
|
||
for edge in cube.edges {
|
||
let transformation = transform-rotate-xz(75deg, -35deg)
|
||
let a = mul4x4-vec3(transformation, cube.points.at(edge.at(0)))
|
||
let b = mul4x4-vec3(transformation, cube.points.at(edge.at(1)))
|
||
// let a = cube.points.at(edge.at(0))
|
||
// let b = cube.points.at(edge.at(1))
|
||
line((a.at(0), a.at(1)), (b.at(0), b.at(1)), stroke: if (a.at(2) < 0 or
|
||
b.at(2) < 0) {gray} else {black})
|
||
}
|
||
})
|
||
])
|
||
#card(
|
||
question: [Was sind Militar-, Kavalier-und KabinettProjektionen?],
|
||
answer: [
|
||
#table(columns: 3*(1fr,),
|
||
[Militar], [Kavalier], [Kabinett],
|
||
[
|
||
#cetz.canvas({
|
||
import cetz.draw: *
|
||
import cetz.matrix: *
|
||
|
||
for edge in cube.edges {
|
||
let transformation = ((cos(45deg),cos(45deg),0),(sin(45deg),-sin(45deg),-1))
|
||
let a = mul-vec(transformation, cube.points.at(edge.at(0)))
|
||
let b = mul-vec(transformation, cube.points.at(edge.at(1)))
|
||
line(a,b, stroke: if (edge.len() > 2) {edge.at(2)} else {black})
|
||
}
|
||
})
|
||
],
|
||
[
|
||
#cetz.canvas({
|
||
import cetz.draw: *
|
||
import cetz.matrix: *
|
||
|
||
for edge in cube.edges {
|
||
let transformation = ((1,0,cos(45deg)),(0,1,sin(45deg)))
|
||
let a = mul-vec(transformation, cube.points.at(edge.at(0)))
|
||
let b = mul-vec(transformation, cube.points.at(edge.at(1)))
|
||
line(a,b, stroke: if (edge.len() > 2) {edge.at(2)} else {black})
|
||
}
|
||
})
|
||
],
|
||
[
|
||
#cetz.canvas({
|
||
import cetz.draw: *
|
||
import cetz.matrix: *
|
||
|
||
for edge in cube.edges {
|
||
let transformation = ((1,0,0.5 * cos(45deg)),(0,1,0.5 * sin(45deg)))
|
||
let a = mul-vec(transformation, cube.points.at(edge.at(0)))
|
||
let b = mul-vec(transformation, cube.points.at(edge.at(1)))
|
||
line(a,b, stroke: if (edge.len() > 2) {edge.at(2)} else {black})
|
||
}
|
||
})
|
||
]
|
||
)
|
||
|
||
])
|
||
== Orthogonale Projektionen
|
||
#card(
|
||
question: [Was sind Othogonal-, isometrische und dimetrische Projektionen?],
|
||
answer: [
|
||
*Orthogonalprojektion:* Parallelprojektion, bei denen die Projektion-
|
||
sstrahlen senkrecht zur Bildebene sind.
|
||
|
||
*isometrisch:* Orthogonalprojektion, bei der die Bildebene senkrecht zur
|
||
Raumdiagonalen ist.
|
||
|
||
*dimetrisch:* wie isometrisch, aber die tiefe ist nur 1/2
|
||
])
|
||
#card(
|
||
question: [Wie erkennt man, dass die Parallelprojektion des
|
||
Einheitswürfels eine Orthogonalprojektion ist?],
|
||
answer: [
|
||
|
||
])
|
||
== Grund-und Aufriss
|
||
#let scene(xy) = {
|
||
import cetz.draw: *
|
||
import cetz.matrix: *
|
||
|
||
let model = house
|
||
|
||
for edge in model.edges {
|
||
let a = vector.add(model.points.at(edge.at(0)), (0.3,0,0))
|
||
let b = vector.add(model.points.at(edge.at(1)), (0.3,0,0))
|
||
line(mul-vec(xy, a),mul-vec(xy, b), stroke: if (edge.len() > 2) {edge.at(2)} else {gray})
|
||
}
|
||
line(
|
||
mul-vec(xy, (0,-0.5,0)),
|
||
mul-vec(xy, (1,-0.5,0)),
|
||
mark: (end: "stealth"))
|
||
content((), $ x $, anchor: "west")
|
||
line(
|
||
mul-vec(xy, (0,-0.5,0)),
|
||
mul-vec(xy, (0,2,0)),
|
||
mark: (end: "stealth"))
|
||
content((), $ * (y) $, anchor: "west")
|
||
line(
|
||
mul-vec(xy, (0,-0.5,0)),
|
||
mul-vec(xy, (0,-0.5,1)),
|
||
mark: (end: "stealth"))
|
||
content((), $ z $, anchor: "south")
|
||
circle(
|
||
mul-vec(xy, (1.3,0,0.5)), radius: 0.08,
|
||
fill: white
|
||
)
|
||
content((rel: (0,0.3)), $mono(x)$)
|
||
circle(
|
||
mul-vec(xy, (1.3,0,0)), radius: 0.08,
|
||
fill: white
|
||
)
|
||
content((rel: (0,-0.3)), $mono(x')$)
|
||
circle(
|
||
mul-vec(xy, (0,0,0.5)), radius: 0.08,
|
||
fill: white
|
||
)
|
||
content((rel: (0,0.3)), $mono(x'')$)
|
||
}
|
||
#card(
|
||
question: [Was sind Grund- und Aufriss, Ordner und Rissachsen?],
|
||
answer: [#grid(columns: 2*(1fr,), align: center + horizon,
|
||
cetz.canvas({
|
||
import cetz.draw: *
|
||
import cetz.matrix: *
|
||
|
||
|
||
// let transformation = transform-rotate-xyz(0deg, -20deg, 40deg)
|
||
let xy = ((cos(30deg),cos(30deg),0),(-sin(30deg),sin(30deg),1))
|
||
scene(xy)
|
||
}),
|
||
cetz.canvas({
|
||
import cetz.draw: *
|
||
import cetz.matrix: *
|
||
|
||
let model = house
|
||
|
||
let xy = ((0,1,0),(0,0,1))
|
||
for edge in model.edges {
|
||
let a = vector.add(model.points.at(edge.at(0)), (0,0,0))
|
||
let b = vector.add(model.points.at(edge.at(1)), (0,0,0))
|
||
line(mul-vec(xy, a),mul-vec(xy, b), stroke: if (edge.len() > 2) {edge.at(2)} else {gray})
|
||
}
|
||
circle(
|
||
mul-vec(xy, (1.3,0,0.5)), radius: 0.08,
|
||
fill: white
|
||
)
|
||
content((rel: (0,0.3)), $mono(x'')$)
|
||
line(
|
||
mul-vec(xy, (0,-0.5,0)),
|
||
mul-vec(xy, (0,-0.5,1)),
|
||
mark: (end: "stealth")
|
||
)
|
||
content((), $ z $, anchor: "south")
|
||
line(
|
||
mul-vec(xy, (0,-0.5,0)),
|
||
mul-vec(xy, (0,1.3,0)),
|
||
mark: (end: "stealth")
|
||
)
|
||
content((), $ * $, anchor: "west")
|
||
content((rel: (0,-.1)), $ y $, anchor: "north")
|
||
content((.6,1.2), [Aufriss])
|
||
|
||
/*
|
||
* Grundriss
|
||
*/
|
||
|
||
let xy = ((0,1,0),(-1,0,0))
|
||
for edge in model.edges {
|
||
let a = vector.add(model.points.at(edge.at(0)), (0.3,0,0))
|
||
let b = vector.add(model.points.at(edge.at(1)), (0.3,0,0))
|
||
line(mul-vec(xy, a),mul-vec(xy, b), stroke: if (edge.len() > 2) {edge.at(2)} else {gray})
|
||
}
|
||
circle(
|
||
mul-vec(xy, (1.3,0,0.5)), radius: 0.08,
|
||
fill: white
|
||
)
|
||
content((rel: (0,0.3)), $mono(x')$)
|
||
line(
|
||
mul-vec(xy, (0,-0.5,0)),
|
||
mul-vec(xy, (1,-0.5,0)),
|
||
mark: (end: "stealth")
|
||
)
|
||
content((), $ x $, anchor: "north")
|
||
|
||
content((.6,-1.6), [Grundriss])
|
||
|
||
/*
|
||
* Seitenriss
|
||
*/
|
||
let phi = 60deg
|
||
let margin = 1.3
|
||
let xy = ((sin(phi),cos(phi),0),(0,0,1))
|
||
let transform(v) = vector.add(
|
||
mul-vec(
|
||
((cos(-phi),-sin(-phi)),(sin(-phi),cos(-phi))),
|
||
mul-vec(xy, vector.add(v, (-.5,-.5,margin)))
|
||
),
|
||
(0.5,-.3 -.5)
|
||
)
|
||
for edge in model.edges {
|
||
let a = vector.add(model.points.at(edge.at(0)), (0,0,0))
|
||
let b = vector.add(model.points.at(edge.at(1)), (0,0,0))
|
||
line(transform(a),transform(b), stroke: if (edge.len() > 2) {edge.at(2)} else {gray})
|
||
}
|
||
let transform(v) = vector.add(
|
||
mul-vec(
|
||
((cos(-phi),-sin(-phi)),(sin(-phi),cos(-phi))),
|
||
v
|
||
),
|
||
(0.5,-.3 -.5)
|
||
)
|
||
line(transform((-1,margin)),transform((1,margin)))
|
||
content((), $ ** $, angle: -phi, anchor: "west")
|
||
|
||
content((2,1), [Seitenriss])
|
||
})
|
||
)
|
||
$*$, $*$$*$: Rissachsen \
|
||
Ordner
|
||
])
|
||
#card(
|
||
question: [Ein Punkt liege in einem durch Grund-und Aufriss
|
||
bekannten Dreieck. Konstruieren Sie zum Aufriss des
|
||
Punkts seinen Grundriss.],
|
||
answer: [
|
||
Ziehe Geraden je von Ecke durch Punkt bis gegenüberliegende Kante.
|
||
Der Schnittpunkt teilt Kante in zwei Teilverhaltnisse.
|
||
Diese Teilverhaltnisse in Grundriss übertragen und Gerade von Schnittpunkt zu
|
||
Ecke ziehen. Schnittpunkt aller Geraden ist der Punkt im Grundriss.
|
||
])
|
||
== +5 (Spezielle) Seitenrisse
|
||
#card(
|
||
question: [Wie konstruiert man einen Seitenriss?],
|
||
answer: [
|
||
Man schaut von Modell in Richtung Rissachse.
|
||
])
|
||
#card(
|
||
question: [Zeichnen Sie zum Grund-und aufriss eines Würfels einen
|
||
Seitenriss, der eine der Würfel-Diagonalen in wahrer
|
||
Länge zeigt.],
|
||
answer: [
|
||
Erster Seitenriss 45deg. Dann zweiten Seitenriss 45deg zum ersten
|
||
Seitenriss. Zeigt Raumdiagonale in wahrere länge.
|
||
])
|
||
== Kurven auf Flachen
|
||
#card(
|
||
question: [
|
||
Wie berechnet man die Tangentialebenen einer implizit
|
||
gegebenen Flache?],
|
||
answer: [
|
||
$Delta F dot (y - x) = 0$ stellt die Tangentialebene von $cal(F)$ an der Stelle
|
||
$x$ dar. (Implizite Flächendarstellung $F(x) = F(x,y,z) = 0$)
|
||
])
|
||
#card(
|
||
question: [Was ist die Kontur und was gilt für eine Kurve, die die
|
||
Kontur schneidet im Grundriss?],
|
||
answer: [
|
||
Wo $x(t)$ die Konturlinie kreuzt, berührt sie im Grundriss den Umriss.
|
||
Bei parallelem Licht teilt die Konturlinie die helle und die dunkle Seite
|
||
des Modells. Der Schatten = Silhoutte hat einen Umriss.
|
||
])
|
||
|
||
== Durchdringungen
|
||
#card(
|
||
question: [Zeichnen Sie die Durchdringung von zwei Zylindern, deren
|
||
Achsen, die sich im Allg. nicht schneiden, orthogonale
|
||
Richtungen haben.
|
||
],
|
||
answer: [
|
||
|
||
])
|
||
|
||
= Affine Geometrie
|
||
== Affine Raume und Koordinaten
|
||
#card(
|
||
question: [Was sind ein affiner Raum, ein affines Koordinatensystem
|
||
und affine Koordinaten?],
|
||
answer: [
|
||
Ein affiner Raum ist eine Punktmenge $cal(A)$ mit einem zugehörigen
|
||
Vektorraum $A$ und einer binären surjektiven Operation $-: cal(A) times
|
||
cal(A) -> A, (p,q) |-> q - p$
|
||
|
||
Ein affines Koordinatensystem besteht aus einem Ursprung $a in cal(A)$ und
|
||
einer Basis $a_1...a_n in A$. Bezüglich solch eines affinen
|
||
Koordinatensystems hat jeder Punkt $x in cal(A)$ eine eindeutige Darstellung
|
||
$x = a + a_1 x_1 + ... + a_n x_n$. Die Koeffizienten $x_i$ heißen affine
|
||
Koordinaten von $x$ bezüglich des affinene Systems $a a_1...a_n$ und bilden
|
||
den Koordinatenvektor $[x_1 ... x_n]^t$ des Punktes $x$.
|
||
])
|
||
|
||
== Baryzentrische Koordinaten
|
||
#card(
|
||
question: [Was sind baryzentrische Koordinaten, Grundecke,
|
||
erweiterte Koordinaten?],
|
||
answer: [
|
||
Zu einem Punkt $p = p_0 + a_1 x_1 + ... +
|
||
a_n x_n$ sind die Koeffizienten $x_0, ..., x_n$ die baryzentrischen
|
||
Koordinaten bezüglich des Grundecks $p_0 .. p_n$. Gleichzeitig erweitern sie
|
||
die affinen Koordinaten, sodass sich die Summe zu Eins ergänzt.
|
||
$
|
||
script("erweiterter \nKoordinatenvektor")
|
||
vec(1,p) = mat(1,...,1;p_0, ..., p_n) vec(x_0, x)
|
||
script("baryzentrischer \nKoordinatenvektor")
|
||
$
|
||
])
|
||
#card(
|
||
question: [Wie hängen baryzentrische und affine Koordinaten
|
||
zusammen?],
|
||
answer: [
|
||
$
|
||
&p = \
|
||
&= p_0 + a_1 x_1 + ... + a_n x_n \
|
||
&= p_0 (1 - x_1 - ... - x_n) + (a + a_1) x_1 + ... + (a + a_n) x_n \
|
||
&= p_0 x_0 + ... + p_n x_n
|
||
$
|
||
])
|
||
#card(
|
||
question: [Was bedeuten baryzentrische Koordinaten bezüglich eines
|
||
Dreiecks geometrisch?],
|
||
answer: [
|
||
#grid(columns: 2*(1fr,),
|
||
cetz.canvas({
|
||
import cetz.draw: *
|
||
import cetz.matrix: *
|
||
import calc: *
|
||
|
||
let a = (0,0)
|
||
let b = (3,0.5)
|
||
let c = (1.2,2)
|
||
circle(a, radius: 0, name: "a")
|
||
circle(b, radius: 0, name: "b")
|
||
circle(c, radius: 0, name: "c")
|
||
let transformation = transpose((a,b,c))
|
||
let bary(x) = mul-vec(transformation, vector.div(x, x.sum()))
|
||
|
||
line(
|
||
(bary: (a: 1, b: 0, c: 0)),
|
||
(bary: (a: 0, b: 1, c: 0)),
|
||
(bary: (a: 0, b: 0, c: 1)),
|
||
close: true
|
||
)
|
||
|
||
let p = (.28,.32,.5)
|
||
|
||
circle((bary: (a: .28, b: .32, c: .5)), radius: 0.08, fill: white)
|
||
content((rel: (angle: 20deg, radius: .2)), $p$, anchor: "north")
|
||
line((bary: (a: 1, b: 0, c: 0)), bary(vector.element-product(p, (0,1,1))))
|
||
|
||
line(bary((1,0,0)), bary(p), name: "line")
|
||
content(
|
||
("line.start", 70%, "line.end"),
|
||
angle: "line.end",
|
||
padding: .05,
|
||
anchor: "south",
|
||
text($x_1 + x_2$, size: 7pt)
|
||
)
|
||
line(bary(p), bary(vector.element-product(p, (0,1,1))), name: "line")
|
||
content(
|
||
("line.start", 30%, "line.end"),
|
||
angle: "line.end",
|
||
padding: .05,
|
||
anchor: "south",
|
||
text($: x_0$, size: 7pt)
|
||
)
|
||
|
||
line(bary((0,0,1)), bary(vector.element-product(p, (0,1,1))), name: "line")
|
||
content(
|
||
("line.start", 50%, "line.end"),
|
||
angle: "line.end",
|
||
padding: .05,
|
||
anchor: "south",
|
||
text($x_1$, size: 7pt)
|
||
)
|
||
content(
|
||
("line.start", 99%, "line.end"),
|
||
angle: "line.end",
|
||
padding: .05,
|
||
anchor: "south",
|
||
text($:$, size: 7pt)
|
||
)
|
||
line(bary(vector.element-product(p, (0,1,1))), bary((0,1,0)), name: "line")
|
||
content(
|
||
("line.start", 50%, "line.end"),
|
||
angle: "line.end",
|
||
padding: .05,
|
||
anchor: "south",
|
||
text($x_2$, size: 7pt)
|
||
)
|
||
|
||
circle(("a"), radius: 0.08, fill: white)
|
||
content((rel: (angle: 20deg, radius: .2)), $p_0$, anchor: "north")
|
||
circle(("b"), radius: 0.08, fill: white)
|
||
content((rel: (angle: 20deg, radius: .2)), $p_1$, anchor: "south-west")
|
||
circle(("c"), radius: 0.08, fill: white)
|
||
content((rel: (angle: 20deg, radius: .2)), $p_2$, anchor: "south-west")
|
||
}),
|
||
|
||
cetz.canvas({
|
||
import cetz.draw: *
|
||
import cetz.matrix: *
|
||
import calc: *
|
||
|
||
let a = (0,0)
|
||
let b = (3,0.5)
|
||
let c = (1.2,2)
|
||
circle(a, radius: 0, name: "a")
|
||
circle(b, radius: 0, name: "b")
|
||
circle(c, radius: 0, name: "c")
|
||
let transformation = transpose((a,b,c))
|
||
let bary(x) = mul-vec(transformation, vector.div(x, x.sum()))
|
||
|
||
line(
|
||
(bary: (a: 1, b: 0, c: 0)),
|
||
(bary: (a: 0, b: 1, c: 0)),
|
||
(bary: (a: 0, b: 0, c: 1)),
|
||
close: true
|
||
)
|
||
|
||
let coord = (.28,.32,.5)
|
||
let p = vector.div(coord, coord.sum())
|
||
|
||
circle((bary(p)), radius: 0.08, fill: white)
|
||
content((rel: (angle: 20deg, radius: .2)), $p$, anchor: "north")
|
||
|
||
line(bary((p.at(0) + p.at(1),0,p.at(2))), bary((0,p.at(0) + p.at(1), p.at(2))), name: "line")
|
||
line(bary((p.at(0),0,p.at(1) + p.at(2))), bary((p.at(1),p.at(0) + p.at(2), 0)), name: "line")
|
||
line(bary((0,p.at(1),p.at(0) + p.at(2))), bary((p.at(2) + p.at(0),p.at(1), 0)), name: "line")
|
||
|
||
line(bary((1,0,0)), bary((p.at(2) + p.at(0),p.at(1), 0)), name: "line")
|
||
content(
|
||
("line.start", 50%, "line.end"),
|
||
angle: "line.end",
|
||
padding: .05,
|
||
anchor: "north",
|
||
text($x_1 :$, size: 7pt)
|
||
)
|
||
|
||
line(bary((p.at(2) + p.at(0),p.at(1), 0)), bary((p.at(1),p.at(0) + p.at(2), 0)), name: "line")
|
||
content(
|
||
("line.start", 50%, "line.end"),
|
||
angle: "line.end",
|
||
padding: .05,
|
||
anchor: "north",
|
||
text($x_2$, size: 7pt)
|
||
)
|
||
|
||
line(bary((p.at(1),p.at(0) + p.at(2), 0)), bary((0,1,0)), name: "line")
|
||
content(
|
||
("line.start", 50%, "line.end"),
|
||
angle: "line.end",
|
||
padding: .05,
|
||
anchor: "north",
|
||
text($: x_0$, size: 7pt)
|
||
)
|
||
|
||
circle(("a"), radius: 0.08, fill: white)
|
||
content((rel: (angle: -20deg, radius: .2)), $p_0$, anchor: "north")
|
||
circle(("b"), radius: 0.08, fill: white)
|
||
content((rel: (angle: 20deg, radius: .2)), $p_1$, anchor: "south-west")
|
||
circle(("c"), radius: 0.08, fill: white)
|
||
content((rel: (angle: 20deg, radius: .2)), $p_2$, anchor: "south-west")
|
||
})
|
||
)
|
||
])
|
||
#card(
|
||
question: [Wie erhalt man die baryzentrischen Koordinaten des
|
||
Höhenpunkts, des In-und Umkreismittelpunkts eines
|
||
Dreiecks?],
|
||
answer: [
|
||
Umkreismittelpunkt:
|
||
$
|
||
m = (sans(a) sin(2 alpha) + ... + sans(c) sin(2 gamma)) / (sin(2 gamma) + ... + sin(2 gamma))
|
||
$
|
||
|
||
Inkreismittelpunkt
|
||
$
|
||
n = (sans(a) a + ... + sans(c) c) / (a + ... + c)
|
||
$
|
||
|
||
Höhenpunkt
|
||
$
|
||
h = (sans(a) tan(alpha) + ... + sans(c) tan(gamma)) / (tan(alpha) + ... + tan(gamma))
|
||
$
|
||
])
|
||
== Affinkombinationen
|
||
#card(
|
||
question: [Was sind Affin-und Konvex-kombinationen?],
|
||
answer: [
|
||
Eine Affinkombinationen ist eine Summe
|
||
$
|
||
sans(p) &:= sum_(i=0)^m p_i omega_i \
|
||
&:= sans(p)_0 omega + (sans(p)_1 - sans(p)_0)omega_1 + ... +
|
||
(sans(p)_m - sans(p)_0) omega_m
|
||
$
|
||
$
|
||
omega = omega_0 + ... + omega_m = cases(1 "falls" sans(p) "ein Punkt", 0
|
||
"falls" sans(p) "ein Vektor")
|
||
$
|
||
Eine Affinkombinationen heißt Konvexkombination, falls
|
||
$
|
||
omega = 1 "und" forall i : omega_i >= 0
|
||
$
|
||
])
|
||
#card(
|
||
question: [Was sind konvexe Hüllen und Simplexe?],
|
||
answer: [
|
||
Die Menge aller Konvexkombinationen bildet die konvexe Hülle der Punktmenge
|
||
${sans(p)_0, ..., sans(p)_m}$. Insbesonder heißt die konvexe Hülle eines
|
||
Grundecks $sans(p)_0...sans(p)_n$ Simplex und speziell für $n=1$ Strecke,
|
||
für $n=2$ Dreieck und für $n=3$ Tetraeder.
|
||
])
|
||
== Unterraume
|
||
#card(
|
||
question: [Wie kann man affine Unterraume darstellen?],
|
||
answer: [
|
||
Die Lösung
|
||
$
|
||
n vec("", x, "") = vec("", b, "") + overbrace(mat(""; b_1, ..., b_r; ""),r) vec(y,"")r
|
||
$
|
||
eines inhomogenen linearen Gleichungssystems (LGS)
|
||
$
|
||
n-r overbrace(mat(""; "", A, ""; ""), n) vec("", x, "") = vec(a, "")
|
||
$
|
||
vom Rang $n-r$ stellt einen affinen Unterraum des $cal(A)^n$ der Dimension
|
||
$r$ dar. Der Parametervektor $y$ stellt $x$ bezüglich des
|
||
Unterraum-Koordinatensystems $sans(b)sans(b)_1...sans(b)_r$ dar.
|
||
])
|
||
#card(
|
||
question: [Was ist eine Hyperebene und wie stellt man sie mit
|
||
baryzentrischen Koordinaten dar?],
|
||
answer: [
|
||
Eine Hyperebene ist ein (n-1)-dimensionaler Untervektorraum des $cal(A)^n$.
|
||
Sie hat eine Darstellung der Form $u(x) := u_1 x_1 + ... + u_n x_n + u_0 =
|
||
0$.Aus dieser linearen Gleichung lässt sich leicht eine Darstellung in
|
||
baryzentrischen Koordinaten bezüglich der Punkte mit den erweiterten
|
||
Koordinatenvektoren $[1 1 0...0]^t, [1 0 1 0...0]^t, ..., [1 0...0 1]^t$
|
||
gewinnen. Sei $1 = x_0 + ... + x_n$. Dann ist
|
||
$
|
||
u(x) &= u_0 ( x_0 + ... + x_n) + u_1 x_1 + ... + u_n x_n \
|
||
&= u_0 x_0 + (u_0 + u_1) x_1 + ... + (u_0 + u_n) x_n \
|
||
&= 0
|
||
$
|
||
])
|
||
#card(
|
||
question: [Wie kann ein Würfel in 6 Simplexe gleichen Volumens
|
||
zerlegt werden?],
|
||
answer: [
|
||
#grid(columns: 2*(1fr,),
|
||
[
|
||
$0 <= x <= y <= z <= 1$ \
|
||
$0 <= x <= z <= y <= 1$ \
|
||
$0 <= y <= x <= z <= 1$ \
|
||
$0 <= y <= z <= x <= 1$ \
|
||
$0 <= z <= x <= y <= 1$ \
|
||
$0 <= z <= y <= x <= 1$ \
|
||
],
|
||
[
|
||
#cetz.canvas({
|
||
import cetz.draw: *
|
||
import cetz.matrix: *
|
||
|
||
let transformation = ((1,0,-0.5 * cos(45deg)),(0,1,0.5 * sin(45deg)))
|
||
for edge in cube.edges {
|
||
let a = mul-vec(transformation, cube.points.at(edge.at(0)))
|
||
let b = mul-vec(transformation, cube.points.at(edge.at(1)))
|
||
line(a,b, stroke: black)
|
||
}
|
||
line(
|
||
mul-vec(transformation, (0,0,0)),
|
||
mul-vec(transformation, (1,0,0)),
|
||
mul-vec(transformation, (1,1,1)),
|
||
mul-vec(transformation, (0,1,1)),
|
||
close: true,
|
||
stroke: green,
|
||
fill: green.transparentize(75%)
|
||
)
|
||
line(
|
||
mul-vec(transformation, (0,0,0)),
|
||
mul-vec(transformation, (0,1,0)),
|
||
mul-vec(transformation, (1,1,1)),
|
||
mul-vec(transformation, (1,0,1)),
|
||
close: true,
|
||
stroke: blue,
|
||
fill: blue.transparentize(75%)
|
||
)
|
||
line(
|
||
mul-vec(transformation, (0,0,0)),
|
||
mul-vec(transformation, (0,0,1)),
|
||
mul-vec(transformation, (1,1,1)),
|
||
mul-vec(transformation, (1,1,0)),
|
||
close: true,
|
||
stroke: red,
|
||
fill: red.transparentize(75%)
|
||
)
|
||
})
|
||
Einfache Freudenthal-Triangulierung
|
||
]
|
||
)
|
||
])
|
||
== Gitter
|
||
#card(
|
||
question: [Was kann ein regelmaBiges Dreiecksgitter in
|
||
baryzentrischen Koordinaten beschrieben werden?],
|
||
answer: [
|
||
$
|
||
x = a alpha + b beta + c gamma
|
||
text("mit") 1 = alpha + beta + gamma
|
||
$
|
||
Die Isolinien $alpha = i, beta = j, gamma = k$ für $i, j, k in ZZ$ beschreiben
|
||
ein regelmaBiges Gitter.
|
||
|
||
#cetz.canvas({
|
||
import cetz.draw: *
|
||
import cetz.matrix: *
|
||
circle((0,0), radius: 0, name: "a")
|
||
circle((1,0), radius: 0, name: "b")
|
||
circle((cos(60deg),sin(60deg)), radius: 0, name: "c")
|
||
|
||
line((bary: (a: 2, b: -2, c: 1)), (bary: (a: 1, b: -2, c: 2)))
|
||
content((rel: (angle: -60deg, radius: -1.3), to: ()), $alpha = 1$, angle: -60deg, anchor: "west")
|
||
line((bary: (a: 2, b: -1, c: 0)), (bary: (a: 0, b: -1, c: 2)))
|
||
content((rel: (angle: -60deg, radius: -1.3), to: ()), $alpha = 0$, angle: -60deg, anchor: "west")
|
||
line((bary: (a: 2, b: 0, c: -1)), (bary: (a: -1, b: 0, c: 2)))
|
||
content((rel: (angle: -60deg, radius: -1.3), to: ()), $alpha = -1$, angle: -60deg, anchor: "west")
|
||
line((bary: (a: 1, b: 1, c: -1)), (bary: (a: -2, b: 1, c: 2)))
|
||
content((rel: (angle: -60deg, radius: -1.3), to: ()), $alpha = -2$, angle: -60deg, anchor: "west")
|
||
line((bary: (a: 0, b: 2, c: -1)), (bary: (a: -2, b: 2, c: 1)))
|
||
line((bary: (a: -1, b: 3, c: -1)), (bary: (a: -2, b: 3, c: 0)))
|
||
|
||
line((bary: (a: 1, b: -2, c: 2)), (bary: (a: -2, b: 1, c: 2)))
|
||
content((rel: (.1,0)), $gamma = 2$, anchor: "west")
|
||
line((bary: (a: 2, b: -2, c: 1)), (bary: (a: -2, b: 2, c: 1)))
|
||
content((rel: (.1,0)), $gamma = 1$, anchor: "west")
|
||
line((bary: (a: 2, b: -1, c: 0)), (bary: (a: -2, b: 3, c: 0)))
|
||
content((rel: (.1,0)), $gamma = 0$, anchor: "west")
|
||
line((bary: (a: 2, b: 0, c: -1)), (bary: (a: -2, b: 4, c: -1)))
|
||
content((rel: (.1,0)), $gamma = -1$, anchor: "west")
|
||
|
||
|
||
line((bary: (a: 2, b: -2, c: 1)), (bary: (a: 2, b: 0, c: -1)))
|
||
content((rel: (angle: 60deg, radius: -1.3), to: ()), $beta = 0$, angle: 60deg, anchor: "west")
|
||
line((bary: (a: 1, b: -2, c: 2)), (bary: (a: 1, b: 1, c: -1)))
|
||
content((rel: (angle: 60deg, radius: -1.3), to: ()), $beta = 1$, angle: 60deg, anchor: "west")
|
||
line((bary: (a: 0, b: -1, c: 2)), (bary: (a: 0, b: 2, c: -1)))
|
||
content((rel: (angle: 60deg, radius: -1.3), to: ()), $beta = 2$, angle: 60deg, anchor: "west")
|
||
line((bary: (a: -1, b: 0, c: 2)), (bary: (a: -1, b: 3, c: -1)))
|
||
content((rel: (angle: 60deg, radius: -1.3), to: ()), $beta = 3$, angle: 60deg, anchor: "west")
|
||
line((bary: (a: -2, b: 1, c: 2)), (bary: (a: -2, b: 4, c: -1)))
|
||
|
||
circle(("a"), radius: 0.08, fill: white)
|
||
content((rel: (angle: 20deg, radius: .2)), $a$, anchor: "south-west")
|
||
circle(("b"), radius: 0.08, fill: white)
|
||
content((rel: (angle: 20deg, radius: .2)), $b$, anchor: "south-west")
|
||
circle(("c"), radius: 0.08, fill: white)
|
||
content((rel: (angle: 20deg, radius: .2)), $c$, anchor: "south-west")
|
||
})
|
||
])
|
||
#card(
|
||
question: [Was ist die Coxeter-Freudenthal-KuhnTriangulierung?],
|
||
answer: grid(columns: 2, gutter: 10pt, [
|
||
#cetz.canvas({
|
||
import cetz.draw: *
|
||
import cetz.matrix: *
|
||
|
||
let perspective = ((1,0,cos(45deg)),(0,1,sin(45deg)))
|
||
for edge in cube.edges {
|
||
let a = mul-vec(perspective, cube.points.at(edge.at(0)))
|
||
let b = mul-vec(perspective, cube.points.at(edge.at(1)))
|
||
line(a,b, stroke: black)
|
||
}
|
||
let a = (0,0,0)
|
||
let b = (1,0,0)
|
||
let c = (0,0,1)
|
||
let d = (0,1,0)
|
||
let transformation = transpose((a,b,c,d))
|
||
let bary(x) = mul-vec(transformation, vector.div(x, x.sum()))
|
||
|
||
line(
|
||
mul-vec(perspective, bary((0,0,0,1))),
|
||
mul-vec(perspective, bary((0,0,1,0))),
|
||
mul-vec(perspective, bary((-1,1,1,0))),
|
||
mul-vec(perspective, bary((-1,1,0,1))),
|
||
fill: red.transparentize(70%),
|
||
stroke: red,
|
||
close: true
|
||
)
|
||
line(
|
||
mul-vec(perspective, bary((0,1,0,0))),
|
||
mul-vec(perspective, bary((0,0,1,0))),
|
||
mul-vec(perspective, bary((-1,0,1,1))),
|
||
mul-vec(perspective, bary((-1,1,0,1))),
|
||
fill: green.transparentize(70%),
|
||
stroke: green,
|
||
close: true
|
||
)
|
||
line(
|
||
mul-vec(perspective, bary((0,1,0,0))),
|
||
mul-vec(perspective, bary((0,0,1,0))),
|
||
mul-vec(perspective, bary((0,0,0,1))),
|
||
fill: blue.transparentize(70%),
|
||
stroke: blue,
|
||
close: true
|
||
)
|
||
line(
|
||
mul-vec(perspective, bary((-1,1,1,0))),
|
||
mul-vec(perspective, bary((-1,1,0,1))),
|
||
mul-vec(perspective, bary((-1,0,1,1))),
|
||
fill: blue.transparentize(70%),
|
||
stroke: blue,
|
||
close: true
|
||
)
|
||
|
||
circle(mul-vec(perspective, a), radius: 0.08, fill: white)
|
||
content((rel: (angle: 20deg, radius: .2)), $a$, anchor: "south-west")
|
||
circle(mul-vec(perspective, b), radius: 0.08, fill: white)
|
||
content((rel: (angle: 20deg, radius: .2)), $b$, anchor: "south-west")
|
||
circle(mul-vec(perspective, c), radius: 0.08, fill: white)
|
||
content((rel: (angle: 20deg, radius: .2)), $c$, anchor: "south-west")
|
||
circle(mul-vec(perspective, d), radius: 0.08, fill: white)
|
||
content((rel: (angle: 20deg, radius: .2)), $d$, anchor: "south-west")
|
||
})
|
||
], [
|
||
Der Würfel links ist in sechs Tetraeder zerlegt. Unterteilt man alle Würfel
|
||
eines raumfüllenden regelmäßigen Würfelgitters parallel zu der links gezeigten
|
||
Unterteilung, erhält man die Coxeter-Freudenthal-Kuhn-Triangulierung des
|
||
Raums.
|
||
]))
|
||
== Affine Abbildungen
|
||
#card(
|
||
question: [Was ist eine affine Abbildung und die ihr zugeordnete
|
||
lineare Abbildung?],
|
||
answer: [
|
||
Eine Abbildung $Phi: cal(A) -> cal(B)$ zwischen affinen Räumen heißt affin,
|
||
wenn sie alle Affinkombinationen invariant lässt, d.h. wenn sie mit
|
||
Affinkombinationen vertauschbar ist: $Phi(sum sans(p)_i x_i) = sum(Phi
|
||
sans(p)_i) x_i$
|
||
|
||
$
|
||
Phi(sans(x)) = Q bb(x) &:= sans(q)_0 x_0 + ... + sans(q)_n x_n \
|
||
&= sans(q)_0 + (sans(q)_1 - sans(q)_0) x_1 + ... +
|
||
(sans(q)_n - sans(q)_0) x_n \
|
||
&=: sans(b) + B sans(x)
|
||
$
|
||
|
||
Die Abbildung $phi(sans(v)) = B sans(v)$ ist die $Phi$ zugeodnete lineare
|
||
Abbildung $sans(A) -> sans(B)$ für $sans(v) = sans(y) - sans(x),
|
||
Phi(sans(y)) - Phi(sans(x)) = B sans(v)$
|
||
])
|
||
#card(
|
||
question: [Wie lassen sich beide mit baryzentrischen Koordinaten
|
||
und Matrizen beschreiben?],
|
||
answer: [
|
||
Der Vektor $sans(v)$ hat den baryzentrischen Koordinatenvektor $bb(v) =
|
||
bb(y) - bb(x)$. Somit haben die affine Abbildung $Phi$ und die zugeodnete
|
||
lineare Abbildung $phi$ bezüglich baryzentrischen Koordinaten die gleiche
|
||
Matrixdarstellung:
|
||
$
|
||
Phi(sans(x)) = Q bb(x) = mat(sans(q)_0,...,sans(q)_n) bb(x)\
|
||
phi(sans(v)) = Q bb(v) = mat(sans(q)_0,...,sans(q)_n) bb(v)
|
||
$
|
||
])
|
||
== Parallelitat und Teilverhaltnisse
|
||
#card(
|
||
question: [Wie sind Parallelitat und Teilverhaltnisse definiert?],
|
||
answer: [
|
||
Zwei affine Unterräume $cal(U) = sans(p) + sans(U)$ und $cal(V) = sans(q) +
|
||
sans(V)$ der $cal(A)^n$ heißen parallel, falls $sans(U) subset sans(V)$ oder
|
||
$sans(V) subset sans(U)$. Die linearen Räume $sans(U)$ und $sans(V)$ heißen
|
||
auch Richtungen der affinen Unterräume.
|
||
|
||
Zwei Strecken $sans(a b)$ und $sans(c d) subset cal(A)^n$ heißen parallel,
|
||
wenngilt
|
||
$
|
||
sans(d) - sans(c) = (sans(b) - sans(a)) rho, rho in bb(R) \{0}
|
||
$
|
||
|
||
Sind Strecken parallelr, schreiben wir auch
|
||
$
|
||
(sans(d) - sans(c)) / (sans(b) - sans(a)) := rho
|
||
$
|
||
wobei der Faktor $rho$ das Teilverhältnis der beiden Strecken ist.
|
||
])
|
||
== Verallgemeinerte baryzentrische Koordinaten
|
||
#card(
|
||
question: [Was sind verallgemeinerte baryzentrische Koordinaten
|
||
und wie lassen sie sich alle darstellen?],
|
||
answer: [
|
||
Sei $sans(p_1 ... p_n)$ ein nicht-degeneriertes Polygon $cal(P)$ im
|
||
$cal(A)^2$.
|
||
$
|
||
sans(p) = sum sans(p)_i sans(v)_i "und"
|
||
1 = sum sans(v)_i
|
||
$
|
||
heißen die $v_i$ verallgemeinerte baryzentrische Koordinaten von
|
||
$sans(p)$ bezüglich $cal(P)$. Sie bilden einen verallgemeinerten
|
||
baryzentrischen Koordinatenvektor $bb(v) = [v_1 ... v_n]^t$.
|
||
])
|
||
== Wachspresskoordinaten
|
||
#card(
|
||
question: [Was sind die Wachspresskoordinaten und welche
|
||
Eigenschaften haben sie?],
|
||
answer: [
|
||
$a_i := det mat(1,1,1;sans(p), sans(p)_i, sans(p)_(i+:))$ und
|
||
$d_i := det mat(1,1,1; sans(p)_(i-z),sans(p)_i,sans(p)_(i+1))$
|
||
|
||
Wachspresskoordinaten $omega_i := lambda_i / (sum_j lambda_j)$ wobei
|
||
$lambda_j = d_j / (a_i a_(i-1))$
|
||
|
||
Die Wachspresskoordinaten kann man als Affinkombinationen der $sans(b)_i$
|
||
darstellen. Bemerkenswerterweise gilt für der Wachspresskoordinatenvektoren
|
||
$bb(w) = [omega_1 ... omega_n]^t$, dass $[sans(b)_1 ... sans(b)_n] bb(w) =
|
||
bb(w)$. Somit ist $bb(w)$ ein Eigenvektor der Matrix $B = [sans(b)_1 ...
|
||
sans(b)_n]$ zum Eigenwert 1.
|
||
|
||
])
|
||
== Mittelwertkoordinaten
|
||
#card(
|
||
question: [Was sind die Mittelwertkoordinaten und wo sind sie alle
|
||
positiv?],
|
||
answer: [
|
||
Für das Polygon $sans(p p_1 ... p_n)$ sind die Mittelwertkoordinaten $mu_i$
|
||
eines Punkts $sans(p)$ so definiert:
|
||
$
|
||
mu_i := tau_i / (sum_j tau_j), "wobei" tau_i := 1 / c_i (tan delta_(i-1) +
|
||
tan delta_i)
|
||
$
|
||
|
||
Der Kern eines Polygons besteht aus allen Punkten im Inneren, von denen aus
|
||
der gesamte Polygonrand gesehen werden kann, wenn der Polygonrand als
|
||
undurchsichtig angesehen wird. Die Mittelwertkoordinaten der Punkte im Kern
|
||
sind alle positiv.
|
||
])
|
||
= Euklidische Geometrie
|
||
#card(
|
||
question: [Was ist ein euklidischer Raum und was unterscheidet ihn
|
||
von einem affinen?],
|
||
answer: [
|
||
|
||
])
|
||
|
||
== Euklidische Bewegungen
|
||
#card(
|
||
question: [Was gilt für ihre Matrizen?],
|
||
answer: [
|
||
|
||
])
|
||
#card(
|
||
question: [Wie kann man die Drehachse einer Rotation im
|
||
dreidimensionalen Raum bestimmen?],
|
||
answer: [
|
||
|
||
])
|
||
|
||
== Euler-Winkel
|
||
#card(
|
||
question: [Was sind die Euler-Winkel und wie verwendet man sie?],
|
||
answer: [
|
||
|
||
])
|
||
|
||
|
||
== Quaternionen
|
||
#card(
|
||
question: [Was sind Quaternionen, konjugierte und normierte?],
|
||
answer: [
|
||
|
||
])
|
||
#card(
|
||
question: [Wie hangen sie mit Rotationen zusammen?],
|
||
answer: [
|
||
|
||
])
|
||
#card(
|
||
question: [Was lasst sich mit Quaternionen, EulerWinkeln und
|
||
Drehmatrizen jeweils besser gut darstellen oder
|
||
durchführen?],
|
||
answer: [
|
||
|
||
])
|
||
== Zweibögen
|
||
#card(
|
||
question: [Was sind Zweibogen und Kontaktelemente?],
|
||
answer: [
|
||
|
||
])
|
||
#card(
|
||
question: [Wodurch ist ein Zweibogen eindeutig festgelegt?],
|
||
answer: [
|
||
|
||
])
|
||
#card(
|
||
question: [Was erfüllen die drei Endkontaktelemente der beiden
|
||
Bogen eines Zweibogens?],
|
||
answer: [
|
||
|
||
])
|
||
#card(
|
||
question: [Wie bekommt man alle Zweibogen zu gegebenen
|
||
Anfangs-und Endkontaktelement?],
|
||
answer: [
|
||
|
||
])
|
||
#card(
|
||
question: [Wie übertragen sich planare Zweibogenkonstruktionen
|
||
auf sphärische?],
|
||
answer: [
|
||
|
||
])
|
||
|
||
== Volumen
|
||
#card(
|
||
question: [Wie ist das Volumen eines Parallelepipeds definiert?],
|
||
answer: [
|
||
|
||
])
|
||
#card(
|
||
question: [Warum lassen euklidische Bewegungen
|
||
],
|
||
answer: [
|
||
|
||
])
|
||
|
||
== Alternierendes Produkt
|
||
#card(
|
||
question: [Wie ist das alternierende Produkt definiert und welche
|
||
Eigenschaften hat es?],
|
||
answer: [
|
||
|
||
])
|
||
== Lot und Abstand
|
||
#card(
|
||
question: [Wie lassen sich die Abstände eines Punkts von einer
|
||
Ebene und die zweier Geraden berechnen?],
|
||
answer: [
|
||
|
||
])
|
||
= Perspektivische Darstellungen
|
||
== Homogene Koordinaten
|
||
#card(
|
||
question: [Was sind homogene Koordinten, Fernpunkte und der
|
||
Unpunkt?],
|
||
answer: [
|
||
|
||
])
|
||
#card(
|
||
question: [Geben Sie die Gleichungsdarstellung einer Hyperebene in
|
||
erweiterten Koordinaten an und leiten Sie daraus die
|
||
homogene Darstellung ab!],
|
||
answer: [
|
||
|
||
])
|
||
#card(
|
||
question: [Was ist die Fernhyperebene?],
|
||
answer: [
|
||
|
||
])
|
||
== Zentralprojektion
|
||
#card(
|
||
question: [Was ist eine Zentralprojektion?],
|
||
answer: [
|
||
|
||
])
|
||
#card(
|
||
question: [Wie kann sie mit Matrizen beschrieben werden?],
|
||
answer: [
|
||
|
||
])
|
||
#card(
|
||
question: [Was ist die Fokaldistanz und was ist der Hauptpunkt?],
|
||
answer: [
|
||
|
||
])
|
||
== Kamerabewegung
|
||
#card(
|
||
question: [Wie stellt sich eine Zentralprojektion in Matrizen dar,
|
||
wenn das Objekt- und Kamerasystem verschieden sind?],
|
||
answer: [
|
||
|
||
])
|
||
== Fluchtpunkte
|
||
#card(
|
||
question: [Was versteht man unter Fluchtpunkten, de Spur, Horizont,
|
||
Verschwindungsebene und Fluchtdreieck?],
|
||
answer: [
|
||
|
||
])
|
||
#card(
|
||
question: [Wann sind Fluchtpunkte Fernpunkte?],
|
||
answer: [
|
||
|
||
])
|
||
#card(
|
||
question: [Wo schneiden sich Spur und Fluchtgeraden einer Ebene?],
|
||
answer: [
|
||
|
||
])
|
||
== Der Hauptsatz
|
||
#card(
|
||
question: [Erklären Sie, was die Spalten und Elemente der Matrix
|
||
einer Zentralperspektive bedeuten!],
|
||
answer: [
|
||
|
||
])
|
||
== Kameradaten
|
||
#card(
|
||
question: [ Wie erhält man die Verschwindungsebene, den
|
||
Hauptrichtungsvektor, den Hauptpunkt und die
|
||
Fokaldistanz aus der Matrix einer Zentralperspektive?],
|
||
answer: [
|
||
|
||
])
|
||
#card(
|
||
question: [Warum ist der Hauptpunkt der Höhenpunkt des
|
||
Fluchtdreiecks?],
|
||
answer: [
|
||
|
||
])
|
||
== Fluchtpunkte des Systems
|
||
#card(
|
||
question: [Was ist eine i-Punkt-Perspektive und wie kann man
|
||
erkennen, ob und welche i-Punkt-Perspektive eine Matrix
|
||
darstellt?],
|
||
answer: [
|
||
|
||
])
|
||
== Urbilder
|
||
#card(
|
||
question: [Wie berechnet man das Urbild eines Punkts und einer
|
||
Geraden unter einer Zentralperspektive?],
|
||
answer: [
|
||
|
||
])
|
||
|
||
== Kamerakalibrierung
|
||
#card(
|
||
question: [Wie kann man die Matrix bestimmen, die zu einem
|
||
zentralperspektivischen Bild gehört?],
|
||
answer: [
|
||
|
||
])
|
||
#card(
|
||
question: [Wie viele Freiheitsgrade hat man für diese Matrizen und
|
||
was sind ihre Dimensionen?],
|
||
answer: [
|
||
|
||
])
|
||
= Projektive Geometrie
|
||
== Projektive Räume
|
||
#card(
|
||
question: [Was ist ein projektiver Raum?],
|
||
answer: [
|
||
|
||
])
|
||
#card(
|
||
question: [Was sind die projektiven Unterräume?],
|
||
answer: [
|
||
|
||
])
|
||
#card(
|
||
question: [Warum schneiden sich zwei Geraden einer projektiven
|
||
Ebene immer?],
|
||
answer: [
|
||
|
||
])
|
||
== Projektive Koordinaten
|
||
#card(
|
||
question: [Wann heißt eine Punktfolge projektiv unabhängig?],
|
||
answer: [
|
||
|
||
])
|
||
#card(
|
||
question: [Wie ist die projektive Hülle von Punkten definiert?],
|
||
answer: [
|
||
|
||
])
|
||
#card(
|
||
question: [Wie sind projektive Koordinaten definiert?],
|
||
answer: [
|
||
|
||
])
|
||
#card(
|
||
question: [Was ist eine projektive Skala?],
|
||
answer: [
|
||
|
||
])
|
||
#card(
|
||
question: [Wann ist eine projektive Skala eine affine?],
|
||
answer: [
|
||
|
||
])
|
||
== Koordintentransformation
|
||
#card(
|
||
question: [Wie können projektive Koordinaten in projektive
|
||
Koordinaten bezüglich eines anderen Grundecks
|
||
transformiert werden?],
|
||
answer: [
|
||
|
||
])
|
||
#card(
|
||
question: [Wie ändern sich bei einer Koordinatentransformation die
|
||
Koordinaten von Hyperebenen?],
|
||
answer: [
|
||
|
||
])
|
||
#card(
|
||
question: [Warum kann jede Hyperebene eines projektiven Raums
|
||
als Fernhyperebene aufgefasst werden?],
|
||
answer: [
|
||
|
||
])
|
||
== Der Dualraum
|
||
#card(
|
||
question: [Was ist der Dualraum eines projektiven Raums?],
|
||
answer: [
|
||
|
||
])
|
||
#card(
|
||
question: [Was heißt alles dual zueinander?],
|
||
answer: [
|
||
|
||
])
|
||
#card(
|
||
question: [Wie kann man den Schnitt von n Hyperebenen des 𝒫𝒫 ⁿ
|
||
berechnen?],
|
||
answer: [
|
||
|
||
])
|
||
== Projektive Abbildungen
|
||
#card(
|
||
question: [Was ist eine projektive Abbildung?],
|
||
answer: [
|
||
|
||
])
|
||
#card(
|
||
question: [Wann hat eine projektive Abbildung einen ausnahmeraum
|
||
und wie ist er definiert?],
|
||
answer: [
|
||
|
||
])
|
||
#card(
|
||
question: [Auf was bilden projektive Abbildungen projektive
|
||
Unterräume ab?],
|
||
answer: [
|
||
|
||
])
|
||
== Kollineationen und Korrelationen
|
||
#card(
|
||
question: [Was sind Kollineationen und Korrelationen?],
|
||
answer: [
|
||
|
||
])
|
||
#card(
|
||
question: [Wie ist Dualität allgemein definiert?],
|
||
answer: [
|
||
|
||
])
|
||
#card(
|
||
question: [Wie lautet der Satz von Desargues und wie der dazu duale
|
||
Satz?],
|
||
answer: [
|
||
|
||
])
|
||
== Linear rationale Transformationen
|
||
#card(
|
||
question: [Wie lassen sich Projektivitäten zwischen zwei Geraden
|
||
darstellen?],
|
||
answer: [
|
||
|
||
])
|
||
== Das Doppelverhältnis
|
||
#card(
|
||
question: [Was ist das Doppelverhältnis?],
|
||
answer: [
|
||
|
||
])
|
||
|
||
#card(
|
||
question: [Warum sind Doppelverhältnisse invariant unter
|
||
projektiven Abbildungen?],
|
||
answer: [
|
||
|
||
])
|
||
#card(
|
||
question: [Was ist das harmonische Doppelverhältnis?],
|
||
answer: [
|
||
|
||
])
|
||
#card(
|
||
question: [Was bedeutet harmonische Lage von vier kollinearen
|
||
Punkten, wenn einer von ihnen ein Fernpunkt ist?],
|
||
answer: [
|
||
|
||
])
|
||
#card(
|
||
question: [Unter welchen Vertauschungen ist das harmon,ische
|
||
Verhältnis invariant?],
|
||
answer: [
|
||
|
||
])
|
||
== Die duale Abbildung
|
||
#card(
|
||
question: [Was ist die duale Abbildung?],
|
||
answer: [
|
||
|
||
])
|
||
== Quadriken
|
||
#card(
|
||
question: [Was ist eine Quadrik?],
|
||
answer: [
|
||
|
||
])
|
||
#card(
|
||
question: [Warum können wir annehmen, dass die Matrix einer
|
||
Quadrik symmetrisch ist?],
|
||
answer: [
|
||
|
||
])
|
||
#card(
|
||
question: [Was ist die Fernquadrik und der affine Teil einer
|
||
projektiven Quadrik?],
|
||
answer: [
|
||
|
||
])
|
||
#card(
|
||
question: [Was ist eine Quadrik in einer projektiven Gerade?],
|
||
answer: [
|
||
|
||
])
|
||
== Tangential- und Polarebenen
|
||
#card(
|
||
question: [Wie berechnet man die Tangentenquadrik einer Quadrik?],
|
||
answer: [
|
||
|
||
])
|
||
#card(
|
||
question: [Was sind Polarebenen?],
|
||
answer: [
|
||
|
||
])
|
||
#card(
|
||
question: [Was bilden die Tangentialebenen einer Quadrik?],
|
||
answer: [
|
||
|
||
])
|
||
#card(
|
||
question: [Was ist eine Polaritat?],
|
||
answer: [
|
||
|
||
])
|
||
#card(
|
||
question: [Ist jede Korrelation eine Polaritat?],
|
||
answer: [
|
||
|
||
])
|
||
#card(
|
||
question: [Was bedeutet dies für den Begriff der Dualitat?],
|
||
answer: [
|
||
|
||
])
|
||
== Harmonische Punkte und Polaritat
|
||
#card(
|
||
question: [Was ist das Doppelverhaltnis von pq und xy, wenn q auf
|
||
der Polaren von p bezüglich einer Quadrik Q liegt und x
|
||
und y die Schnittpunkte der Geraden pq mit Q sind?],
|
||
answer: [
|
||
|
||
])
|
||
== Normalform
|
||
#card(
|
||
question: [Was ist die Normalform einer Quadrik?],
|
||
answer: [
|
||
|
||
])
|
||
#card(
|
||
question: [Wie viele projektiv verschiedene Quadriken gibt es im
|
||
reellen projektiven Raum und wie viele im in seiner
|
||
komplexen Erweiterung?],
|
||
answer: [
|
||
|
||
])
|
||
= Hyperbolische Geometrie
|
||
== Das hyperbolische Modell
|
||
#card(
|
||
question: [Erklaren Sie das hyperbolische Modell der hyperbolischen Ebene !],
|
||
answer: [
|
||
|
||
])
|
||
#card(
|
||
question: [Was sind in diesem Modell die hyperbolischen Geraden?],
|
||
answer: [
|
||
|
||
])
|
||
#card(
|
||
question: [Was sind die hyperbolischen Abbildungen in diesem Modell?],
|
||
answer: [
|
||
|
||
])
|
||
#card(
|
||
question: [Nennen Sie einfache Beispiele für hyperbolische
|
||
Abbildungen in diesem Modell !],
|
||
answer: [
|
||
|
||
])
|
||
== Das Klein-Modell
|
||
#card(
|
||
question: [Wie ist das Klein-Modell der hyperbolischen Ebene definiert?],
|
||
answer: [
|
||
|
||
])
|
||
#card(
|
||
question: [Was sind in diesem Modell die hyperbolischen Geraden?],
|
||
answer: [
|
||
|
||
])
|
||
#card(
|
||
question: [Was sind die hyperbolischen Abbildungen in diesem
|
||
Modell?],
|
||
answer: [
|
||
|
||
])
|
||
|
||
#card(
|
||
question: [Wie sind Entfernungen definiert?],
|
||
answer: [
|
||
|
||
])
|
||
#card(
|
||
question: [Warum sind Entfernungen invariant unter hyperbolischen
|
||
Abb.?],
|
||
answer: [
|
||
|
||
])
|
||
== Spiegelungen
|
||
#card(
|
||
question: [Wie ist eine hyperbolische Spiegelung definiert?],
|
||
answer: [
|
||
|
||
])
|
||
#card(
|
||
question: [Was muss man tun, um eine hyperbolische Spiegelung ais
|
||
euklidische Spiegelung anzusehen?],
|
||
answer: [
|
||
|
||
])
|
||
#card(
|
||
question: [Wie geht man vor, um zu zeigen, dass jede hyperbolische
|
||
Abb. Produkt von Spiegelungen ist?],
|
||
answer: [
|
||
|
||
])
|
||
== Kreisverwandtschaften
|
||
#card(
|
||
question: [Was ist eine stereographische Projektion?],
|
||
answer: [
|
||
|
||
])
|
||
#card(
|
||
question: [Warum sind stereographische Projektionen winkel-und
|
||
kreistreu?],
|
||
answer: [
|
||
|
||
])
|
||
#card(
|
||
question: [Was sind Kreisverwandtschaften?],
|
||
answer: [
|
||
|
||
])
|
||
#card(
|
||
question: [Was ist eine Inversion an einem Kreis?],
|
||
answer: [
|
||
|
||
])
|
||
#card(
|
||
question: [Wie kann man Kreisinversionen berechnen?],
|
||
answer: [
|
||
|
||
])
|
||
#card(
|
||
question: [(Warum) sind Kreisinversionen winkeltreu?],
|
||
answer: [
|
||
|
||
])
|
||
#card(
|
||
question: [Warum sind Kreisinversionen Kompositionen von Ahnlichkeiten und
|
||
Kreisinversionen?],
|
||
answer: [
|
||
|
||
])
|
||
== Das Poincaré-Modell
|
||
#card(
|
||
question: [Wie ist das Poincaré-Madel! der hyperbolischen Ebene
|
||
definiert?],
|
||
answer: [
|
||
|
||
])
|
||
#card(
|
||
question: [Was sind in diesem Modell die hyperbolischen Geraden?],
|
||
answer: [
|
||
|
||
])
|
||
#card(
|
||
question: [Was sind die hyperbolischen Spiegelungen in diesem
|
||
Modell?],
|
||
answer: [
|
||
|
||
])
|
||
#card(
|
||
question: [Warum sind die hyperbolischen Abb. genau die
|
||
Kreisverwandtschaften, die den Fernkreis auf sich
|
||
abbilden?],
|
||
answer: [
|
||
|
||
])
|
||
#card(
|
||
question: [Wie ist der hyperbolische Winkel definiert?],
|
||
answer: [
|
||
|
||
])
|
||
#card(
|
||
question: [Warum bleiben Winkel unter hyperbolischen Abb.
|
||
invariant?],
|
||
answer: [
|
||
|
||
])
|
||
|
||
== Fundamentalgebiete
|
||
#card(
|
||
question: [Wie gro8 ist die Winkelsumme eines hyperbolischen
|
||
Dreiecks?],
|
||
answer: [
|
||
|
||
])
|
||
#card(
|
||
question: [Warum ist die Winkelsumme eines hyperbolischen
|
||
Dreiecks kleiner ais 180],
|
||
answer: [
|
||
|
||
])
|
||
#card(
|
||
question: [Wie groB kônnen die Winkelsummen regelma8iger n-Ecke sein?],
|
||
answer: [
|
||
|
||
])
|
||
#card(
|
||
question: [Was ist ein Fundamentalgebiet?],
|
||
answer: [
|
||
|
||
])
|
||
#card(
|
||
question: [Was ist eine Fuchssche Gruppe?],
|
||
answer: [
|
||
|
||
])
|
||
== Orbifaltigkeiten
|
||
#card(
|
||
question: [Was ist eine Obifaltigkeit?],
|
||
answer: [
|
||
|
||
])
|
||
|