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

Вниз

Как повернуть фигуру (пересчитать неск. вершин) на опр. угол?   Найти похожие ветки 

 
Yuraz ©   (2003-07-15 14:08) [0]

Приветствую всех! Такой вопрос, рисую на canvas фигуру, например треугольник, необходимо, по событию создать новый, но со смещением, например в 45 градусов. Т.е. точнее сказать, как пересчитать координаты вершин, относительно, или центра, или любой из вершин.
Вершины например:
100,100
150,120
150,200
100,100


 
MBo ©   (2003-07-15 14:13) [1]

xnew:=xc+(xold-xc)*cosFi+(yold-yc)*sinFi
ynew:=yc-(xold-xc)*sinFi+(yold-yc)*cosFi


 
Yuraz ©   (2003-07-15 14:49) [2]

MBo спасибо!


 
Yuraz ©   (2003-07-15 14:59) [3]

Не могу разобраться, Fi это угол на который поворачиваем, а что такое C?


 
MBo ©   (2003-07-15 15:11) [4]

центр вращения.


 
Yuraz ©   (2003-07-15 15:19) [5]

А, теперь всё, сразу не понял, ещё раз MBO большущее спасибо !


 
Yuraz ©   (2003-07-15 16:24) [6]

Оказывается, что ещё не всё понял :( осталось доделать мелочь, Fi это угол, но в каком измерении? У меня фигура делает полный круг, т.е. 360град. за Fi:=6.283;
По какому алгоритму в Fi сразу вбивать градусы?


 
MBo ©   (2003-07-15 16:37) [7]

Sin и Cos принимают радианы, значит, переводи градусы в них DegToRad


 
Yuraz ©   (2003-07-15 17:02) [8]

Извиняюсь за свою не грамотность в этом вопросе, всё сделал благодаря всезнающему MBo!!!



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

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

Наверх




Память: 0.48 MB
Время: 0.014 c
3-91693
hirlik
2003-07-07 09:06
2003.07.28
Decision Cube (экспорт, отчет, печать)


1-91734
Прохожий
2003-07-15 12:45
2003.07.28
Иконки


1-91730
Leviathan
2003-07-15 10:56
2003.07.28
Length для двумерного массива


3-91672
АТ
2003-06-28 02:10
2003.07.28
Несовместимость типов Float в InterBase и типа Real в Delphi


3-91632
Andreyki
2003-07-04 14:45
2003.07.28
База данных Access на Dtlphi