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

Aktuelle Zeit: So Jul 13, 2025 10:36

Foren-Übersicht » Programmierung » Allgemein
Unbeantwortete Themen | Aktive Themen



Ein neues Thema erstellen Auf das Thema antworten  [ 7 Beiträge ] 
Autor Nachricht
BeitragVerfasst: Mi Dez 08, 2010 21:18 
Offline
DGL Member
Benutzeravatar

Registriert: Di Dez 03, 2002 22:12
Beiträge: 2105
Wohnort: Vancouver, Canada
Programmiersprache: C++, Python
Hi,

ich habe ein Polygon mit beliebig vielen Vertices - aber alle liegen auf einer ebene, also sind planar.
Zusätzlich habe ich einen Punkt im 3D raum welcher ebenfalls auf dieser ebene liegt - für diesen punkt brauche ich jetzt die UV koordinate die sich durch die UVs des Polygons ergibt.

Wie rechne ich das?

Mein ansatz wäre das Polygon zu triangulieren, dann schauen in welchem triangle der punkt liegt und dann daraus die baryzentrischen koordinaten berechnen.. geht das noch einfacher?

Aya~


Nach oben
 Profil  
Mit Zitat antworten  
BeitragVerfasst: Mi Dez 08, 2010 21:40 
Offline
DGL Member
Benutzeravatar

Registriert: Do Dez 29, 2005 12:28
Beiträge: 2249
Wohnort: Düsseldorf
Programmiersprache: C++, C#, Java
Wie sind den die UV-Koordinaten vergeben worden? Kannst du ein Koordinatensystem für die UV-Koordinaten angeben? Also zwei Achsen und einen Mittelpunkt. Dann ist das nämlich nicht mehr als:
Code:
punkt = punkt - center
u = dot(AchseU, punkt)
v = dot(AchseV, punkt)

_________________
Yeah! :mrgreen:


Nach oben
 Profil  
Mit Zitat antworten  
BeitragVerfasst: Mi Dez 08, 2010 21:41 
Offline
DGL Member
Benutzeravatar

Registriert: Di Dez 03, 2002 22:12
Beiträge: 2105
Wohnort: Vancouver, Canada
Programmiersprache: C++, Python
Die UVs können beliebig vergeben worden sein.
Oder missversteh ich dich? Was meinst du mit Koordinatensystem für die UVs?


Nach oben
 Profil  
Mit Zitat antworten  
BeitragVerfasst: Mi Dez 08, 2010 21:46 
Offline
DGL Member
Benutzeravatar

Registriert: Do Dez 29, 2005 12:28
Beiträge: 2249
Wohnort: Düsseldorf
Programmiersprache: C++, C#, Java
Zitat:
Was meinst du mit Koordinatensystem für die UVs?

Sowas wie die u-Koordinaten werden in Richtung der Achse U linear größer. Sprich die UV-Koordinaten wurden generiert indem jemand eine irgendwie rotierte und ggf. gestreckt, gestaucht oder gescherte Ebene in den 3D-Raum gelegt hat. Die Achsen sind dann halt die Vektoren die die Ebene aufspannen.

_________________
Yeah! :mrgreen:


Nach oben
 Profil  
Mit Zitat antworten  
BeitragVerfasst: Mi Dez 08, 2010 21:49 
Offline
DGL Member
Benutzeravatar

Registriert: Di Dez 03, 2002 22:12
Beiträge: 2105
Wohnort: Vancouver, Canada
Programmiersprache: C++, Python
Ah okay, mhh.. das wird in 99% der fälle so sein aber leider nicht immer :/


Nach oben
 Profil  
Mit Zitat antworten  
BeitragVerfasst: Mi Dez 08, 2010 21:58 
Offline
DGL Member
Benutzeravatar

Registriert: Do Dez 29, 2005 12:28
Beiträge: 2249
Wohnort: Düsseldorf
Programmiersprache: C++, C#, Java
Bei einer Zylinder-Projektion gibt es schon Probleme ;)

Also dann ist der Ansatz über die baryzentrischen Koordinaten des Dreiecks der sinnvollste denke ich.

_________________
Yeah! :mrgreen:


Nach oben
 Profil  
Mit Zitat antworten  
BeitragVerfasst: Mi Dez 08, 2010 22:10 
Offline
DGL Member
Benutzeravatar

Registriert: Do Dez 29, 2005 12:28
Beiträge: 2249
Wohnort: Düsseldorf
Programmiersprache: C++, C#, Java
Zusatz: Also falls das nicht klar geworden ist, die Idee ist halt genau die selbe Technik für den einen Punkt zu benutzen die auch für die Vertices des Polygons benutzt wurde. Allerdings ergeben sich bereits bei einem Zylinder Unterschiede zwischen dem Umweg über die Dreiecke und der Zylinderprojektion.

_________________
Yeah! :mrgreen:


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


Wer ist online?

Mitglieder in diesem Forum: 0 Mitglieder und 3 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:  
  Powered by phpBB® Forum Software © phpBB Group
Deutsche Übersetzung durch phpBB.de
[ Time : 0.008s | 14 Queries | GZIP : On ]