Как рисовать фигуры с высокой производительностью на QML - PullRequest
0 голосов
/ 29 января 2019

Я хочу разработать настольное приложение с QML.Приложение предоставляет некоторые функции рисования, такие как рисование линий, прямоугольников, эллипсов и так далее.Я считаю, что есть два способа реализации:

  1. Наследование от QQuickPaintedItem и переопределение void Quick::paint(QPainter *painter).
  2. Рисование фигур в Canvas.onPaint напрямую.

Но я считаю, что обе реализации не так быстры, как QWidget::paintEvent().Из документа Qt Quick Scene Graph говорится, что рендеринг QQuickPaintedItem - это двухэтапная операция, а прямое использование API графа сцены API всегда значительно быстрее.Так как же использовать API графа сцены для реализации этого?Или я должен использовать QWidget, но не QML.Вот пример кода и эффект производительности .

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...