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

Геометрия на плоскости   Найти похожие ветки 

 
ПсихЪ_копия   (2004-07-11 16:48) [0]

Что я не правильно делаю:

     dX := abs( Cos( 2*Angel )*step );
     if X > eX then
       X := X-dX
     else
       X := X+dX;

     dY := abs( Sin( Angel )*step );
     if Y > eY then
       Y := Y-dY
     else
       Y := Y+dY;
// Angel - угол в градусах
// X, Y - положение объекта
// eX, eY - конечные положения объекта
// step - шаг "по гипотенузе" до (eX;eY)
// dX, dY - смещение по X и Y соответственно за каждый проход


Вроде бы все тригонометрические правила соблюдены. Может нужно в радинанах угол писать, но тоже не помогает. Объект движется с непонятными мне dX и dY но в нужную сторону. Обычно вместо того, чтобы плавно идти прямо до точки (eX;eY) он движется быстрее к одной из координат, а затем в несколько раз медленнее движется по прямой к конечной точке.

Может я чего-то не учёл?


 
ПсихЪ_копия   (2004-07-11 16:50) [1]

Простите, код немного не тот - эксперименты мои... (: Вот:

    dX := abs( Cos( Angel )*step );
    if X > eX then
      X := X-dX
    else
      X := X+dX;

    dY := abs( Sin( Angel )*step );
    if Y > eY then
      Y := Y-dY
    else
      Y := Y+dY;



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

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



Память: 0.45 MB
Время: 0.023 c
1-1098463016
maximka
2004-10-22 20:36
2004.11.07
Сохранение данных в бинарный файл


3-1097488645
V l a d i m i r
2004-10-11 13:57
2004.11.07
Wise Install Master и BDE.


14-1098182123
Lingo
2004-10-19 14:35
2004.11.07
MSDN Download


8-1091943255
Navi
2004-08-08 09:34
2004.11.07
Нахождение точки отстоящей от точки.


1-1098420950
Fynjy1984
2004-10-22 08:55
2004.11.07
Выручайте




   Наверх