мне нехватает формулы полета в зависимости от начальной скорости и угла также должно учитоваться сопротвления воздуха и ветра,желательно в tp7 или delphi
Bokul
5.11.2006 0:06
Какой формы снаряд? Вот тут интересно описано физика, но без формул.
mamont001
5.11.2006 1:02
в worms играл?тут что-то типа снаряда базуки из worms world party
Bokul
5.11.2006 2:37
Вот, что у меня выйшло для материальной точки:
{$N+} {$E+} Uses Graph,crt;
function rad(q:real):real; begin rad:=q/360*2*pi; end;
h=20; {начальная высота снаряда} x0=-40; {начальное положения снаряда по осе Х} v0=200; {начальная скорость снаряда} L=40; {начальный угол к горизонту снаряда} k=0.5; {коэффициент сопротивления воздуха} g=9.8; {сила тяжести} a=50; {сила ветра}
Var grDriver : Integer; grMode : Integer;
x,y,t:real;{extended;} i:integer; Begin grDriver:=Detect; InitGraph(grDriver, grMode, ''); for i:=OXYminX to OXYmaxX do putpixel(zcrtX+i,zcrty,colorOXY); for i:=OXYminY to OXYmaxY do putpixel(zcrtX,zcrty-i,colorOXY);
t:=lgr; while y>=0 do begin if k<>-1 then begin y:=h+ (v0*sin(rad(l))*t)/ (k+1)- (g*t*t*t)/ 2*(k+1); x:=x0+ (v0*cos(rad(l))*t)/ (k+1)- (a*t*t*t)/ 2*(k+1); putpixel(zcrtx+trunc(x*mtrX),zcrty-trunc(y*mtrY),colorg) delay(1); end; t:=t+shag; end; writeln(t:0:2); readkey; closegraph; end.
mamont001, не спеши, я сомневаюсь, что моя в моей проге правильо расчитывается положения снаряда в зависимости от времени. Надо еще подумать. Хотя костяк у тебя есть. И даже графики выходят правдоподобными, но формулы все-таки не правильны.