also: wenn du direkt von oben guckst, dann ist der Winkel, mit dem dein Sichtkegelstumpf die Kante deines Weltquaders trifft genau der halbe Öffnungswinkel. (wie beim geo-dreieck. Wenn Du Dir vorstellst, dein Auge ist in der Spittze und die Welt ist auf der Grundlinie, dann ist ja der Winkel oben 90° und links und rechts je 45°)
wenn du aber von der Senkrechte auf die zu beobachtende Fläche abweichst, dann verändern sich die Winkel an den Kanten der Fläche, da ja der Winkel bei der Kamera konstant ist, und zwar je genau um diesen Abweichungswinkel. (um beim Geo-Dreieck zu bleiben wenn du das ding an der einen Seite hochhebst, dann ändert sich der Winkel auf beiden Schenkeln bezogen zum Tisch genau so wie der Winkel der Mittellinie zur Senkrechten auf den Tisch).
Um nun den Punkt zu finden von dem aus man gucken muß, damit beide Enden der Fläche genau am Bildrand liegen muß man sozusagen das Pferd von hinten aufzäumen. wir suchen also von unseren Weltkanten aus den Kamerapunkt und das geschieht über die Schnittpunkte der Geraden. Du mußt also für jede Kante Deiner Welt eine Geradengleichung aufstellen, die um den halben Öffnungswinkel deiner Kamera geneigt ist und Richtung Senkrechte zeigt. Diese Geraden neigst du dann um den veränderten Blickwinkel und lässt sie sich schneiden (jeweils gegenüberliegende). Damit hast Du einen Pool von Schnittpunkten und von denen wählst du den aus, der vom Zentrum deiner Welt am weitesten weg ist. Das ist dein Augpunkt deiner Kamera, und das Zentrum der Kamera ist das Zentrum deiner Welt.
Ich hoffe das hilft etwas ansonsten bitte konkrete Fragen
_________________ Manchmal sehen Dinge, die wie Dinge aussehen wollen, mehr wie Dinge aus, als Dinge.
<Esmerelda Wetterwax>
Es kann vorkommen, dass die Nachkommen trotz Abkommen mit ihrem Einkommen nicht auskommen und umkommen.
Registriert: Do Sep 25, 2003 15:56 Beiträge: 7810 Wohnort: Sachsen - ERZ / C
Programmiersprache: Java (, Pascal)
Das Vorgehen, um den Thread hier mal wieder zu beleben, scheint mir bisl aufwendig.
Eventuell kann man auch eine Boundingbox um die Szene legen und die Ecken der Box so rotieren, dass die Kamera senkrecht zur Box steht... Also...nicht die Box bewegen, sondern nur die Koordinaten ins Koordinatensystem der Kamera umwandeln. Dann kann man wieder die eigentliche Formel vom Thread Anfang nehmen.
_________________ Blog: kevin-fleischer.de und fbaingermany.com
Mitglieder in diesem Forum: 0 Mitglieder und 2 Gäste
Du darfst keine neuen Themen in diesem Forum erstellen. Du darfst keine Antworten zu Themen in diesem Forum erstellen. Du darfst deine Beiträge in diesem Forum nicht ändern. Du darfst deine Beiträge in diesem Forum nicht löschen. Du darfst keine Dateianhänge in diesem Forum erstellen.