Tidusss
Апрель 26, 2018 17:43:48
Пытаюсь сделать простейший поворот точки через матрицу поворота, вроде все правильно, но работает как-то произвольно, при каких-то значениях угла только 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()
VASKA_NENEGGR
Апрель 26, 2018 18:51:27
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()