• Jetzt anmelden. Es dauert nur 2 Minuten und ist kostenlos!

[Mathematisches]3D Punkt auf den 2D Bildschirm errechnen

Status
Für weitere Antworten geschlossen.

gollum1990

Neues Mitglied
Hallo liebes Forum,

da ich nicht so ein super Hirni bin, habe ich ein Problem:

Ich habe bespielsweise die Coords: x1, y1, z1 und möchte diese auf den 2 Dimensionalen Computer Bildschirm darstellen(x,y) dazu brauche ich die x,y aus den 3d coords, also mit x,y meine ich die pixelkoordinaten des Bildschirm(bsp: 40 40). Die Darstellung des Punktes(im Koordinatensystem) soll ein "Left Handled" sein also umgefäir wie bei meiner Zeichnung im Anhang. Dazu benötige ich eine Formel die funktionieren sollte. Wenns nicht anders geht, dann brauche ich als Ergebnis nur die PixelNr(bsp x:40,y:40 pixelnr=40x40 =1600) Ich hoffe ihr könnt mir eine Formel sagen oder eine Seite, danke.


MFG gollum1990
 

Anhänge

  • lefthandle.jpg
    lefthandle.jpg
    7 KB · Aufrufe: 23
Zuletzt bearbeitet:
Werbung:
Also ein Punkt lässt sich so wohl kaum darstellen.

Was du machen kannst ist eine Strecke, die muss dann zu einem Fluchtpunkt hinzeigen. Das müsste man dann - glaube ich - mit einer Abbildungsmatrix machen, die einen Punkt vom Fluchtpunkt auf den Bildschirm abbildet. Welche Matrix das ist, ist abhängig von dem Fluchtpunkt.
 
Also ein Punkt lässt sich so wohl kaum darstellen.
Klar kann man einen Punkt aus dem Raum auf die Ebene projizieren.

attachment.php



Das funktioniert übrigens immer. Bild der Abbildung bezüglich der Basis bestimmen und daraus Abbildungsmatrix bestimmen (sofern es sich wie oben unter der Standard-Basis abspielt, sonst muss man noch zwischen den Basen transferieren). Wichtig ist die Reihenfolge, die darf nicht vertauscht werden.
 

Anhänge

  • 3Dproj2D.jpg
    3Dproj2D.jpg
    12,3 KB · Aufrufe: 27
Werbung:
Das ist schon klar. Aber wenn du einen Punkt so wie Gollum es möchte auf eine Ebene projizierst, dann ist das alles andere als eindeutig und der User weiß nicht wo der Punkt im R³ sein soll.


Anders wird es natürlich, wenn man viele Punkt nimmt die direkt nebeneinander sind -> es entsteht der Eindruck einer Linie.
 
Klar, der Betrachter empfindet das dann nicht als räumlich, aber selbst mit einer Linie ist noch nicht wirklich was räumliches zu erkennen. Ich nehme aber mal an das Gollumn ein räumliches Objekt hat, das er auf die Ebene projizieren möchte und dazu reichen ihm erstmal die Punkte, die kann er dann verbinden (und muss es nicht für alle Punkte dazwischen ausrechnen).

N43
 
Klar, der Betrachter empfindet das dann nicht als räumlich, aber selbst mit einer Linie ist noch nicht wirklich was räumliches zu erkennen. Ich nehme aber mal an das Gollumn ein räumliches Objekt hat, das er auf die Ebene projizieren möchte und dazu reichen ihm erstmal die Punkte, die kann er dann verbinden (und muss es nicht für alle Punkte dazwischen ausrechnen).

N43
Gut, in dem Fall geht es natürlich schon.

btw: Ist bei dir die x-Koordinate die, die von dem "Zuschauer" wegzeigt?
 
Werbung:
Jap, aus dem Bildschirm raus ist die positive Richtung.


N43

Dann passt da was nicht.

Wenn ich den Punkt (1 | 0 | 0) abbilden möchte, dann erhalte ich (-0,5 | -0,5), aber der Punkt müsste auf jeden Fall in dem ersten Quadranten liegen.
 
Abend,

das stimmt schon, bei dir hat die x-Achse ne andere Richtung. (mein Jap war net ganz richtig ;) ) Die x-Achse geht nicht vom Betrachter weg, sondern auf ihn zu.

Ansonsten einfach das - entfernen und es stimmt wieder. Einfach mal an 'nem Würfel, etc. ausprobieren.


N43
 
Werbung:
Status
Für weitere Antworten geschlossen.
Zurück
Oben