Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2004.11.07;
Скачать: 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 вся ветка

Текущий архив: 2004.11.07;
Скачать: CL | DM;

Наверх




Память: 0.46 MB
Время: 0.05 c
14-1098353462
Pentium133
2004-10-21 14:11
2004.11.07
Пропал ObjectInspector


14-1097830210
AlexG
2004-10-15 12:50
2004.11.07
Мультизагрузка, WinXP и Win2000...


3-1097273330
Igor_
2004-10-09 02:08
2004.11.07
БД+DLL


1-1098280050
zorik
2004-10-20 17:47
2004.11.07
Maximized window


1-1098470983
Mapa3M
2004-10-22 22:49
2004.11.07
Не дать пользователю закрыть окно