Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Delphi программирование > Общие вопросы Delphi
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 10.05.2009, 22:47   #11
Dj_smart
Капсула от спама
Форумчанин
 
Аватар для Dj_smart
 
Регистрация: 04.03.2008
Сообщений: 779
По умолчанию

Цитата:
чилса равные степени двойки... Почему-то...
Это чтобы какбы достичь максимум возможностей числа а не заставлять пустовать отдельные биты. Да и на многих движках такое ограничение.
Цитата:
Угол поворота относительно чего? Начала координат?
Это роли как таковой не играло - из относительной можно сделать абсолютную
Если данный ответ не столь конкретен, как Вы желаете его увидеть, возможно необходимо поразмыслить, стоит ли вопрос того, чтобы о нём спрашивать на форуме?
CncFiles.ru - бесплатный файловый хостинг
Dj_smart вне форума Ответить с цитированием
Старый 10.05.2009, 23:26   #12
DomiNick
Студент, не
Старожил
 
Аватар для DomiNick
 
Регистрация: 29.01.2009
Сообщений: 2,067
Лампочка

Нашёл наконец...

Вот как я делал в одной из старых своих программ:
Код:
// Есть координаты двух точек: (x1,y1) и (x2,y2)

L:=SQRT((x2-x1)*(x2-x1)+(y2-y1)*(y2-y1)); // длина отрезка между двумя этими точками
If L<>0 Then // если длина не нулевая (точки не совпадают)
      If y2<=y1 Then
            ang:=-ArcCos((x2-x1)/L)
      Else
            ang:=ArcCos((x2-x1)/L)
Else
      Begin
      ShowMessage('Точки совпадают.');
      Exit;
      End;
ShowMessage('Угол равен  '+IntToStr(Round(ang/Pi*180))+'  градусов');
I am the First of Cyber Evolution...
I am the First to Program your Future...
DomiNick вне форума Ответить с цитированием
Старый 12.05.2009, 05:09   #13
FIRE_W
Новичок
Джуниор
 
Регистрация: 12.05.2009
Сообщений: 1
По умолчанию

Код:
function get_angle(x1,y1,x2,y2:single):single;
var dx,dy:single;
begin
dx:=x1-x2;
dy:=y1-y2;
if dy=0 then dy:=nan;{1.5 x 10^-45)}
if dy<0 then
   get_angle:=arctan(dx /dy )*180/pi+180 else
   if dy>=0 then
   get_angle:=arctan(dx /dy )*180/pi;
угол зависит от направления по Y
end;

Последний раз редактировалось Stilet; 12.05.2009 в 13:14.
FIRE_W вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Поворот буквы на указанный угол delphin100 Общие вопросы Delphi 1 02.06.2008 16:28
Как завершить процесс, зная его имя Никки Win Api 6 14.01.2008 14:04
как узнать ip адрес зная mac адрес Roman Работа с сетью в Delphi 9 25.06.2007 12:39
КАК поместить ИКОНКУ программы в правый нижний угол панели(там где пуск)??? micaell Общие вопросы Delphi 5 21.02.2007 19:58
Угол по тангенсу AVer Общие вопросы Delphi 9 01.02.2007 12:47