Название: Как быстро рисовать на QGraphicsScene Отправлено: Sahsa от Сентябрь 21, 2015, 11:59 Ребята, нужно быстро нарисовать более 1.500.000 иногда и больше линий на QGraphicsScene.
Если их рисовать при помощи QGraphicsLineItem, то это происходит очень медленно. Может есть более быстрый способ или в патоки при помощи openMPI, но с библиотекой не знаком? И нужно чтобы данный код работал на всех платформах. Название: Re: Как быстро рисовать на QGraphicsScene Отправлено: Racheengel от Сентябрь 21, 2015, 17:57 попробуй QGraphicsPathItem
Название: Re: Как быстро рисовать на QGraphicsScene Отправлено: Racheengel от Сентябрь 21, 2015, 17:58 Т.к. отрисовка происходит всегда только в одном потоке, то распараллелить можно только вычисление этих самых линий.
Название: Re: Как быстро рисовать на QGraphicsScene Отправлено: Sahsa от Сентябрь 21, 2015, 22:01 Спасибо)
Название: Re: Как быстро рисовать на QGraphicsScene Отправлено: GreatSnake от Сентябрь 22, 2015, 10:48 Т.к. отрисовка происходит всегда только в одном потоке, то распараллелить можно только вычисление этих самых линий. Ну почему же, отрисовку можно делать тоже в отдельном потоке, например, в QImage.Другой вопрос насколько это применимо. Название: Re: Как быстро рисовать на QGraphicsScene Отправлено: Racheengel от Сентябрь 22, 2015, 11:06 Ну почему же, отрисовку можно делать тоже в отдельном потоке, например, в QImage. Другой вопрос насколько это применимо. Ну забуферизировать-то можно, но будет ли от этого толк... Название: Re: Как быстро рисовать на QGraphicsScene Отправлено: Sahsa от Сентябрь 22, 2015, 20:58 Ну почему же, отрисовку можно делать тоже в отдельном потоке, например, в QImage. Другой вопрос насколько это применимо. Ну забуферизировать-то можно, но будет ли от этого толк... QImage не подойдет, так как будет растр, а не вектор. там еще зум на его будет, дополнительные построения пользовательм и куча всячены. Нужна QGraphicsScene, лучшего не приходит в голову) Сижу и разбираюсь с патоками и как можно все упростить) Название: Re: Как быстро рисовать на QGraphicsScene Отправлено: Nidxogg от Сентябрь 23, 2015, 07:29 А если рисовать линии в методе drawBackground?
Название: Re: Как быстро рисовать на QGraphicsScene Отправлено: Igors от Сентябрь 23, 2015, 08:33 Ребята, нужно быстро нарисовать более 1.500.000 иногда и больше линий на QGraphicsScene. При таких объемах нужно "смотреть в сторону" GPU, т.е. OpenGL. Если их рисовать при помощи QGraphicsLineItem, то это происходит очень медленно. Может есть более быстрый способ или в патоки при помощи openMPI, но с библиотекой не знаком? И нужно чтобы данный код работал на всех платформах. Название: Re: Как быстро рисовать на QGraphicsScene Отправлено: Sahsa от Сентябрь 28, 2015, 21:57 Ребята, нужно быстро нарисовать более 1.500.000 иногда и больше линий на QGraphicsScene. При таких объемах нужно "смотреть в сторону" GPU, т.е. OpenGL. Если их рисовать при помощи QGraphicsLineItem, то это происходит очень медленно. Может есть более быстрый способ или в патоки при помощи openMPI, но с библиотекой не знаком? И нужно чтобы данный код работал на всех платформах. А можно простенький пример рисование линии на стене при помощи OpenGL?)) Название: Re: Как быстро рисовать на QGraphicsScene Отправлено: Igors от Сентябрь 29, 2015, 04:57 А можно простенький пример рисование линии на стене при помощи OpenGL?)) Наверное "на сцене" - нет, на сцене оно рисоваться не будет, это не QGraphicsItem, при таких объемах от него придется отказаться. А так выберите пример OpenGL идущий с Qt и воткните в него glDrawLines. |