Das deutsche QBasic- und FreeBASIC-Forum Foren-Übersicht Das deutsche QBasic- und FreeBASIC-Forum
Für euch erreichbar unter qb-forum.de, fb-forum.de und freebasic-forum.de!
 
FAQFAQ   SuchenSuchen   MitgliederlisteMitgliederliste   BenutzergruppenBenutzergruppen  RegistrierenRegistrieren
ProfilProfil   Einloggen, um private Nachrichten zu lesenEinloggen, um private Nachrichten zu lesen   LoginLogin
Zur Begleitseite des Forums / Chat / Impressum
Aktueller Forenpartner:

Ball-Simulation

 
Neues Thema eröffnen   Neue Antwort erstellen    Das deutsche QBasic- und FreeBASIC-Forum Foren-Übersicht -> Allgemeine Fragen zu QBasic.
Vorheriges Thema anzeigen :: Nächstes Thema anzeigen  
Autor Nachricht
Paul
aka ICC, HV-Freak


Anmeldungsdatum: 11.09.2004
Beiträge: 588
Wohnort: Uelzen

BeitragVerfasst am: 29.03.2005, 23:05    Titel: Ball-Simulation Antworten mit Zitat

Moin !
Sicher kennen alle von euch das Spiel "The Incredible Machine" von Sierra.
Ganz nettes Ding, kann viele schöne Vorgänge siumlieren. Ich wollt mir auch mal so was in der Art Proggen, verfüge aber leider nicht über das nötige mathematische Vorwissen. (In der 9. Klasse macht man echt nur Scheiße die kein Mensch braucht XD )

Kann mir jemand Informationen liefern, wie man a) Einen Springenden Ball und b) einen geworfenen Stein (der hinterher evtl. auch noch rumkullert und hüpft) simuliert ?
Gegeben sind
x-Position
y-Position

und beim Steinwurf zusätzlich noch
Winkel
Wurfgeschwindigkeit

Im Prinzip könnte ich das auch alleine, aber ich will dass es realistisch aussieht und deshalb müssen halt Faktoren wie Gravitationskonstante etc. berücksichtigt werden. Luftwiderstand muss net unbedingt berücksichtigt werden, wäre aber schön.

Hat jemand Infos dazu ?
Hab schon stundenlang nach "Wurfparabel" gegoogelt aber dort findet man nur immer saukomplizierte Dinger die alles andere als für die Verwendung in einem QB-Prog geeignet sind.. durchgeknallt
_________________
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden E-Mail senden Website dieses Benutzers besuchen
code



Anmeldungsdatum: 19.01.2005
Beiträge: 154

BeitragVerfasst am: 29.03.2005, 23:13    Titel: Antworten mit Zitat

ich weiß die formel nicht auswendig, aber ich würd mal im physikbuch unter schiefer wurf schauen zwinkern

und zum springenden ball, da brauchst du auch noch die beschleunigung nach unten sprich die erdanziehung. mit g=10 m/s²

S= zurückgelegte Strecke:

S=0.5 *g*t²

wobei t= zeit
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
Dusky_Joe



Anmeldungsdatum: 07.01.2005
Beiträge: 1007
Wohnort: Regensburg/Oberpfalz

BeitragVerfasst am: 29.03.2005, 23:23    Titel: Antworten mit Zitat

Hmmmm... ich hab da mal ne art Amiga-Bomber-Clone geschrieben. Da war ne ähnliche Situation.

Ich würd die Flugbahn als Parabel Simulieren.


Gegeben:
x => StartX
y => StartY
p => Schusskraft
a => Winkel

Errechne:
xs => Scheitelpunkt der Parabel X
ys => Scheitelpunkt der Parabel Y

xs = cos(a) * p
ys = sin(a) * p

(die eigentliche Gleichung für eine Drehungs-Abbildung um den Nullpunkt ist:
x' = cos(a) * x - sin(a) * y
y' = sin(a) * x + cos(a) * y

Habe sie hier nur leicht abgewandelt)

xs = xs + x
ys = ys + y

So. Jetzt hast du alles, um eine Parabel der Form

y = a*(x - xs) ^ 2 + ys

darzustellen.
Du musst dir nur noch a errechnen. Dazu stellst du einfach deine Gleichung um, denn a ist die einzige unbekannte:

a = (y - ys) / ((x - xs) ^ 2)



Und schon kannst du folgendes machen:

FOR xm = x TO ...? 'irgendein wert... musste selber finden...
y = a * (x - xs) ^ 2
...'Grafik, Animation, ....
NEXT

(nur n ansatz, aber nützlich)
_________________
fully biological degradable

Once, the big wave arrives, you've got two ways, you can go:
Either, you ride it, or you don't do.
But, if you don't ride, you'll never know wether you'd have gone wet.
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
Sebastian
Administrator


Anmeldungsdatum: 10.09.2004
Beiträge: 5969
Wohnort: Deutschland

BeitragVerfasst am: 30.03.2005, 10:15    Titel: Antworten mit Zitat

Zitat:
(In der 9. Klasse macht man echt nur Scheiße die kein Mensch braucht)

In der Tat... Hammer
_________________

Die gefährlichsten Familienclans | Opas Leistung muss sich wieder lohnen - für 6 bis 10 Generationen!
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden E-Mail senden Website dieses Benutzers besuchen
stef



Anmeldungsdatum: 13.01.2005
Beiträge: 102

BeitragVerfasst am: 30.03.2005, 10:53    Titel: Antworten mit Zitat

Also ich würde mal empfehlen bei qb-city.de das Programm von MisterD zu der Aufgabe Ball-Simulation herunter zu laden. Er hatte eigentlich recht gut da einen hüpfenden Ball simuliert.
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
Mecki
Igel


Anmeldungsdatum: 10.09.2004
Beiträge: 985
Wohnort: Niederbayern

BeitragVerfasst am: 30.03.2005, 11:23    Titel: Antworten mit Zitat

Hi Paul,

Bei uns (mir und MrBobble) in Physics haben wir zur Veranschaulichung des Ortsfaktors eine Ballsimulation, wo 3 Bälle auf 3 Planeten mit unterschiedlichen Ortsfaktoren happy fallen gelassen werden.

Optional ist auch ein Startvektor, die Startposition, die Rollreibung und die Elastizität des Balles einstellbar.

Wie oben vorgeschlagen benutzen wir X- und Y-Vektoren für den Ball, die sich bei Aufprall an eine Wand einfach "umpolen" lassen können, vom Vektor wird die jeweilige Verformungsenergie abgezogen.

Um die physikalische Simulation zu gewährleisten, setzen wir ein Vakuum voraus, sodass der Luftwiederstand gleich ist.

Die Masse aller Bälle ist auch gleich.

Jetzt aber zum Roll-Thema. Wir haben, damit es schöner aussieht, auch einen rollenden Ball. Hier machen wir es einfach so, dass alle 5 Pixelspalten des Bildschirms der Ball um 5° gedreht wird.

Es gibt also keine große Formel, die das errechnet, sondern lediglich dieses Raster, an das sich der Ball hält - und es sieht trotzdem sehr gut aus lächeln

Ich wünsche dir viel Erfolg bei deiner Simulation zwinkern

Grüßle,
Mecki

PS: Hier noch 2 Screenshots aus Physics - das Druckmodul und der Ortsfaktor. Weitere Infos & Screenshots findet ihr auf www.Physics.de.tc.




PPS: Im Moment portieren wir Physics übrigens gerade auf FreeBASIC lächeln
_________________
» Yodl.de: So sucht man gestern. verwundert
» Geld verdienen im Netz + ICQ.
» Firefox!
» 100€ zu gewinnen
» FreeBASIC.de
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden E-Mail senden Website dieses Benutzers besuchen AIM-Name Yahoo Messenger MSN Messenger
jb



Anmeldungsdatum: 14.01.2005
Beiträge: 2010

BeitragVerfasst am: 30.03.2005, 12:33    Titel: Antworten mit Zitat

ICC hat Folgendes geschrieben:

(In der 9. Klasse macht man echt nur Scheiße die kein Mensch braucht )

Das Problem kenn' ich. lächeln
Sch*** Lehrplan!! durchgeknallt

jb
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden Website dieses Benutzers besuchen
SpionAtom



Anmeldungsdatum: 10.01.2005
Beiträge: 395

BeitragVerfasst am: 30.03.2005, 12:37    Titel: Antworten mit Zitat

Nur mal am Rande: Geworfene Bälle und dergleichen gehören alle zum Gebiet der

B A L L I S T I K zwinkern
_________________
Inzwischen gehöre ich auch zu den BlitzBasicern. Also verzeiht mir, wenn mir mal ein LOCATE 100, 100 oder dergleichen rausrutscht.
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden E-Mail senden
Mecki
Igel


Anmeldungsdatum: 10.09.2004
Beiträge: 985
Wohnort: Niederbayern

BeitragVerfasst am: 30.03.2005, 12:38    Titel: Antworten mit Zitat

Ja, find ich auch blöd. Sinus lernt man erst Mitte der 10. bei uns am Gym hier in Bayern happy

Wir haben grad mal den Tangens durchgeknallt

Und dabei hab ich den scheiß schon mit 12 Jahren gebraucht

@SpionAtom: Wie recht du doch hast! grinsen
_________________
» Yodl.de: So sucht man gestern. verwundert
» Geld verdienen im Netz + ICQ.
» Firefox!
» 100€ zu gewinnen
» FreeBASIC.de
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden E-Mail senden Website dieses Benutzers besuchen AIM-Name Yahoo Messenger MSN Messenger
SpionAtom



Anmeldungsdatum: 10.01.2005
Beiträge: 395

BeitragVerfasst am: 30.03.2005, 12:47    Titel: Antworten mit Zitat

@code Ballistik hört sich doch auch viel besser an als "Schiefer Wurf" durchgeknallt
_________________
Inzwischen gehöre ich auch zu den BlitzBasicern. Also verzeiht mir, wenn mir mal ein LOCATE 100, 100 oder dergleichen rausrutscht.
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden E-Mail senden
dreael
Administrator


Anmeldungsdatum: 10.09.2004
Beiträge: 2529
Wohnort: Hofen SH (Schweiz)

BeitragVerfasst am: 30.03.2005, 20:43    Titel: Antworten mit Zitat

Für die Mathematik-Interessierten: Am besten Euch einmal

http://www.dreael.ch/Deutsch/Download/Billard-Simulation.html

anschauen, wobei Ihr dem Tisch eine Gravitation zuweist (Zeile "Bes=ax,ay"). Auf diese Weise lassen sich auch herunterfallende Bälle simulieren.
_________________
Teste die PC-Sicherheit mit www.sec-check.net
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden E-Mail senden Website dieses Benutzers besuchen
Dusky_Joe



Anmeldungsdatum: 07.01.2005
Beiträge: 1007
Wohnort: Regensburg/Oberpfalz

BeitragVerfasst am: 30.03.2005, 22:00    Titel: Antworten mit Zitat

Bei uns an der Realschule lernt man die Winkelfunktionen auch erst in der 10...
Nehmt ihr im Gymi eigentlich auch Die Theoreme dran? Unser Lehrer hat gemeint, das ma in der Richtung am Gymi überhaupt nix lernt *g*

Übrigens:
http://dhost.info/siteofkaos/HTMLData/WitzSeiten/Philosophie.html
=> Lest euch mal KAOS IV: PARADOXON UND WIDERSPRUCH (ziemlich weit unten) durch. Ihr werdet sehen, dass die Mathematik eine gefährliche Waffe ist, und aber eigentlich gar ned funktioniert *g*

Nur so, ganz am Rande *g*
_________________
fully biological degradable

Once, the big wave arrives, you've got two ways, you can go:
Either, you ride it, or you don't do.
But, if you don't ride, you'll never know wether you'd have gone wet.
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
Skilltronic



Anmeldungsdatum: 10.09.2004
Beiträge: 1148
Wohnort: Köln

BeitragVerfasst am: 02.04.2005, 14:29    Titel: Antworten mit Zitat

Hallo

Für so eine Simulation brauchst du eigentlich überhaupt keine Winkelfunktionen, obwohl es natürlich immer gut ist, sich damit auszukennen.

Der Sinn und Zweck einer Simulation besteht ja gerade darin, z.B. die Flugbahn eines geworfenen Gegenstandes nicht mit irgendwelchen Parabelgleichungen auszurechnen und dann etwas auf dem Bildschirm diese Bahn nachfahren zu lassen, sondern in bestimmten Zeitabständen alle wirkenden Kräfte zu addieren und daraus die neue Position des Gegenstandes zu bestimmen. Da wird auch schon die Grenze einer Simulation deutlich. Die Zeitabschnitte können nicht unendlich klein gemacht werden. Aber für deine Zwecke reicht es.

Mecki hatte ja schon angesprochen, dass der Trick eigentlich nur darin besteht, die Geschwindigkeit in eine x- und eine y-Komponente zu zerlegen. Dieses Programm zeichnet die Flugbahn eines geworfenen Balls. Du kannst ja mal mit den verschiedenen Konstanten rumspielen und schauen, was passiert. Die Reibungsfaktoren werden physikalisch nicht so ganz korrekt berechnet, aber das würde die Sache unheimlich verkomplizieren. So müsste z.B. noch die Masse des Gegenstands mit einberechnet werden etc.

Code:
SCREEN 12
CLS
t = .00005       'Zeiteinheit
lw = .999998     'Luftwiderstand
rr = .99995      'Rollreibung
sf = -.7         'Elastitzitaetsfaktor
g = 9.81         'Erdbeschleunigung
x = 0            'X-Position
y = 340          'Y-Position
vx = 80          'Geschwindigkeit in X-Richtung
vy = -90         'Geschwindigkeit in Y-Richtung

DO
 IF y < 479 THEN
 vx = vx * lw
 vy = vy + g * t
 ELSE
 vx = vx * rr
 END IF
 IF ABS(vx) < .0001 THEN vx = 0
 vy = vy * lw
 IF ABS(vy) < .0001 THEN vy = 0
 x = x + vx * t
 y = y + vy * t
 IF x < 0 THEN x = 0 - x: vx = vx * sf
 IF x > 639 THEN x = 1278 - x: vx = vx * sf
 IF y < 0 THEN y = 0 - y: vy = vy * sf
 IF y >= 479 THEN y = 958 - y: vy = vy * sf
 PSET (x, y)
LOOP WHILE vx <> 0 OR vy <> 0


Der Abwurfwinkel wird einfach durch das Verhältnis von vx zu vy bestimmt. SIN, COS und ATN bräuchtest du nur, wenn du z.B. unbedingt Abwurfwinkel = 45° oder so einstellen wolltest.

Gruss
Skilltronic
_________________
Elektronik und QB? www.skilltronics.de !
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden Website dieses Benutzers besuchen
Beiträge der letzten Zeit anzeigen:   
Neues Thema eröffnen   Neue Antwort erstellen    Das deutsche QBasic- und FreeBASIC-Forum Foren-Übersicht -> Allgemeine Fragen zu QBasic. Alle Zeiten sind GMT + 1 Stunde
Seite 1 von 1

 
Gehe zu:  
Du kannst keine Beiträge in dieses Forum schreiben.
Du kannst auf Beiträge in diesem Forum nicht antworten.
Du kannst deine Beiträge in diesem Forum nicht bearbeiten.
Du kannst deine Beiträge in diesem Forum nicht löschen.
Du kannst an Umfragen in diesem Forum nicht mitmachen.

 Impressum :: Datenschutz