crossplatform.ru

Здравствуйте, гость ( Вход | Регистрация )

efg
  опции профиля:
сообщение 10.11.2011, 1:50
Сообщение #1


Студент
*

Группа: Участник
Сообщений: 48
Регистрация: 6.5.2011
Пользователь №: 2658

Спасибо сказали: 2 раз(а)




Репутация:   0  


дело в том, что на сцене должно быть одновременно размещено много (скажем, около 1000, хотя в перспективе их будет гораздо больше) item'ов - Svg или Pixmap, не важно. каждый из них довольно маленького размера (20х20), и изображение для них выбирается случайным образом из 6 различных файлов. получается так, что каждый элемент загружает изображение для себя, что, естественно, очень затратно при таком их количестве. можно ли как-нибудь оптимизировать всё это дело, чтобы каждый item не хранил в себе изображение, а содержал указатель? или придётся писать свой класс? кто-нибудь сталкивался с подобным?
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
 
Начать новую тему
Ответов
efg
  опции профиля:
сообщение 11.11.2011, 20:35
Сообщение #2


Студент
*

Группа: Участник
Сообщений: 48
Регистрация: 6.5.2011
Пользователь №: 2658

Спасибо сказали: 2 раз(а)




Репутация:   0  


Цитата(wiz29 @ 11.11.2011, 16:36) *
можно использовать pixmap кэш

да, точно, это подходит
теперь другой вопрос: насколько быстро получится отрендерить всю графику при изменении масштаба? нужно имитировать плавный отъезд\приближение камеры к сцене. при размещении QGraphicsSvgItem такой проблемы не было, можно было сразу пользоваться QGraphicsView::scale() или QGraphicsView::setMatrix()
можно, конечно, заранее отрендерить исходные .svg в какие-нибудь .png под разные масштабы (для быстродействия), но хочется верить, что есть более практичное решение, ведь при такой реализации масштабирования после каждого изменения размеров pixmap'ов все элементы придётся смещать на соответствующие величины...

нужен аналог QPixmapCache для svg

Сообщение отредактировал efg - 11.11.2011, 20:41
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение

Сообщений в этой теме


Быстрый ответОтветить в данную темуНачать новую тему
Теги
Нет тегов для показа


1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0


RSS Рейтинг@Mail.ru Текстовая версия Сейчас: 10.6.2025, 18:47