Главная страница
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.018 c
2-1197379946
alikon1
2007-12-11 16:32
2008.01.13
BDE Query


15-1196855705
No_Dead
2007-12-05 14:55
2008.01.13
&amp;laquo;Программистская депрессия&amp;raquo;


2-1197821972
malyar
2007-12-16 19:19
2008.01.13
использование TMemo.Lies.Objects


15-1197196071
Kostafey
2007-12-09 13:27
2008.01.13
С днем рождения ! 9 декабря


11-1182424519
LazyBob
2007-06-21 15:15
2008.01.13
Некорректный шрифт на KolGroupBox