Уведомления

Группа в Telegram: @pythonsu

#1 Апрель 26, 2018 17:43:48

Tidusss
Зарегистрирован: 2018-04-17
Сообщения: 8
Репутация: +  0  -
Профиль   Отправить e-mail  

программка с матрицей поворота

Пытаюсь сделать простейший поворот точки через матрицу поворота, вроде все правильно, но работает как-то произвольно, при каких-то значениях угла только 1 раз, при других в разные стороны и т.д.
Ну в общем помогите найти ошибку пожалуйста.

from Tkinter import *
from math import *

root=Tk()
root.geometry('750x700')

c = Canvas(root,width=700,height=700,bg="white")
c.place(x=0, y=0)

x0 = 350
y0 = 350

x1 = 350
y1 = 350
x2 = 350
y2 = 10

line = c.create_line(x1,y1,x2,y2, width=3)

a = pi/4

def pov(event):
global x1
global x2
global y1
global y2
global a

r3 = (x2-x0)
r4 = (y2-y0)


x2 = r3*cos(a) + (r4)*sin(a)
y2 = r3*sin(a) + (r4)*cos(a)

c.coords(line,x1,y1,x2,y2)



button1 = Button(root',width=3,height=3, font=10)
button1.place(x = 720, y = 300)
button1.bind("<Button-1>",pov)


root.mainloop()

Офлайн

#2 Апрель 26, 2018 18:51:27

VASKA_NENEGGR
Зарегистрирован: 2018-04-26
Сообщения: 7
Репутация: +  0  -
Профиль   Отправить e-mail  

программка с матрицей поворота

from Tkinter import *
from math import *

root=Tk()
root.geometry('750x700')

c = Canvas(root,width=700,height=700,bg=“white”)
c.place(x=0, y=0)

x0 = 350
y0 = 350

x1 = 350
y1 = 350
x2 = 350
y2 = 10

line = c.create_line(x1,y1,x2,y2, width=3)

a = pi/4

def pov(event):
global x1
global x2
global y1
global y2
global a

r3 = (x2-x0)
r4 = (y2-y0)


x2 = r3*cos(a) + (r4)*sin(a)
y2 = r3*sin(a) + (r4)*cos(a)

c.coords(line,x1,y1,x2,y2)



button1 = Button(root,width=3,height=3, font=10)
button1.place(x = 720, y = 300)
button1.bind(“<Button-1>”,pov)


root.mainloop()

Офлайн

Board footer

Модераторировать

Powered by DjangoBB

Lo-Fi Version