Мое приложение отображает длинное научное вертикально-прокручиваемое изображение (1024 x 99999999 ... px) в виде последовательности QPixmap
1024x128 блоков. Это позволяет мне прокручивать изображение с минимальной стоимостью процессора, выбирая необходимые блоки из таблицы: block_id = y_coord/128
. Кроме того, QPixmap
является предпочтительным «пиксельным контейнером» для быстрого вывода экрана.Картинка в реальном времени в Qt
Но теперь у меня есть поток новых данных, поступающих в приложение, и вам нужны новые данные, которые нужно добавить и отобразить в нижней части длинного изображения. Минимальная часть: 1024x1
(линия). Кроме того, я хотел бы как можно скорее отобразить каждую новую строку (близко к реальному времени). Каждая новая часть из 128 строк будет «упакована» на QPixmap
, но пока я не получу достаточно данных, я не могу построить целый блок.
Какой подход следует учитывать при отображении новых данных?
Это видео дает представление о том, «добавлении новых строк данных», за исключением того, в моем случае поток идет вверх: http://www.youtube.com/watch?v=Dy3zyQNK7jM
Я думаю, вы можете просто добавить новые данные в какую-нибудь временную pixmap и нарисовать ее внизу рисунка и нарисовать остальные так же, как вы его сейчас нарисовываете (возможно, с некоторыми изменениями). Когда вы получили 128 строк, просто отбросьте временные файлы pixmap и pack. –