Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2008.01.13;
Скачать: CL | DM;

Вниз

Фиксация углов куба.   Найти похожие ветки 

 
@!!ex ©   (2007-12-11 14:38) [0]

Есть куб.
Он по оси Z повернут на какой то угол. Нужно найти ближайший к этому углу угол, кратный 90 градусам.
углы от 0 до 360.
Делаю поворот вот так:
     if (Round(Angle) mod 90)<45 then begin
       Angle:=Angle-DelayTime/AnimationTime*45;
       if not ((Round(Angle) mod 90)<45) then
         NeedFixAngle:=false;
     end
     else begin
       Angle:=Angle+DelayTime/AnimationTime*45;
       if not ((Round(Angle) mod 90)>45) then
         NeedFixAngle:=false;
     end;

а оно не работает, :(


 
@!!ex ©   (2007-12-11 14:41) [1]

вернее оно работает, но только если угол 45<X<315


 
Sonia ©   (2007-12-11 14:46) [2]


> только если угол 45<X<315

А откуда именно такие данные?


 
palva ©   (2007-12-11 14:48) [3]

n угол в градусах. Округляем так:
Round(n/90)*90


 
MBo ©   (2007-12-11 14:54) [4]

((Angle + 45) div 90) * 90;


 
palva ©   (2007-12-12 09:55) [5]

uses Math;
((Angle + Sign(Angle) * 45) div 90) * 90;


 
@!!ex ©   (2007-12-12 10:01) [6]

Уже все решил. Вчера еще.



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

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

Наверх




Память: 0.47 MB
Время: 0.04 c
2-1197902556
авыф
2007-12-17 17:42
2008.01.13
план выполнения запроса oracle


15-1197193611
Kerk
2007-12-09 12:46
2008.01.13
Посмотри вокруг (Розыч, блин, не трожь, выходной же :-))


2-1197574861
..::KraN::..
2007-12-13 22:41
2008.01.13
Hot key в TRichEdit.


15-1196978522
TusRoorse
2007-12-07 01:02
2008.01.13
Нужен срочно ремонт!


2-1197824136
Stepper
2007-12-16 19:55
2008.01.13
AnimateWindow(Handle, 500, AW_HIDE or AW_BLEND);