Лучший холст для рисования в wxPython?
Я должен нарисовать график элементов, составляющих топологическую модель физической сети. Там будут узлы и дуги, и последние могут быть однонаправленными или двунаправленными.
Я хотел бы захватить события щелчка для узлов и арок (чтобы выбрать элемент и показать его свойства где-нибудь), а также события перетаскивания для узлов (чтобы переместить их вокруг) и арок (для соединения или отключения элементов).
Я провел некоторые исследования и сузил альтернативы до OGL (Object Graphics Library) и FloatCanvas. Я не хотел бы идти к DrawingContext, но он не отбрасывается при необходимости.
Какой вариант холста вы бы выбрали?
2 ответа
Я пробовал FloatCanvas, хотя было много работы, чтобы все заработало. Мне удалось пройти через взаимодействие с мышью, такие как подключение, движение, автоматическое переподключение в случае движения и т. Д.
FloatCanvas также довольно хорош с точки зрения производительности и визуальных результатов. Сглаживание ( 1) ( 2) также возможно улучшить их при необходимости.
Кажется, что OGL не обновляется, и в целом FloatCanvas выглядит более современно. Я не очень хорошо знаю эти два варианта.
Кажется, что захват событий легче с FloatCanvas. Я бы попробовал использовать его до OGL.