AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

Ball-Flugbahn berechnen

Ein Thema von Yheeky · begonnen am 18. Nov 2003 · letzter Beitrag vom 19. Nov 2003
Antwort Antwort
Seite 2 von 3     12 3      
Benutzerbild von Seniman
Seniman

Registriert seit: 15. Sep 2003
Ort: Münster
98 Beiträge
 
#11

Re: Ball-Flugbahn berechnen

  Alt 19. Nov 2003, 00:27
Hi,

mit "t" ist bei devnull die Zeit gemeint. Weise also t irgendeinen positiven Wert zu, dann kannst du in Abhängigkeit davon die Koordinaten des Balls ausrechnen.
Zum Zeichnen der Flugbahn rate ich dir die Form.Canvas (die Grafikoberfläche der Form) zu benutzen. Dazu solltest du zwei Befehle kennen:
Form.Canvas.MoveTo(x,y) setzt den (unsichtbaren) Grafik-Cursor auf die Koordinaten (x,y)
Form.Canvas.LineTo(x,y) zeichnet eine Linie von der aktuellen Position des Grafik-Cursors zu den Koordinaten (x,y) und setzt den Cursor darauf.
Statt "Form" musst du natürlich den Namen der Form angeben, auf der du zeichnen willst.

Probier einmal folgende Prozedur:

Delphi-Quellcode:
procedure TForm1.Button1Click(Sender: TObject);
var Koor_x, Koor_Y,speed,winkel,erdanziehung,t: Real;
begin
t:=0;
Koor_x:=100;
Koor_y:=100;
winkel:=45;
Speed:=30;
Erdanziehung:=9.81;
Canvas.MoveTo(100,100);
While t<100 do
  begin
    koor_x := speed * cos(winkel / 180 * Pi ) * t+100;
    koor_y := -(speed * sin(winkel / 180 * Pi ) * t - 0.5 * erdanziehung * t * t)+100;
    Canvas.LineTo(Round(koor_x),Round(koor_y));
    t:=t+0.1;
  end;
end;
Das sollte eine Flugbahnaufzeichnen.

Grüße
Seniman

[edit=FuckRacism]Delphi-Tax gesetzt, nim doch bitte in Zukunft delphi anstatt code Mfg, FuckRacism[/edit]
  Mit Zitat antworten Zitat
Yheeky

Registriert seit: 7. Jun 2002
1.339 Beiträge
 
#12

Re: Ball-Flugbahn berechnen

  Alt 19. Nov 2003, 15:48
Ah, okay, danke jetzt weiss ich, wie ich es zeichnen kann. Bei deinem Beispiel fällt der Ball aber viel zu weit nach unten. Schließlich muss er ja auf der Startebene wieder landen.
  Mit Zitat antworten Zitat
Benutzerbild von d3g
d3g

Registriert seit: 21. Jun 2002
602 Beiträge
 
#13

Re: Ball-Flugbahn berechnen

  Alt 19. Nov 2003, 15:51
Mensch, Yheeky! Schau dir doch die Schleife mal an: sie zeichnet einfach 1000 Linien, und die Abbruchbedingung ist unabhängig davon, wo sich der Ball befindet. Wenn du willst, dass der Ball nicht unter einen bestimmten y-Wert fällt, dann musst du das einbauen!
-- Crucifixion?
-- Yes.
-- Good. Out of the door, line on the left, one cross each.
  Mit Zitat antworten Zitat
Yheeky

Registriert seit: 7. Jun 2002
1.339 Beiträge
 
#14

Re: Ball-Flugbahn berechnen

  Alt 19. Nov 2003, 15:57
Sachte, sachte! Das war nur ne Feststellung! Bin ja schon dabei das einzubauen...nur ruhig´ Blut!
  Mit Zitat antworten Zitat
Alexander

Registriert seit: 28. Aug 2002
Ort: Oldenburg
3.513 Beiträge
 
Turbo Delphi für .NET
 
#15

Re: Ball-Flugbahn berechnen

  Alt 19. Nov 2003, 16:45
HI,
da will ich mich auch mal einmischen, folgende qudratische Gleichung sollte das machen:
s(t)= ½ * a * t² + V0 * t + s0
Wobei a die Beschleunigung ist (9,81 m/s²) und V0 die Startgeschwindigkeit und S0 die Startort ist.
Letzteres müsste natürlich bei dir 0 sein.
Ach so und t ist natürlich die Zeit.
Wenn du die entsprechende GEschwindigkeitsgleichung haben willst, so musst du sie nur ableiten (Stichwort Grenzwert und Delta von y durch Delta von x)

PS: Wie kann man nur das beste Fach (neben Info und Mathe) abwählen
Alexander
  Mit Zitat antworten Zitat
Benutzerbild von devnull
devnull

Registriert seit: 5. Okt 2003
362 Beiträge
 
Delphi 7 Personal
 
#16

Re: Ball-Flugbahn berechnen

  Alt 19. Nov 2003, 17:01
Hi Yheeky,

Delphi-Quellcode:
[b]While (t < 100) and (koor_y > 100) do[/b]
  begin
    koor_x := speed * cos(winkel / 180 * Pi ) * t+100;
    koor_y := -(speed * sin(winkel / 180 * Pi ) * t - 0.5 * erdanziehung * t * t)+100;
    Canvas.LineTo(Round(koor_x),Round(koor_y));
    t:=t+0.1;
  end;
So sollte deine Schleife aufhören, wenn sich koor_y unter dem Wert 100 befindet.

PS: Wieso klappt das mit dem Bold nich ???????

devnull

[EDIT]PS[/EDIT]
-- Never change a running system --
  Mit Zitat antworten Zitat
czapie

Registriert seit: 17. Nov 2002
Ort: Berlin
384 Beiträge
 
Delphi 5 Standard
 
#17

Re: Ball-Flugbahn berechnen

  Alt 19. Nov 2003, 17:17
Hi Leute,

ich glaube ich liege nihct falsch, wenn ich sage ihr habt etwas vergessen

Die Gewichtskraft die zweifelsohne nach untern wirkt ist abhängig von der Masse.
Aber ich finde in keiner Formal eine Masse.

Czapie.
Was man zu verstehen gelernt hat, fürchtet man nicht mehr.
(Marie Curie)
http://www.cafes-in-berlin.com
  Mit Zitat antworten Zitat
Benutzerbild von devnull
devnull

Registriert seit: 5. Okt 2003
362 Beiträge
 
Delphi 7 Personal
 
#18

Re: Ball-Flugbahn berechnen

  Alt 19. Nov 2003, 17:26
@Czapie:
Also da muss ich dir zustimmen; aber das is ja auch in der Formel schon drin:

koor_y := -(speed * sin(winkel / 180 * Pi ) * t - 0.5 * erdanziehung * t * t)+100; Erdanziehung:
0,5 * g * t²
g steht hier für die Erdanziehungskraft g = 9,81 kgms^-2

devnull
-- Never change a running system --
  Mit Zitat antworten Zitat
Benutzerbild von Thunderchild
Thunderchild

Registriert seit: 12. Nov 2003
Ort: Nohra
139 Beiträge
 
Delphi 7 Personal
 
#19

Re: Ball-Flugbahn berechnen

  Alt 19. Nov 2003, 17:35
Die Masse hat keine Einwirkung auf die Fallgeschwindigkeit (vorausgesetzt, man kann die Luftreibung vernachlässigen. Eine Feder fällt im Vakuum genauso schnell zu Boden wie ein Stein. Es wirkt zwar mehr Kraft wegen F=m*a, aber dafür muss auch eine höhere Trägheit überwunden werden, die ebenfalls von der Masse abhängt und auf der anderen Seite der Gleichung steht.
Das letzte Schöne, das in C geschrieben wurde, war Schuberts 9. Sinfonie.
Meine Softwareseite (Link aktualisiert am 13.12.2006).
  Mit Zitat antworten Zitat
Benutzerbild von Christian S.
Christian S.

Registriert seit: 19. Apr 2003
Ort: Düsseldorf
835 Beiträge
 
#20

Re: Ball-Flugbahn berechnen

  Alt 19. Nov 2003, 18:39
Die "Trägheit" hängt nicht von der Masse ab, weil es keine Größe, sondern ein Verhalten ist. Trägheit heißt ganz einfach, dass das 1. Newton'sche Gesetz gilt.
Christian S.
Admin in der Entwickler-Ecke
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 2 von 3     12 3      


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 03:30 Uhr.
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