Files |  Tutorials |  Articles |  Links |  Home |  Team |  Forum |  Wiki |  Impressum

Aktuelle Zeit: Di Jul 15, 2025 20:56

Foren-Übersicht » Programmierung » Einsteiger-Fragen
Unbeantwortete Themen | Aktive Themen



Ein neues Thema erstellen Auf das Thema antworten  [ 10 Beiträge ] 
Autor Nachricht
 Betreff des Beitrags: Mit der Kamera auf Objekte zoomen...
BeitragVerfasst: Mi Feb 01, 2006 17:17 
Offline
DGL Member
Benutzeravatar

Registriert: Mi Feb 02, 2005 14:22
Beiträge: 81
Ich frage mich gerade, wie ich den Blickpunkt meiner "Kamera" festlegen kann.

Wenn ich z.B. eine Linie vom Punkt 8.000001 zu 8.0000009 zeichne, wie muss dann mein Translatef aussehen, damit ich die Linie genau im Mittelpunkt des OpenGL Fensters habe?

Wie gehe ich bei mehreren gezeichneten Objekten vor? Wenn ich z.B. Linien wie die obige an verschiedenen Stellen gezeichnet habe? Ich möchte die Kamera dann so ausrichten, dass ich alle Linien im Blickfeld habe.

Vielleicht kann mir ja jemand auf die Sprünge helfen...
Vielen Dank schonmal vorab!


Zuletzt geändert von Michael am Do Feb 02, 2006 11:01, insgesamt 1-mal geändert.

Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags: Re: Hallo Gemeinde!
BeitragVerfasst: Do Feb 02, 2006 03:48 
Offline
DGL Member
Benutzeravatar

Registriert: Do Mär 06, 2003 15:27
Beiträge: 281
Wohnort: Bochum
Michael hat geschrieben:
z.B. eine Linie vom Punkt 8.000001 zu 8.0000009


in ogl eine linie mit 1dimensionalen coordinaten(der start/end punkte) zu zeichnen is schonmal nicht möglich, also erklär doch mal bitte genauer was du willst und wo es sein soll !?

_________________
www.extrawurst.org


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags:
BeitragVerfasst: Do Feb 02, 2006 09:18 
Offline
DGL Member
Benutzeravatar

Registriert: Do Dez 05, 2002 10:35
Beiträge: 4234
Wohnort: Dortmund
Extrawurst: Du könntest es ja auch so sehen, dass diese Werte X sind und Y und Z 0 sind. Damit hätte man dann nur eine kleine Linie.

Michael: Könntest du das nächste Mal bitte einen sinnvollen und aussagekräftigen Titel wählen. So würde man sofort sehen worum es sich handelt. Du kannst deinen Beitrag auch nachträglich bearbeiten und den Titel anpassen. ;-)

Zu deiner Frage. Ich bin Guru was so etwas angeht aber ich denke mal es wird darauf hinaus laufen, dass du dir vorher erst einmal die Maße deines Objekts zusammen suchen musst. Also alle Punkte durchgehen und jeweils den kleinsten und größten Wert auf all deinen Achsen merken. Wenn du diesen hast kannst du den optischen Mittelpunkt des Objekts errechnen (die Hälte von den einzelnen Achsen). Und damit könntest du dein Objekt verschieben so, dass es im Mittelpunkt steht.

Wie große jetzt der Zoom werden muss kann ich dir nicht sagen. Aber ich befürchte, dass du dafür den Frustum Auslesen musst und dann Dinge berechnen musst. Aber dazu sollte noch mal jemand anderes was sagen. Das ist nicht so mein Ding.


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags:
BeitragVerfasst: Do Feb 02, 2006 09:31 
Offline
DGL Member
Benutzeravatar

Registriert: Do Mär 06, 2003 15:27
Beiträge: 281
Wohnort: Bochum
Jo, klar könnte man das annehmen, man könnte aber auch annehmen er will diese werte für Y nehmen und den rest auf 0 setzten, oder aber auf 1 ... ist halt schwer zu erraten.
Des weiteren, muss man nicht in jedem Kontext direkt eine BoundingBox per MinMax errechnen, flexibler ist es natürlich. Allerdings stand auch niregendwo (wie schon bemerkt) wie starkt das Objekt gezoomt sein soll. Soll es den kompletten Bildschirm füllen, reicht es einen Frustum zu finden der das Object überhaupt komplett zeigt ....

_________________
www.extrawurst.org


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags:
BeitragVerfasst: Do Feb 02, 2006 11:00 
Offline
DGL Member
Benutzeravatar

Registriert: Mi Feb 02, 2005 14:22
Beiträge: 81
Erstmal möchte ich mich für den wirklich nicht gut überlegten Titel entschuldigen. Ich werde gleich mal versuchen ihn zu ändern!

@Extrawurst:
Ich dachte es wäre klar bei so einer Angabe, dass es sich bei den beiden Koordinaten nur um eine Achse handeln würde. Was ich meine ist das:
Code:
  1. glBegin(GL_LINES);
  2.     glVertex3f(8.000001, 0, 0);
  3.     glVertex3f(8.000009, 0, 0);
  4. glEnd;


@Lossy eX:
Der Hinweis mit den kleinsten und größten Werten der Objekte ist gut. So in etwa habe ich mir das auch gedacht...
Komplizierter wird es beim Zoom. Irgendwie muss ich doch meine Perspektive berücksichtigen. Wenn ich mal von
Code:
  1. gluPerspective(45.0, POGL.ClientWidth / POGL.ClientHeight, NearClipping, FarClipping);

ausgehe, frage ich mich, wie ich den Tiefenwert Z - also:
Code:
  1. glVertex3f(X, Y, Z);

errechnen kann. Die Entfernung der Kamera von der Linie soll dann so groß sein, damit die Linie Bildschirmfüllend angezeigt wird.

So, ich hoffe, dass ich das dieses Mal DelphiGL - kompatibel rüberbringen konnte :wink:


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags:
BeitragVerfasst: Do Feb 02, 2006 14:55 
Offline
Guitar Hero
Benutzeravatar

Registriert: Do Sep 25, 2003 15:56
Beiträge: 7810
Wohnort: Sachsen - ERZ / C
Programmiersprache: Java (, Pascal)
Lossy eX hat geschrieben:
Zu deiner Frage. Ich bin Guru was so etwas angeht aber [...]

8) :mrgreen:

_________________
Blog: kevin-fleischer.de und fbaingermany.com


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags:
BeitragVerfasst: Do Feb 02, 2006 15:04 
Offline
DGL Member
Benutzeravatar

Registriert: Do Dez 05, 2002 10:35
Beiträge: 4234
Wohnort: Dortmund
Flash hat geschrieben:
Lossy eX hat geschrieben:
Zu deiner Frage. Ich bin Guru was so etwas angeht aber [...]

8) :mrgreen:

Jetzt wo du es mir noch mal so vor die Nase hältst. Irgendwie stinkt das ziemlich stark nach Eigenlob, was es eigentlich gar nicht sein sollte. :roll: Ich hab natürlich keine Ahnung von so was. Nur um das mal klar zu stellen. Meine Stärken liegen eindeutig wo anders. In der Rechtschreibung aber abscheinend auch nicht. ;-)


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags:
BeitragVerfasst: Do Feb 02, 2006 16:59 
Offline
Forenkatze
Benutzeravatar

Registriert: Mi Okt 22, 2003 18:30
Beiträge: 1945
Wohnort: Närnberch
Programmiersprache: Scala, Java, C*
Lossy eX hat geschrieben:
Flash hat geschrieben:
Lossy eX hat geschrieben:
Zu deiner Frage. Ich bin Guru was so etwas angeht aber [...]

8) :mrgreen:

Jetzt wo du es mir noch mal so vor die Nase hältst. Irgendwie stinkt das ziemlich stark nach Eigenlob, was es eigentlich gar nicht sein sollte. :roll: Ich hab natürlich keine Ahnung von so was. Nur um das mal klar zu stellen. Meine Stärken liegen eindeutig wo anders. In der Rechtschreibung aber abscheinend auch nicht. ;-)

:lol: :lol: :lol:

_________________
"Für kein Tier wird so viel gearbeitet wie für die Katz'."


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags:
BeitragVerfasst: Sa Feb 04, 2006 17:03 
Offline
Guitar Hero
Benutzeravatar

Registriert: Do Sep 25, 2003 15:56
Beiträge: 7810
Wohnort: Sachsen - ERZ / C
Programmiersprache: Java (, Pascal)
Ein Deutsch-Compiler wäre ab und an richtig klasse, oder!? 8) (Hätte ich im Abi gut brauchen können :wink: )

_________________
Blog: kevin-fleischer.de und fbaingermany.com


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags:
BeitragVerfasst: Sa Feb 04, 2006 22:19 
Offline
Forenkatze
Benutzeravatar

Registriert: Mi Okt 22, 2003 18:30
Beiträge: 1945
Wohnort: Närnberch
Programmiersprache: Scala, Java, C*
Flash hat geschrieben:
Ein Deutsch-Compiler wäre ab und an richtig klasse, oder!? 8) (Hätte ich im Abi gut brauchen können :wink: )

:mrgreen:
Mir würde ja ein einfacher Syntax-Test genügen ;) Der ist schneller und funktioniert genauso. Obwohl er ja streng genommen nu die Syntax und nicht die Bezeichner (Sprich: Nur die Grammatik *g*) prüfen müsste. Nichtsdestotrotz prüft Delphi bei der Syntax-Prüfung alles. Nicht nunr die Syntax ;)

_________________
"Für kein Tier wird so viel gearbeitet wie für die Katz'."


Nach oben
 Profil  
Mit Zitat antworten  
Beiträge der letzten Zeit anzeigen:  Sortiere nach  
Ein neues Thema erstellen Auf das Thema antworten  [ 10 Beiträge ] 
Foren-Übersicht » Programmierung » Einsteiger-Fragen


Wer ist online?

Mitglieder in diesem Forum: 0 Mitglieder und 7 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.

Suche nach:
Gehe zu:  
cron
  Powered by phpBB® Forum Software © phpBB Group
Deutsche Übersetzung durch phpBB.de
[ Time : 0.008s | 14 Queries | GZIP : On ]