Transformation von 3D-Punkten auf Ebene < Lin. Algebra/Vektor < Oberstufe < Schule < Mathe < Vorhilfe
|
Hallo alle zusammen !!!
Folgende Situation: wir haben in anschluss an Vektorrechnung und Matrizen angefangen ein praktisches Problem zu bearbeiten. Und zwar wollen wir erst einmal versuchen einen Würfel aus einem dreidimensionalen Raum mit Hilfe einer Matrix auf auf eine "Projektionsebene" abzubilden (quasi das, was jede 3D-Anwendung an unserem Monitor vornimmt). Dabei benutzen wir einen "Geierpunkt", also den Punkt von wo aus wir auf die Ebene schauen.
Das Ziel ist es eine Matrix zu entwickeln die eben die Punkte des Würfels auf die Ebene abbildet !!!
Einige Daten sind uns schon vorgegeben:
... Die dritte Achse (Z-Achse) zeigt in die Tiefe,
... Würfeleckpunkte sind A(0;0;0) B(1;0;0) C(0;0;1) D(1;0;1) E(0;1;0) F(1;1;0) G(0;1;1) H(1;1;1),
... Geierpunkt ist G(2;-2;3),
... Die Ebene wird durch die erste (X-) und dritte Achse (Y-Achse) bestimmt.
Daraufhin habe ich folgendes berechnet:
... Koordinatenform der Ebene ist [mm] x_2 [/mm] = 0,
... dann habe ich Geraden berechnet, die jeweils durch die Würfeleckpunkte und den Geierpunkt verlaufen, zb für F ...
$f: [mm] \vec [/mm] x = [mm] \begin{pmatrix} 1 \\ 1 \\ 0 \end{pmatrix} [/mm] + [mm] t\begin{pmatrix} 1 \\ -3 \\ 3 \end{pmatrix}$,
[/mm]
... und damit konnte ich dann die Durchstoßpunkte der Geraden in der Ebene berechnen, zb ist [mm] $E\cap [/mm] f : [mm] \vec [/mm] x = [mm] \begin{pmatrix} 1 \\ 1 \\ 0 \end{pmatrix} [/mm] + [mm] \bruch{1}{3}\begin{pmatrix} 1 \\ -3 \\ 3 \end{pmatrix} [/mm] = [mm] \begin{pmatrix} \bruch {1}{3}\\ 0 \\ 1 \end{pmatrix}$
[/mm]
Beim mehrfachen Versuchen eine geeignete Matrix für das Problem zu finden, kam es nie hin, dass die Matrix alle Punkte richtig abbilden konnte, sondern nur den größten Teil davon.
Hat vielleicht jemand Forschläge nach welchem verfahren man eine Matrix finden könnte?
Gruss, Philipp
|
|
|
|
Status: |
(Antwort) fertig | Datum: | 14:00 Fr 25.06.2004 | Autor: | jlukas |
Hi,
hier:
http://www.informatik.fh-nuernberg.de/professors/schiedermeier/SS_2004/Graphik1/Uebersicht/index.htm
findest du eine Ausarbeitung zu einem ähnlichen Problem wie deinem. Etwas weiter unten auf der Seite unter dem Punkt "Skriptum" findest du ein PDF, wo es unter Punkt 6.2.1 um Perspektivische Projektion und Projektionsmatrizen geht. Der Verfasser Christian Schiedermeier verfolgt dabei zwar eine andere Vorgehensweise, er transformiert die Scene dahingehend, dass entferntere Punkte zur Blickachse hin (Z-Achse) verschoben werden, so dass dann durch Parallelprojektion (Entfernen der z-Kompnente) eine perspektivische Projektion entsteht, aber vielleicht hilft es ja dennoch weiter.
Chao und viel Spass beim Lesen
jlukas
|
|
|
|
|
hallo nochmal und danke an jlukas.
ich habe leider noch nicht die zeit gehabt mich in die pdf-datei einzulesen, habe aber schon selbst ein paar ansätze in denen ich mit unbestimmten punkten gearbeitet habe. hier meine ergenisse:
[mm] G(g_1; g_2; g_3) [/mm] geierpunkt: von hier schaut man auf die ebene
[mm] P(p_1; p_2; p_3) [/mm] punkt im R3
[mm] Gg:\vec x=\begin{pmatrix} g_1 \\ g_2 \\ g_3 \end{pmatrix}+t\begin{pmatrix} p_1-g_1 \\ p_2-g_2 \\ p_3-g_1 \end{pmatrix} [/mm] geiergerade: verbindungsgerade zwischen G und P
[mm] E:0x_1+1x_2+0x_3+d=0 [/mm] koordinatenform der ebene an der x- und y-achse aufgezogen
[mm] x_2=0
[/mm]
[mm] g_2+t(p_2-g_2)=0 [/mm] berechnung des streckfaktors t
[mm] t=\bruch{-g_2}{p_2-g_2}
[/mm]
[mm] P'=\begin{pmatrix} g_1+\bruch{-g_2}{p_2-g_2}(p_1-g_1) \\ g_3+\bruch{-g_2}{p_2-g_2}(p_3-g_3) \end{pmatrix} [/mm] formel für die abbildung auf der ebene
wenn man nun einen beliebigen punkt nimmt und ihn auf der ebene abbilden will, dann braucht mein nur noch die elemente des punktes und des geierpunktes einzusetzen und erhält P'.
[mm] \begin{pmatrix} x_1 & x_2 & x_3 \\ y_1 & y_2 & y_3 \end{pmatrix}*\begin{pmatrix} p_1 \\ p_2 \\ p_3 \end{pmatrix}=\begin{pmatrix} g_1+\bruch{-g_2}{p_2-g_2}(p_1-g_1) \\ g_3+\bruch{-g_2}{p_2-g_2}(p_3-g_3) \end{pmatrix}
[/mm]
gesucht wird [mm] M=\begin{pmatrix} x_1 & x_2 & x_3 \\ y_1 & y_2 & y_3 \end{pmatrix} [/mm] ...
|
|
|
|