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

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

Страниц: [1]   Вниз
  Печать  
Автор Тема: 3 QGraphicsView, 1 QGraphicsScene  (Прочитано 4595 раз)
Igors
Джедай : наставник для всех
*******
Offline Offline

Сообщений: 11445


Просмотр профиля
« : Сентябрь 02, 2009, 20:51 »

Добрый вечер

Задача: имею набор 3D примитивов, хочу отображать их в 3 проекциях Top, Front, Side. Разумно создать один QGraphicsScene и добавить в него все примитивы. Затем этот указатель на QGraphicsScene вставить в 3 QGraphicsView.

Вопрос(ы): что мне делать с QGraphicsItem::boundingRect() который здесь должен возвращать разные QRect для разных проекций (QGraphicsView) ?

Спасибо
Записан
BRE
Гость
« Ответ #1 : Сентябрь 02, 2009, 22:23 »

Добрый вечер

Задача: имею набор 3D примитивов, хочу отображать их в 3 проекциях Top, Front, Side. Разумно создать один QGraphicsScene и добавить в него все примитивы. Затем этот указатель на QGraphicsScene вставить в 3 QGraphicsView.

Вопрос(ы): что мне делать с QGraphicsItem::boundingRect() который здесь должен возвращать разные QRect для разных проекций (QGraphicsView) ?

Спасибо
QGraphicsScene описывет 2D-сцену. Как ты планируешь разместить на ней 3D примитивы?
Записан
Igors
Джедай : наставник для всех
*******
Offline Offline

Сообщений: 11445


Просмотр профиля
« Ответ #2 : Сентябрь 03, 2009, 11:28 »

[QGraphicsScene описывет 2D-сцену. Как ты планируешь разместить на ней 3D примитивы?
В изометрии не вижу разницы между 2D и 3D сценой  Улыбающийся Примитивы очень простые: сплюснутые сфероиды. В виде сверху мне надо рисовать просто окружности, в остальных - эллипсы. Шейдить ничего не надо, с OGL связываться незачем. И все бы хорошо если б только знать в каком из 3 видов сейчас рисуем/выбираем   Подмигивающий
Записан
ufna
Гость
« Ответ #3 : Сентябрь 03, 2009, 12:24 »

Вопрос - как в двумерной сцене ты посмотришь на свой сфероид сбоку? Улыбающийся

он ведь плоский. Если ты сделаешь вторую вьюшку, в которой даже задашь этот поворот, то максимум, что ты увидишь, это будет полосочка. Так что для каждой вьюшки нужен будет свой собственный айтем. А тогда это уже три сцены проще, чтобы косяков не было.
Записан
Igors
Джедай : наставник для всех
*******
Offline Offline

Сообщений: 11445


Просмотр профиля
« Ответ #4 : Сентябрь 03, 2009, 13:05 »

Вопрос - как в двумерной сцене ты посмотришь на свой сфероид сбоку? Улыбающийся

Да нормально смотрю  Улыбающийся  У меня есть координата центра (x, y, z) и размеры по осям. Например если надо нарисовать его в виде сверху (это проекция на плоскость XZ) то и беру координаты/размеры XZ и рисую. Вид сбоку - то же самое только использую ZY. С этим проблем нет.
 
он ведь плоский. Если ты сделаешь вторую вьюшку, в которой даже задашь этот поворот, то максимум, что ты увидишь, это будет полосочка.
Мне их поворот на плоскости не нужен. Для поворота у меня есть своя матрица 4x4, я просто все координаты/вектора на нее помножу.

Так что для каждой вьюшки нужен будет свой собственный айтем. А тогда это уже три сцены проще, чтобы косяков не было.
То понятно что 3 QGraphicsScene (каждая со своими items) работать будет, так ведь прийдется бегать между ними и синхронизировать каждую операцию добавить/удалить/выделить.
Записан
Страниц: [1]   Вверх
  Печать  
 
Перейти в:  


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