Vektoren bzw. Matrizen
Übersicht

TimoBetreff: Vektoren bzw. Matrizen |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
Hallo,
ich beschäftige mich zur Zeit mit Vektoren und Matrizen. Allerdings versteh ich (gerade bei den Matrizen) nocht nicht so ganz, warum man für den 3dimensionalen Raum 4x4 matrizen benutzt, bzw. wofür die einzelnen Felder stehen. Ich hab es so verstanden, dass die Spaltenvektoren für x,y und z stehen, (also bei ner 3x3 matrix), aber warum benötigen diese jeweils 3 Felder? ![]() |
||
![]() |
stfighter01 |
![]() Antworten mit Zitat ![]() |
---|---|---|
um es einfach auszudrücken.
du hast 3 freiheitsgrade für die rotation ( x,y,u. z achse) mit einem einzigen vektor kannst du nur einen freiheitsgrad bestimmen. deshalb benötigst zu 3 stück davon (in matrizenform zusammengefasst) um die genaue ausrichtung deines objekts zu erfassen. mfg stfighter |
||
Denken hilft! |
Timo |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
ja, dafür sind dann die "Spaltenvektoren", oder? aber wieso besteht jede Spalte wiederum aus 3 - Feldern? | ||
![]() |
skey-z |
![]() Antworten mit Zitat ![]() |
---|---|---|
ein Vektor besteht aus 3 angaben, dem X-Wert, dem Y-Wert und dem Z-Wert.
mit 1 oder 2 Punkten würdest du nichts auf dem Bildschirm sehen, also müssen es 3 Vektoren sein, um ein Dreieck (Polygon) darzustellen) Die Spalten sind also die koordinaten der einzelnen Punkte und 3 felder deshalb, weil man diese für ein Polygon braucht. |
||
David |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
Hi!
skey-z hat Folgendes geschrieben: ein Vektor besteht aus 3 angaben, dem X-Wert, dem Y-Wert und dem Z-Wert.
mit 1 oder 2 Punkten würdest du nichts auf dem Bildschirm sehen, also müssen es 3 Vektoren sein, um ein Dreieck (Polygon) darzustellen) Die Spalten sind also die koordinaten der einzelnen Punkte und 3 felder deshalb, weil man diese für ein Polygon braucht. Glaube das ist nich so ganz das was Time wissen will. Achja, ein Dreieck ist ein Dreieck und kein Polygon. ![]() grüße |
||
Timo |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
@skey-z: eine Matrize mulitpliziert man anschließend mit jedem benötigten Punkt eines Raumes, also man multipliziert noch einen Vektor mit dieser Matrize. Die Polygone haben hierbei noch nichts zu suchen ![]() ![]() |
||
![]() |
BladeRunnerModerator |
![]() Antworten mit Zitat ![]() |
---|---|---|
Zitat: Achja, ein Dreieck ist ein Dreieck und kein Polygon.
Das Dreieck ist das kleinste Polygon. |
||
Zu Diensten, Bürger.
Intel T2300, 2.5GB DDR 533, Mobility Radeon X1600 Win XP Home SP3 Intel T8400, 4GB DDR3, Nvidia GF9700M GTS Win 7/64 B3D BMax MaxGUI Stolzer Gewinner des BAC#48, #52 & #92 |
David |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
Hi!
Ya, hast recht. Wenn man's genau nimmt! ![]() grüße |
||
![]() |
skey-z |
![]() Antworten mit Zitat ![]() |
---|---|---|
ich wusste doch, dass man hier noh was lernen kann^^
hab selber noch niht so die ahnung von dieser art mathematik, hatte bisher nur das vergügen mit Vektoren und habe dann wohl falsch kombiniert, also sorr für den geistigen schwachsinn. |
||
![]() |
Vertex |
![]() Antworten mit Zitat ![]() |
---|---|---|
Eine Matrix ist eine eindeutige Abbildungsvorschrift.
http://blitzbase.de/lexikon/matrix.htm x_neu=(x*11) + (y*21) + (z*31) + 41 y_neu=(x*12) + (y*22) + (z*32) + 42 z_neu=(x*13) + (y*23) + (z*33) + 43 Die letzte Zeile der Matrix verschiebt den Punk X, Y, Z. Die letzte Spalte der Matrix hat keine Auswirkungen auf einen 3D Vektor. Deswegen wird auch z. B. klar, warum eine Transformationsmatrix so aufgebaut ist. 41, 42 und 43 verschieben den Punkt. 11, 22 und 33 sorgen dafür, das die aktuellen X, Y und Z Werte erhalten bleiben, damit sie zu 41, 42 und 43 dazu addiert werden können. Würde man diese ebenfalls auf 0 setzen, so würde man den Vektor eine direkte Position zuweisen und nicht verschieben. Das selbe gilt für die Skalierung. Hier sorgen 11, 22 und 33 dafür, das sie mit den entsprechenden Faktor multipliziert werden. Ist 11 = 0.5 und X = 12 dann ist X_Neu = 6. mfg olli |
||
vertex.dreamfall.at | GitHub |
Timo |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
Danke Vertex, das bringt mich schon mal weiter! ![]() Aber eine Frage noch: Wieso benutzt man 4x4 Matrizen für den 3D-Raum und nicht 3x3? Wie du ja gerade sagtest, verschieben 41,42 und 43 den Punkt. Aber wofür sind 14,24,34, bwz. 44? |
||
![]() |
Vertex |
![]() Antworten mit Zitat ![]() |
---|---|---|
Das wäre dann für einen 4D Vektor mit W Achse. Frage mich jedoch nicht, für was die 4. Dimension sein soll(Es gibt Dinge im Leben, die muss man nicht wissen ![]() ![]() x_neu=(x*11) + (y*21) + (z*31) + (w*41) y_neu=(x*12) + (y*22) + (z*32) + (w*42) z_neu=(x*13) + (y*23) + (z*33) + (w*43) w_neu=(x*13) + (y*23) + (z*33) + (w*44) So denke ich mal, dürfte dann der 4D Vektor berechnet werden. 4D Vektoren werden glaube bei EulerQuads verwendet, die für die Rotation zuständig sind. Muss mich nochmal damit befassen, aber ich glaube, dass diese Rotationsmethode "fehlerfrei" abläuft. Hatte damals eine 3D Wireframe Engine(Softwarerendering) auf Basis von Matrizen und Vektoren geschrieben. Sobald ich um 2 Achsen gleichzeitig gedreht hatte(2 Rotationsmatrizen miteinander multipliziert), war das Objekt manchmal gestaucht manchmal gestreckt. ( http://vertex.art-fx.org/3D/3DEngine.zip bei Interesse) mfg olli |
||
vertex.dreamfall.at | GitHub |
Timo |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
oh ja, kenn ich schon, hab ich genauestens studiert ![]() aber dort benutzt du auch ne 4x4 Matrix. Hast du sie einfach benutzt ohne zu wissen wie sie funzt? ![]() Naja sowas mach ich gerade (also benutzen, ohne zu wissen wie's funzt)... also für meine Facharbeit muss ich eine engine in BB(2D) und eine in Delphi schreiben und sie miteinander vergleichen. Beide laufen schon einwandfrei, nur muss ich ja auch erklären, warum das so ist *gg*. Ach ich bin am Verzweifeln... |
||
![]() |
Vertex |
![]() Antworten mit Zitat ![]() |
---|---|---|
Ich habe 4x4 Matrizen benutzt, da die Transformation eben nur über den 4. Zeilenvektor der Matrix abläuft. Jetzt kann natürlich einer behaupten, das man dann eben 3x4 Matrizen verwendne kann, jedoch macht sich das mal wieder schlecht bei Determinanten-Berechnung. Siehe dazu: http://vertex.art-fx.org/Basic...minant.htm
Wenn du dich mal bei den Matrixfunktionen umsiehst, dann wirste sehen, das vieles eine quadratische Matrix benötigt. Quadratisch, praktisch, gut halt ![]() mfg olli |
||
vertex.dreamfall.at | GitHub |
Timo |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
naja, vielen Dank Vertex, hast mich auf jeden Fall weitergebracht ![]() |
||
![]() |
D2006Administrator |
![]() Antworten mit Zitat ![]() |
---|---|---|
Vertex hat Folgendes geschrieben: für was die 4. Dimension sein soll
Die Zeit. Ohne eine Diskussion auszulösen ein Filmtipp: Cube 2 - Hypercube Da gibts 4 dimensionale Würfel MfG D2006 |
||
Timo |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
Die Zeit benötigt man wohl kaum zur Berechnung der Positionen von Vertices... ![]() |
||
![]() |
stfighter01 |
![]() Antworten mit Zitat ![]() |
---|---|---|
vielleicht schon, in "Prince of Persia" ![]() ![]() ![]() |
||
Denken hilft! |
Timo |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
oh ja ^^ | ||
![]() |
matteBetreff: 4.Dimension |
![]() Antworten mit Zitat ![]() |
---|---|---|
Hallo allerseits,
Ich bin neu hier und möchte mal den Begriff Dimensionen etwas entschleiern. Man darf es sich mit den Dimensionen vorstellen nicht so schwer machen. Letztendlich sind Dimensionen nur voneinander unabhängige Größen. Nimmt man zu den 3 Raumkoordinaten noch die Zeit hinzu hat man schon vier Dimensionen. Hat des Objekt im Raum beispielsweise noch eine bestimmte Farbe (die natürlich nicht von Zeit und Ort abhängt) sind wir schon bei fünf Dimensionen. Das Spielchen kann man endlos weitertreiben und kommt zu dem Entschluss das Dimensionen nichts weiter als Zustände des Objekts sind. Diese Zustände kann ich mit Gleichungsystemen transformieren. Da es aber den Mathematikern zu viel Schreibaufwand war jedesmal Unmengen von Gleichungen zu schreiben, haben sie die Matrizen erfunden. Das ist schon alles. ... Entschuldigt, ich wollte nicht klugscheißern... |
||
Übersicht


Powered by phpBB © 2001 - 2006, phpBB Group