Главная страница
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.48 MB
Время: 0.022 c
3-1189165817
keymaster
2007-09-07 15:50
2008.01.13
Как получить из oracle refcursor (ADO)


15-1197027836
@!!ex
2007-12-07 14:43
2008.01.13
Как сделать чтобы ALT+Ctrl+Del переводил в режим выбора действия?


3-1189069315
Sonia
2007-09-06 13:01
2008.01.13
ORA-02064: distributed operation not supported


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


2-1197623875
F@T@L_Err0r
2007-12-14 12:17
2008.01.13
Mail Send