Вниз
Скачать: CL | DM;

ускорение свободного падения   Найти похожие ветки 

 
aka ©   (2015-03-30 10:24) [0]

const
 g = 9.8

procedure MTimer(uTimerID, uMessage: UINT; dwUser, dw1, dw2: DWORD); stdcall;
begin
 z := z + 0.001;
 Form1.Button1.Top := Form1.Button1.Top + round(g * z);
end;

procedure TForm1.FormCreate(Sender: TObject);
begin
 MMTimer := timeSetEvent(1,1,@MTimer,100,TIME_PERIODIC);
 z := 0;
end;


Чего оно рывками деhгается?


 
RWolf ©   (2015-03-30 10:34) [1]

Потому, что вертикальная координата — вещественное число, а ты ей даёшь целые приращения.


 
aka ©   (2015-03-30 10:38) [2]


> RWolf ©   (30.03.15 10:34) [1]

ну это я уже понял.
можно ли сгладить этот эффект?


 
RWolf ©   (2015-03-30 10:40) [3]

Держать модель в вещественных числах, а округлять только перед переводом в экранные координаты.


 
aka ©   (2015-03-30 11:37) [4]


> Держать модель в вещественных числах

z := z + 0.001;

> а округлять только перед переводом в экранные координаты.

Form1.Button1.Top := Form1.Button1.Top + round(g * z);


 
RWolf ©   (2015-03-30 11:45) [5]

а надо так:

y: double; // координата

y := y + g * z;
Form1.Button1.Top := round(y);


 
Inovet ©   (2015-03-30 13:21) [6]

Это у тебя скорость, вообще-то. Тебе, видимо, надо пространственную координату g*z^2/2.



Страницы: 1 вся ветка

Скачать: CL | DM;



Память: 0.46 MB
Время: 0.019 c
2-1418843283
AlexeyTG
2014-12-17 22:08
2017.01.15
Запуск двух программ с ожиданием завершения


2-1432209907
Pavelnk
2015-05-21 15:05
2017.01.15
Запись в ini файл


2-1419963322
AlexeyTG
2014-12-30 21:15
2017.01.15
Чтение из HKEY_LOCAL_MACHINE правильно ли реализовано


2-1431020136
Zheksonz
2015-05-07 20:35
2017.01.15
Можно ли в поля Blob Graphic загружать jpg файлы?


2-1427929641
Drowsy
2015-04-02 02:07
2017.01.15
Как определить, установлены ли обновления RTL2, RTL3 на Дельфи 6?




   Наверх