Similar presentations:
Ромбическая изометрия. Определение координат
1.
2.
Определение координат на ромбической сеткеY
(0;4)
(0;3)
(0;2)
(0;1)
(0;0)
(Xm,Ym)
O
(1;0)
(2;0)
(3;0)
(4;0)
X
3.
Определение координат на ромбической сеткеY
Yx
(Xm,Ym)
(0;0)
O
Yy
X
4.
Определение координат на ромбической сеткеY
Yx
ty
(Xm,Ym)
(0;0)
O
Yy
tx
X
5.
Определение координат на ромбической сеткеY
Yx
ty
(Xm,Ym)
(0;0)
O
L
Yy
tx
X
6.
Определение координат на ромбической сеткеY
Yx
ty
(Xm,Ym)
(0;0)
O
L
Yy
tx
X
Точки пересечения с осями координат:
Yx
Yy
OY
OX
tx
Расстояние Otx
Расстояние Oty
ty
Ro(Ot) / L
(Rx,Ry)
7.
Преобразования координат на ромбической сеткеA - половина длины наименьшей диагонали ромба
(X0,Y0) - координаты отступа начала координат ромбической сетки
Cx0, Cy0 - координаты нулевого ромба
Cx0 = X0 + 2A
Cy0 = Y0
X,Y - координаты ромбов в ромбической системе координат (Rx, Ry)
Cx,Cy – координаты центров ромбов в пределах Picturebox (пиксели)
Cx(X,Y) = Сx0 + 2А*X + 2А*Y
Cy(X,Y) = Сy0 + А*X - А*Y
Xm,Ym - координаты курсора в Picturebox (пиксели)
(Rx, Ry): (Вывод формулы)
Y = K*X + b - уравнение прямой. т. (X0,Y0)
Ось OY: Y = K1*X + Y0 - K1*X0
Ось OX: Y = k2*X + Y0 - K2*X0
Прямая Yx: Y = K1*X + Ym - K1*Xm
Прямая Yy: Y = K2*X + Ym - K2*Xm
Пересечение: Ось OY - Yy , Ось OX - Yx
K1*X + Y0 - K1*X0 = K2*X + Ym - K2*Xm
X = (Ym - K2*Xm - Y0 + K1*X0)/(K1 - K2)
b = Y0 – K*X0
b = Ym – K*Xm
Y
Yx
ty
(Xm,Ym)
(0;0)
O
L
Yy
tx
X
8.
(Rx, Ry): (Вывод формулы) (Продолжение)Y - получаем подстановкой
(X,Y) точки пересечения прямой от курсора с осью координат
Ro(Ot) =
R =
( X 0 X ) 2 (Y 0 Y ) 2
Ro(Ot) / L
L A 5
X=Rx, Y=Ry:
Центры ромбов:
Cx(X,Y) = Сx0 + 2А*X + 2А*Y
Cy(X,Y) = Сy0 + А*X - А*Y
Y
(Rx, Ry)
Yx
ty
Угол ромба:
(X0,Y0)
(Xm,Ym)
(0;0)
O
LeftCX = Cx - 2A
TopCY = Cy - A
L
Ro
Yy
tx
X