Главная » 2015 » Сентябрь » 14 » Тесты граф ядра Python2.4 + PseudoID()
10:15
Тесты граф ядра Python2.4 + PseudoID()
Для тех кто работал с графикой Питон. Тестики от меня.Когда от тебя требуют в короткое время создань массив объектов кол-вом 5000(линий)+1000(дуг) то ты сталкиваешься с дилемой - Скорость? или Качество?Тесты проводил на Атлон 2000.Вот мои тесты, которые я недавно провел, перебирая все доступные типы графических контекстов (DC)и их комбинации с друг другом на колличество 10000 объектов типа квадрат(DrawRectangle()) и отдельно 5000 линий(DrawLine()) + 1000 дуг(DrawArc()), я их закрашивал фиолетовым цветом wx.Pen():1) wx.PaintDC() - это самый медленный и самый некачественный двиг. Годится только для тренировки рисования как такового. 8.7 секунды.2) wx.ClientDC() + wx.BufferingDC()- графло + буферизация, для малого типа объектов годится. Не более 200-400.На моем объеме он выдал результат 4.1 сек, Скорость средняя, качество средняя.3) Тоже самое но с двойной буферизацией - 2.8, качество среднее. Нужный объем перерабатывает нормально.Единственное все выше не поддерживает функции работы с объектами после их создания на более высоком уровне.Для этого приходится сильно заморачиваться.4) wx.PseudoDC() - 8 секунд. Качество отличное. Скорость как видите страдает. Позволяет работу с объектами, что вы можете созерцать в Python DEMO.5) wx.PseudoDC() + буферизация - 4.5 сек. Тоже что и выше.6) wx.PseudoDC() + буферизация + PseudoID()...ООО..Я над этим долго морочил голову но у меня получилось.Скорость рисования и создания матрицы(битмап) - 0.1 сек. А PseudoID() применяем после рисования, что позволяет нам работать с объектами на высшем уровне без потери качества.
Просмотров: 316 | Добавил: admin | Рейтинг: 0.0/0
Всего комментариев: 0
avatar