Size: a a a

Хирьянов Т.Ф., Практика программирования на Python 3 (2019)

2020 August 15

m

mr.slavik in Хирьянов Т.Ф., Практика программирования на Python 3 (2019)
Yury
#вопрос подскажите как можно повернуть овал из библиотеки graph
полярные координаты
источник

Y

Yury in Хирьянов Т.Ф., Практика программирования на Python 3 (2019)
Макс
Покажи код как эти нарисовал
Эти не я нарисовал. Они как раз таки повёрнуты чуть-чуть. Это часть картинки с задания 2 вот этого урока http://cs.mipt.ru/python/lessons/lab3.html
источник

Y

Yury in Хирьянов Т.Ф., Практика программирования на Python 3 (2019)
mr.slavik
полярные координаты
Не очень понял. Имеется ввиду то, что можно к функции oval(x1, y1, x2,y2) библиотеки graph.py как-то применить полярные координаты или через изменение координат x, y для функции lineTo(x, y)
источник

m

mr.slavik in Хирьянов Т.Ф., Практика программирования на Python 3 (2019)
ну вот в этом и состоит задача
источник

m

mr.slavik in Хирьянов Т.Ф., Практика программирования на Python 3 (2019)
придумать
источник

Y

Yury in Хирьянов Т.Ф., Практика программирования на Python 3 (2019)
Ок, спасибо
источник

OM

Oleg Makarikhin in Хирьянов Т.Ф., Практика программирования на Python 3 (2019)
Yury
Не очень понял. Имеется ввиду то, что можно к функции oval(x1, y1, x2,y2) библиотеки graph.py как-то применить полярные координаты или через изменение координат x, y для функции lineTo(x, y)
поворачивать можно уже имеющийся список координат с помощью преобразования https://ru.wikipedia.org/wiki/Углы_Эйлера (только взять случай с двухмерным поворотом)
в полярных координатах можно самостоятельно нарисовать эллипс как список координат соединеных линиями, причем угол поворота можно очень просто указать, как сдвиг фазы.
источник

Y

Yury in Хирьянов Т.Ф., Практика программирования на Python 3 (2019)
Oleg Makarikhin
поворачивать можно уже имеющийся список координат с помощью преобразования https://ru.wikipedia.org/wiki/Углы_Эйлера (только взять случай с двухмерным поворотом)
в полярных координатах можно самостоятельно нарисовать эллипс как список координат соединеных линиями, причем угол поворота можно очень просто указать, как сдвиг фазы.
👍🏻 спасибо, попробую)
источник

OM

Oleg Makarikhin in Хирьянов Т.Ф., Практика программирования на Python 3 (2019)
Yury
👍🏻 спасибо, попробую)
реализация нужна? а то у меня без поворота где-то была, сейчас и поворот добавлю.
источник

Y

Yury in Хирьянов Т.Ф., Практика программирования на Python 3 (2019)
Oleg Makarikhin
реализация нужна? а то у меня без поворота где-то была, сейчас и поворот добавлю.
Было бы здорово
источник

OM

Oleg Makarikhin in Хирьянов Т.Ф., Практика программирования на Python 3 (2019)
Yury
Было бы здорово
источник

Y

Yury in Хирьянов Т.Ф., Практика программирования на Python 3 (2019)
Спасибо большое!
источник

OM

Oleg Makarikhin in Хирьянов Т.Ф., Практика программирования на Python 3 (2019)
нет, как сдвиг угла в полярных координатах, это неправильное представление. всётаки матрицу поворота надо реализовывать
источник

OM

Oleg Makarikhin in Хирьянов Т.Ф., Практика программирования на Python 3 (2019)
Yury
Спасибо большое!
источник

Y

Yury in Хирьянов Т.Ф., Практика программирования на Python 3 (2019)
Да это то, что нужно,  проблема решена)
источник

O

Oleksii in Хирьянов Т.Ф., Практика программирования на Python 3 (2019)
Всем привет! Вопрос по лабораторной "Поймай шарик". Почему у меня подсчет очков действует только на один из шариков?
https://pastebin.com/Yak5cDsk
источник

OM

Oleg Makarikhin in Хирьянов Т.Ф., Практика программирования на Python 3 (2019)
Oleksii
Всем привет! Вопрос по лабораторной "Поймай шарик". Почему у меня подсчет очков действует только на один из шариков?
https://pastebin.com/Yak5cDsk
def new_score(event):
   global global_score
   goal = ((event.x - x) 2 + (event.y - y) 2) ** 0.5

goal вычисляется только один раз на клик. проверяется только для какого-то конкретнго x,y и R.
а чтобы проверялось для всех шариков, надо получить список шариков, итерироваться по ним, и у каждого узнавать его x,y,R и проверять.
источник

OM

Oleg Makarikhin in Хирьянов Т.Ф., Практика программирования на Python 3 (2019)
в нынешней программе у тебя есть только глобальные ball1, ball2, можно проитерироваться только по ним, а в более общем случае - держать список шариков в каком-то глобальном списке или синглтоне, и итерироваться по нему
источник

O

Oleksii in Хирьянов Т.Ф., Практика программирования на Python 3 (2019)
Oleg Makarikhin
в нынешней программе у тебя есть только глобальные ball1, ball2, можно проитерироваться только по ним, а в более общем случае - держать список шариков в каком-то глобальном списке или синглтоне, и итерироваться по нему
Круто... Когда читаю правильное решение, то все понимаю, почему так происходит и что сделал неправильно. Когда полдня сижу сам и ищу в этой функции new_score() ошибку, думаю: "Бл*, да все же правильно!.."))
источник

OM

Oleg Makarikhin in Хирьянов Т.Ф., Практика программирования на Python 3 (2019)
вот, тогда получается глобальные x,y,R не нужны, а из new_score()  и так есть доступ к ball1, ball2 и их свойств (x,y,R).
источник