Delphi-PRAXiS
Seite 1 von 2  1 2      

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Multimedia (https://www.delphipraxis.net/16-multimedia/)
-   -   Delphi Kollision zweier gedrehter Rechtecke (https://www.delphipraxis.net/26847-kollision-zweier-gedrehter-rechtecke.html)

Florian H 30. Jul 2004 09:43


Kollision zweier gedrehter Rechtecke
 
Hi,

ich mache ein kleines Spiel und habe da 2 Autos (--> vereinfacht Rechtecke, von oben gesehen).
Diese fahren jetzt so durch die Gegend und da Autos nicht immer nur parallel zueinander fahren sondern die auch lenken können werden sie auch irgendwann einmal zusammenstoßen...
Und hier kommt mein Problem, ich möchte nämlich wissen wann die kollidieren...

Ich kenne die jeweilige Größe der Rechtecke, ihren Mittelpunkt sowie den Winkel wie sie gedreht sind.

Ich habe das Gefühl das sollte ich wissen, aber mir fällt es einfach nicht ein :oops:

Skizze: http://www.ystart.net/upload/20040730/1091176926.jpg


Viele Grüße und vielen Dank schonmal
Florian

ibp 30. Jul 2004 10:16

Re: Kollision zweier gedrehter Rechtecke
 
schau mal hier ist ein mathematischer ansatz Koordinatentransformation, ansonsten kann man das nicht mit farben und den bildpunkten erledigen ?

gruß rené

Florian H 30. Jul 2004 10:17

Re: Kollision zweier gedrehter Rechtecke
 
also mit farben ist das schlecht, braucht ja performance wie blöd und sauber isses auch nicht... abgesehen davon sind die rechedcke nicht einfarbig oder so...

ibp 30. Jul 2004 10:20

Re: Kollision zweier gedrehter Rechtecke
 
hab noch nen link der hilfreich ist...Koordinatentransformation

Florian H 31. Jul 2004 11:19

Re: Kollision zweier gedrehter Rechtecke
 
Hm irgendwie versteh ich das nicht ganz... bin halt doch noch 10.-klässler :oops:

Es müsste auch nicht so genau sein hab ich mir überlegt, vielleicht berechne ich einfach annähernd große gerade Rechtecke und prüfe das dann da...

Wie komme ich denn von nem Mittelpunkt mit der Gradangabe der Drehung zur Breite des Rechteckes , also die Strecke zw- 2 gegenüberliegende Ecken...
OK ist ja ansich immer der SdP...hat sich erledigt...

d3g 31. Jul 2004 12:48

Re: Kollision zweier gedrehter Rechtecke
 
Zitat:

Zitat von Florian H
Es müsste auch nicht so genau sein hab ich mir überlegt, vielleicht berechne ich einfach annähernd große gerade Rechtecke und prüfe das dann da...

Keine so gute Idee, aber wie du meinst...

Zitat:

Zitat von Florian H
Wie komme ich denn von nem Mittelpunkt mit der Gradangabe der Drehung zur Breite des Rechteckes , also die Strecke zw- 2 gegenüberliegende Ecken...

Trigonometrie. Ich nehme an, du kommst jetzt in die 10., sonst hättest du das das letzte Halbjahr ziemlich lange machen sollen und hättest die Frage nicht gestellt. Am Beispiel des blauen Autos:
Code:
a = l*cos(180°-beta) + b*cos(beta-90°)
  = -l*cos(beta) + b*(cos(90°)*cos(beta)+sin(beta)*sin(90°))
  = -l*cos(beta) + b*sin(beta)
l ist die Länge und b die Breite des Autos.

Zitat:

Zitat von Florian H
OK ist ja ansich immer der SdP...

Wie stellst du das denn an? Das funktioniert nur bei beta = 135°...

Florian H 31. Jul 2004 15:17

Re: Kollision zweier gedrehter Rechtecke
 
ich hab mir mal überlegt, es würde reichen, bei einem Rechteck mit allen 4 seiten zu prüfen ob es sich mit 2 gegenüberliegenden seiten des 2. rechteckes schneidet... sind dann 8 überprüfungen pro Durchlauf, sollte tragbar sein...

Nur wie prüfe ich ob sich 2 geraden schneiden :oops: wird ja immer schlimmer mit meinem nichtwissen.
Die 10. habe ich gerade rum und das letzte thema war trigonometrie, war aber nur ganz kurz...

Matze 31. Jul 2004 15:45

Re: Kollision zweier gedrehter Rechtecke
 
Du musst nicht überprüfen, ob sich 2 Geraden schneiden, denn die schneiden sich immer in der Ebene, wenn sie nicht parallel zueinander sind.
Du musst überprüfen, ob sich 2 Strecken schneiden, das wird leider dann bisschen schwieriger. :gruebel:

Florian H 31. Jul 2004 15:52

Re: Kollision zweier gedrehter Rechtecke
 
jep ok, war ein ausdrucksfehler... ein Rechteck hat ja keine geraden als seite...

d3g 2. Aug 2004 11:21

Re: Kollision zweier gedrehter Rechtecke
 
Liste der Anhänge anzeigen (Anzahl: 1)
Zitat:

Zitat von Florian H
Nur wie prüfe ich ob sich 2 geraden schneiden :oops: wird ja immer schlimmer mit meinem nichtwissen.

Also Strecken... Nimm die Geraden, auf denen sie liegen, in Parameterform, das macht's einfacher. Siehe Anhang.


Alle Zeitangaben in WEZ +1. Es ist jetzt 16:53 Uhr.
Seite 1 von 2  1 2      

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz