| Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
| Форум программистов > Python: Разработка GUI > Tk.Canvas : 1000 двигающихся объектов. Too slow. |
| Автор: yeputons 10.7.2010, 15:35 | ||
| Проблема такова: мне требуется отобразить на Tkinter.Canvas очень много объектов (пусть даже 400). Объекты небольшие (закрашенные кружочки с радиусом 16 пикслей) и должны двигаться. Сейчас есть код, который в цикле for вызывает метод canv.coords(id, ...) для каждого объекта. Уже на 150 кружочках ЦП грузится на 30% (Celeron 1.8GGz). Если двигать не все, а 10 кружочков, то загрузка - 5-6%. FPS требуется >= 24 (т.е. realtime) Вопрос: как можно поднять производительность canvas.coords? Может, как-нибудь запретить перерисовку (на неё же всё тратится?) перед циклом и разрешить после? Код для тестирования такой:
|