Stilllegung des Forums
Das Forum wurde am 05.06.2023 nach über 20 Jahren stillgelegt (weitere Informationen und ein kleiner Rückblick).
Registrierungen, Anmeldungen und Postings sind nicht mehr möglich. Öffentliche Inhalte sind weiterhin zugänglich.
Das Team von spieleprogrammierer.de bedankt sich bei der Community für die vielen schönen Jahre.
Wenn du eine deutschsprachige Spieleentwickler-Community suchst, schau doch mal im Discord und auf ZFX vorbei!
Werbeanzeige
Zitat von »"dot"«
Was für einen Compiler verwendest du denn? Evtl. kann der kein const...
C-/C++-Quelltext |
|
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 |
struct Vector2D { double x; double y; }; struct Vector2D CenterA = { x_Taube, y_Taube.}; struct Vector2D CenterB = { x_Projektil, y_Projektil.}; float RadiusA = 10.0; float RadiusB = 3.0; BOOL APIENTRY CircleHitsCircle(Vector2D CenterA, // Mittelpunkt Kreis A float RadiusA, // Radius Kreis A Vector2D CenterB, // Mittelpunkt Kreis B float RadiusB) // Radius von Kreis B { return ((CenterA->x-CenterB->x)* (CenterA->x-CenterB->x)+(CenterA->y-CenterB->y)*(CenterA->y-CenterB->y)) <= ((RadiusA+RadiusB)*(RadiusA+RadiusB)); } |
Zitat
C-/C++-Quelltext
1 2 3 4 5 struct Vector2D CenterA = { x_Taube, y_Taube.}; struct Vector2D CenterB = { x_Projektil, y_Projektil.}; float RadiusA = 10.0; float RadiusB = 3.0;
Zitat von »"GR-PA"«
...In C gibt's keine Referenzen...
Zitat von »"TrikkieMikkie"«
Zitat von »"GR-PA"«
...In C gibt's keine Referenzen...
Nein?
C-/C++-Quelltext |
|
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 |
//Definition der Kollisionskontrolle double delta_x = x_Taube - x_Projektil; double delta_y = y_Taube - y_Projektil; double hypertenuse; hypertenuse = delta_x * delta_x + delta_y * delta_y; double abstand = hypertenuse * hypertenuse; printf("\nAbstand ist %f", abstand); if ( abstand < 300 ) //eigentlich 13^2=169 { KillTimer(hwnd,TIMER_1); t = 0; v0 = 0; hilfswinkel = 0; pro_v0 = 0; pro_hilfswinkel = 0; MessageBox (hwnd,"Treffer","Meldung",MB_OK | MB_ICONEXCLAMATION); } |
Zitat von »"GR-PA"«
[*klugscheiß*]Es heißt Hypotenuse nicht Hypertenuse... [/*klugscheiß*]
C-/C++-Quelltext |
|
1 |
hypertenuse = delta_x * delta_x + delta_y * delta_y; |
C-/C++-Quelltext |
|
1 |
double abstand = hypertenuse * hypertenuse; |
Quellcode |
|
1 |
a² + b² = c² |
Quellcode |
|
1 |
delta_x * delta_x + delta_y * delta_y |
C-/C++-Quelltext |
|
1 |
double abstand = hypertenuse * hypertenuse; |
C-/C++-Quelltext |
|
1 |
double abstand = sqrt(hypertenuse); |
C-/C++-Quelltext |
|
1 |
if ( abstand < 300 ) //eigentlich 13^2=169 |
C-/C++-Quelltext |
|
1 2 3 4 5 |
hypotenuse = delta_x * delta_x + delta_y * delta_y; if (hypotenuse < 169 /* (10+3)² */) { ... |
Werbeanzeige