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

Aktuelle Zeit: Sa Jun 08, 2024 12:52

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



Ein neues Thema erstellen Auf das Thema antworten  [ 9 Beiträge ] 
Autor Nachricht
 Betreff des Beitrags: Mitte der Vertices herausfinden?
BeitragVerfasst: Mi Okt 23, 2002 20:23 
Offline
DGL Member
Benutzeravatar

Registriert: Di Mai 14, 2002 21:07
Beiträge: 70
Wohnort: Heilbronn/Neckar
Hi,

ich hab folgendes Problem:
Ich möchte, beispielsweise in einem Zylinder, herausfinden, welche Vertices eine Ebene teilen. Also, welche Vertices sich abdecken.
Wie mache ich das genau?
Was ich unter Ebenen verstehe, hier ein kleines Beispiel:

Zylinder:
X ---Y---Z

X ---Y---Z
^
Das ist eine Ebene

Wobei X für die Vertices der ersten Ebene, Y für die der 2. Z usw. stehen.

Ich hoffe ihr könnt mir helfen, ich komm einfach nicht weiter :?

_________________
<a href='http://aefgames.thechaoscompany.net/' target='_blank'>Artificial Electronic Faction</a>


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags:
BeitragVerfasst: Mi Okt 23, 2002 21:46 
Offline
DGL Member
Benutzeravatar

Registriert: Mo Mai 06, 2002 20:27
Beiträge: 479
Wohnort: Bremen
kannst du deine ebene näher angeben? z.B. durch zwei Vektoren?

_________________
Selber Denken macht klug!


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags:
BeitragVerfasst: So Okt 27, 2002 12:49 
Offline
DGL Member
Benutzeravatar

Registriert: Di Mai 14, 2002 21:07
Beiträge: 70
Wohnort: Heilbronn/Neckar
Naja, ich muss ja erstmal herausfinden welche Vertices auf einer Ebene sind.
Dann kann ich die Ebene durch die Vertexkoordinaten angeben :)

_________________
<a href='http://aefgames.thechaoscompany.net/' target='_blank'>Artificial Electronic Faction</a>


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags:
BeitragVerfasst: So Okt 27, 2002 14:42 
Offline
DGL Member
Benutzeravatar

Registriert: Mo Mai 06, 2002 20:27
Beiträge: 479
Wohnort: Bremen
also ich hab das prob glaub ich noch nicht ganz verstanden.... es muss doch irgendwelche Regeln geben, die für deine Ebenen gelten müssen. (z.b. rechtwinklich zum Mittelvektor des Zylinders oder irgendsowas)
Andernfalls nimmst du dir einfach 3 beliebige Vertices die dann eine Ebene bilden.
Und was ich dann noch wissen müsste ist, welche Art von Ebenengleichung du benutzen willst - oder ist dir das egal?

_________________
Selber Denken macht klug!


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags:
BeitragVerfasst: So Okt 27, 2002 15:44 
Offline
DGL Member
Benutzeravatar

Registriert: Di Mai 14, 2002 21:07
Beiträge: 70
Wohnort: Heilbronn/Neckar
Ebenengleichung wäre mir egal. Und das soll ja variabel werden, deswegen kann ichs nicht nur auf zylinder auslegen. Das sollte nur ein Beispiel sein :?

_________________
<a href='http://aefgames.thechaoscompany.net/' target='_blank'>Artificial Electronic Faction</a>


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags:
BeitragVerfasst: So Okt 27, 2002 21:10 
Offline
DGL Member
Benutzeravatar

Registriert: Mo Mai 06, 2002 20:27
Beiträge: 479
Wohnort: Bremen
also schließe ich daraus, dass das Problem nicht ist an eine Ebenengleichung zu kommen, sondern zu prüfen welche Vertices darauf liegen? Das sollte ziemlich einfach gehen... sag einfach, dass es das ist, und ich werd mir ein Verfahren überlegen und posten ;)

_________________
Selber Denken macht klug!


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags:
BeitragVerfasst: Mo Okt 28, 2002 21:16 
Offline
DGL Member
Benutzeravatar

Registriert: Di Mai 14, 2002 21:07
Beiträge: 70
Wohnort: Heilbronn/Neckar
Juhu, genau das meinte ich 8)
Jo, wär echt klasse wenn du dir was überlegen könntest...
Ich versuchs auch schon die ganze Zeit, aber es klappt irgendwie nicht :/

_________________
<a href='http://aefgames.thechaoscompany.net/' target='_blank'>Artificial Electronic Faction</a>


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags:
BeitragVerfasst: Mo Okt 28, 2002 23:06 
Offline
DGL Member
Benutzeravatar

Registriert: Mo Mai 06, 2002 20:27
Beiträge: 479
Wohnort: Bremen
okay.... ich schlage vor, du beschreibst deine Ebenen in der Punkt-Normalen-Form. (Ein Punkt der in der Ebene liegt und ein Vektor der senkrecht auf der Ebene steht - sozusagen ein Up-Vektor.) Du hast also einen Punkt P0 und einen Vektor n. Es ist erstaunlich, aber mehr brauchst du nicht um eine Ebene eindeutig zu beschreiben...

Nun stellt sich deine Frage, wie finde ich Punkte, die in der Ebene liegen...

Nun, ein Punkt P ist genau dann Teil der Ebene, wenn der Richtungs-Vektor s zwischen P und P0 senkrecht zum Up-Vektor ist. (logisch oder? Denn ist P Teil der Ebene dann ist die Strecke P-P0 ja auch Teil der Ebene und damit muss der Up-Vector auch zu dieser Strecke senkrecht sein)

Wie bekommst du nun raus, ob s senkrecht zu n ist? Ganz einfach über das Punktprodukt. s * n muss nämlich 0 sein, den cos(0) ergibt bekanntlich 90°.
Also haben wir die Gleichung

s * n = 0.

Nun hilft es dir relativ wenig mit s zu hantieren, eine Gleichung in die du die Komponenten des fraglichen Punktes P einsetzen kannst wäre da hilfreicher. s ist ja nichts anderes als der Vektor zwischen P0 und P... also

s = (x0 - x, y0 - y, z0 - z).

Das in obige Gleichung eingesetzt ergibt:

(x0 - x, y0 - y, z0 - z) * n = 0;

jetzt zerlegen wir n noch in seine Komponenten und erhalten diese praktische Gleichung:

a(x0 - x) + b(y0 - y) + c(z0 - z) = 0;

a, b und c sind die Komponenten des Up-Vectors n. x0, y0, z0 die des Punktes P0 der in der Ebene liegt und in x, y und z setzt du die Komponenten des Punktes ein, den du überprüfen willst. Ergibt die linke Seite 0 ist die Gleichung erfüllt und dein Punkt liegt in der Ebene!

Ich hoffe du hast alles verstanden... das ist schon nicht mehr ganz so einfache Algebra. Im Zweifelsfall hol dir mal ein gutes Buch dazu...

Hoffe ich konnte helfen!

-lith

_________________
Selber Denken macht klug!


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags:
BeitragVerfasst: So Nov 10, 2002 09:16 
Offline
DGL Member
Benutzeravatar

Registriert: Di Mai 14, 2002 21:07
Beiträge: 70
Wohnort: Heilbronn/Neckar
Jo ist schon ziemlich schwer, aber ich denke ich habs kapiert :)
Vielen Dank, für die ausführliche Formelerklärung! :)

_________________
<a href='http://aefgames.thechaoscompany.net/' target='_blank'>Artificial Electronic Faction</a>


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


Wer ist online?

Mitglieder in diesem Forum: 0 Mitglieder und 22 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.061s | 14 Queries | GZIP : On ]