007
17.06.2003, 19:06 Uhr
Windalf
Der wo fast so viele Posts wie FloSoft... (Operator)
|
wie was komplex. also die gleichung die ich dir hingeschrieben habe lernt man in Physik in der 11. Klasse (was ist daran so komplex)
was du haben willst ist doch der ort in abhängigkeit von der zeit und genau das machen diese gleichungen. Wie du das mit dem figur malen usw., dazu kann ich dir nicht so viel sagen. Mit solchen spielereien habe ich mich noch nicht vergnügt. Das hängt auch von der graphischen Oberfläche ab die du verwendest.
Um noch mal auf das angeblich komplizierte was ich geschrieben habe zurückzukommen
Hier deklariere ich nur variablen das sollte ja hoffentlich klar sein
C++: |
double to,t,x,z, vo=6,vz=10; //vz von 10 bedeutet die figur rennt verdammt schnell 36km/h
|
wenn w gedrückt wurde, du musst ja irgendwie ne abfrage machen dann initialisiere ich nur die variablen mit ein paar werten wie die funktion die die zeit holt nun heisst spielt keine rolle ich habe einfach mal time() hingeschrieben, dafür gibt es massenweise funktionen die du verwenden könntest
C++: |
//wenn w gedrückt to=time(); x=z=0;
|
und hier wird der ort deiner figur in abhängigkeit von der zeit errechnet. Initialisiert habe ich x(die bewegung in die höhe beim sprung) und z (die bewegung in laufrichtung)
C++: |
while(x>=0){ //figur mit x und z-position malen hier musst du halt irgendwie eine routine aufrufen die deine figur in abhängigkeit von x und z auf dem desktop malt Sleep(40); //dann wartest du 40 ms oder wie lange auch immer t=time()-to; //holst dir die aktuelle zeit x=6000*t - 5000000*t*t; //rechest den ort in abhängigkeit von der zeit aus z=vz*t; }
|
das ganze wird so lange gemacht bis x<0 ist, wie bruder leif dir schon erklärt hat, denn dann ist die figur wieder gelandet und du musst nur noch die laufrichtung beachten
Gruss Heiko -- ...fleißig wie zwei Weißbrote |