Наши проекты:
Журнал · Discuz!ML · Wiki · DRKB · Помощь проекту |
||
ПРАВИЛА | FAQ | Помощь | Поиск | Участники | Календарь | Избранное | RSS |
[3.147.61.142] |
|
Сообщ.
#1
,
|
|
|
есть прямоугольник, к примеру, с координатами
x0=10,y0=10 - верхний левый угол xn=100, yn=80 - нижний правый порядок отрисовки по каждому пикселю (заполненная фигура); как повернуть прямоугольник вокруг его центра (ось направлена на нас) к примеру на 5 градусов, потом еще раз на 5, соответственно все его точки должны повернуться, но форма должна сохраниться. x+dx; y+dy; Аналитическую геометрию забыл на прочь. Какая матрица поворота нужна? |
Сообщ.
#2
,
|
|
|
x:=sqrt(x*x+y*y)cos(alfa)
y:=sqrt(x*x+y*y)sin(alfa) alfa - любой угол |
Сообщ.
#3
,
|
|
|
Пробовал 3-d графику?
поворот каждой точки (относительно OZ): {var x0,x1,x2,...:real;} x1:=x0*cos(0.05)+y0*sin(0.05); y1:=y0*cos(0.05)-x0*sin(0.05); z1:=z0; {где x0, y0, z0 - начальные координаты точки} x2:=x1+z1/2.55; y2:=y1+z1/2.55; {x2,y2 - конечные координаты точки} нарисовать пиксел(round(x2),round(y2)); Если относительно других осей (н-р OY), то чередуются вместо x и y -> x и z... |