kollision - kreis, rechteck
Übersicht

Apollo30Betreff: kollision - kreis, rechteck |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
Ich bin dabei bei einem Spiel Kollision einzubauen dafür benutze ich:
Code: [AUSKLAPPEN] If r <> 1 Then
x1# = info\x+scrollx y1# = info\y+scrolly x2# = gpx+breit/2 y2# = gpy+hoch/2 x_ab# = x1# - x2# y_ab# = y1# - y2# abstand# = Abs(Sqr((x_ab# ^ 2) + (y_ab# ^ 2))) x1# = info\x+scrollx y1# = info\y+scrolly+info\hoch x2# = gpx+breit/2 y2# = gpy+hoch/2 x_ab# = x1# - x2# y_ab# = y1# - y2# abstand1# = Abs(Sqr((x_ab# ^ 2) + (y_ab# ^ 2))) If abstand# < breit/2 Or abstand1# < breit/2 Then r = 1 Else r = 2 End If End If Mein Problem ist eigentlich ganz einfach bei dem ganzen werden hier beim gehen nach rechts zwei Punkte benutzt oben und unten nur dazwischen kommt man logischerweise durch. Ich finde einfach keinen weg das zu beheben. |
||
![]() |
ozzi789 |
![]() Antworten mit Zitat ![]() |
---|---|---|
Hi
Das ganze nennt sich "Lines Intersect" such mal danach ![]() Das ist eine Funktion die prüfen kann ob 2 Linien sich berührern/schneiden. mfg |
||
0x2B || ! 0x2B
C# | C++13 | Java 7 | PHP 5 |
Apollo30 |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
Könntest du mir eine beschreibung der Funktion geben ich finde den befehl weder hier noch in der wiki.
Außerdem kommt ein neues problem auf mich zu: Ich habe punkt a und will eine rute nach punkt b berechnen also lass ich mir den winkel geben. problem ist nur das ich keine formel kenne um den winkel in 0,4x und 0,6y umzurechnen um das dann etwa so auszurechnen: Code: [AUSKLAPPEN] if xx > yy then kordy + 1 yy = yy + y end if if yy > xx then kordx + 1 xx = xx + x end if schonmal danke |
||
![]() |
ozzi789 |
![]() Antworten mit Zitat ![]() |
---|---|---|
Die findest du zu genüge auf Google ![]() zB. http://zonalandeducation.com/m...ines1.html /edit/ achso hab dich falsch verstanden ![]() Den Winkel rechnest du so aus winkel = atan ![]() mfg |
||
0x2B || ! 0x2B
C# | C++13 | Java 7 | PHP 5 |
- Zuletzt bearbeitet von ozzi789 am Do, Jun 24, 2010 19:36, insgesamt einmal bearbeitet
Apollo30 |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
Achso ist also garkeine funktion. Gut ich probiere es einfach einmal.
Ich kann bereits den Winkel ausrechnen mein Problem ist es nur auch was damit anzufangen und x und y zu erstellen wie ich bereits vorher angegeben habe. |
||
![]() |
Hubsi |
![]() Antworten mit Zitat ![]() |
---|---|---|
BlitzBasic: [AUSKLAPPEN] px#=px#+speed*Cos(w#) Wobei px bzw. py die Spielerkoordinaten sind und w# der Winkel. |
||
Den ganzen Doag im Bett umanandflagga und iaz daherkema und meine Hendl`n fressn... |
Apollo30 |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
Danke an euch beide ich war schon am verzweifeln | ||
Übersicht


Powered by phpBB © 2001 - 2006, phpBB Group