Russian Qt Forum
Сентябрь 21, 2024, 14:53 *
Добро пожаловать, Гость. Пожалуйста, войдите или зарегистрируйтесь.
Вам не пришло письмо с кодом активации?

Войти
 
  Начало   Форум  WIKI (Вики)FAQ Помощь Поиск Войти Регистрация  

Страниц: [1]   Вниз
  Печать  
Автор Тема: Каков предельный размер виджета или пиксмапы?  (Прочитано 5917 раз)
maydyk
Гость
« : Август 27, 2009, 19:26 »

Привет! Требуется отображать большое изображение в прокручиваемой области. Я делаю как в примере Image Viewer. Однако я столкнулся с тем что когда размер изображения или размер виджета (в моём случае они совпадают) достигает некоторого предела функции масштабирования и отрисовки работают некорректно.

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

То при достижении изображением размера 17462 х 23283 пикселей отображается белое поле.
Интересно, это предельный размер отображаемого виджета или особенности интерполяции?
Хотелось-бы знать чем вызвано данное ограничение и как программно определить предельную величину?
Записан
Rcus
Гость
« Ответ #1 : Август 27, 2009, 19:32 »

http://qt.nokia.com/doc/4.5/qpainter.html#limitations
Записан
maydyk
Гость
« Ответ #2 : Август 27, 2009, 22:01 »


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

Сообщений: 2063


Просмотр профиля
« Ответ #3 : Август 31, 2009, 20:06 »

изображение не помещается в видеопамять
Записан
SABROG
Гость
« Ответ #4 : Сентябрь 01, 2009, 12:00 »

В ньюсгруппе я видел ответ троллей, что надо использовать tile-based алгоритмы. Т.е. большую картинку формировать из мелких плиточек.
Записан
maydyk
Гость
« Ответ #5 : Сентябрь 01, 2009, 15:36 »

изображение не помещается в видеопамять
А как определить предельный размер изображения которое будет помещаться в видеопамять?
Записан
Alex Custov
Джедай : наставник для всех
*******
Offline Offline

Сообщений: 2063


Просмотр профиля
« Ответ #6 : Сентябрь 01, 2009, 17:47 »

изображение не помещается в видеопамять
А как определить предельный размер изображения которое будет помещаться в видеопамять?

максимальные WxH = ((размер свободной видеопамяти на видеокарте)+(размер свободного ОЗУ))/(бит на пиксель). Как-то так.
« Последнее редактирование: Сентябрь 01, 2009, 17:50 от AX » Записан
spectre71
Гость
« Ответ #7 : Сентябрь 03, 2009, 19:40 »

А как определить предельный размер изображения которое будет помещаться в видеопамять?

А зачем это надо?!
Рисуй(выводи) изображение по размеру видимой области, и никаких проблем не будет.
Записан
Страниц: [1]   Вверх
  Печать  
 
Перейти в:  


Страница сгенерирована за 0.119 секунд. Запросов: 23.