Russian Qt Forum

Qt => Мультимедиа => Тема начата: maydyk от Август 27, 2009, 19:26



Название: Каков предельный размер виджета или пиксмапы?
Отправлено: maydyk от Август 27, 2009, 19:26
Привет! Требуется отображать большое изображение в прокручиваемой области. Я делаю как в примере Image Viewer. Однако я столкнулся с тем что когда размер изображения или размер виджета (в моём случае они совпадают) достигает некоторого предела функции масштабирования и отрисовки работают некорректно.

Если в примере Image View отключить проверку масштаба (файл ImageViewer.cpp:266)
Код:
//    zoomInAct->setEnabled(scaleFactor < 3.0);
//    zoomOutAct->setEnabled(scaleFactor > 0.333);

То при достижении изображением размера 17462 х 23283 пикселей отображается белое поле.
Интересно, это предельный размер отображаемого виджета или особенности интерполяции?
Хотелось-бы знать чем вызвано данное ограничение и как программно определить предельную величину?


Название: Re: Каков предельный размер виджета или пиксмапы?
Отправлено: Rcus от Август 27, 2009, 19:32
http://qt.nokia.com/doc/4.5/qpainter.html#limitations


Название: Re: Каков предельный размер виджета или пиксмапы?
Отправлено: maydyk от Август 27, 2009, 22:01
http://qt.nokia.com/doc/4.5/qpainter.html#limitations

Спасибо, но там написано про 2^15, а это "любимое" число 32768. У меня-же отрисовка ломается при в два раза меньших размерах изображения.


Название: Re: Каков предельный размер виджета или пиксмапы?
Отправлено: Alex Custov от Август 31, 2009, 20:06
изображение не помещается в видеопамять


Название: Re: Каков предельный размер виджета или пиксмапы?
Отправлено: SABROG от Сентябрь 01, 2009, 12:00
В ньюсгруппе я видел ответ троллей, что надо использовать tile-based алгоритмы. Т.е. большую картинку формировать из мелких плиточек.


Название: Re: Каков предельный размер виджета или пиксмапы?
Отправлено: maydyk от Сентябрь 01, 2009, 15:36
изображение не помещается в видеопамять
А как определить предельный размер изображения которое будет помещаться в видеопамять?


Название: Re: Каков предельный размер виджета или пиксмапы?
Отправлено: Alex Custov от Сентябрь 01, 2009, 17:47
изображение не помещается в видеопамять
А как определить предельный размер изображения которое будет помещаться в видеопамять?

максимальные WxH = ((размер свободной видеопамяти на видеокарте)+(размер свободного ОЗУ))/(бит на пиксель). Как-то так.


Название: Re: Каков предельный размер виджета или пиксмапы?
Отправлено: spectre71 от Сентябрь 03, 2009, 19:40
А как определить предельный размер изображения которое будет помещаться в видеопамять?

А зачем это надо?!
Рисуй(выводи) изображение по размеру видимой области, и никаких проблем не будет.