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

Войти
 
  Начало Форум WIKI (Вики)FAQ Помощь Поиск Войти Регистрация  
  Просмотр сообщений
Страниц: [1]
1  Qt / Вопросы новичков / Re: как правильно работать с Qt, чтобы не было утечек памяти? : Декабрь 09, 2023, 13:30
Разработчики Qt в своей архитектуре смешали вопрос иерархии экземпляров объектов и вопрос владения, заложив правило, что верхний в иерархии объект удаляет объекты ниже в иерархии. Это привело к тому, что в Qt традиционно используют сырые указатели.
Не вижу ничего плохого а этом правиле. Ну хорошо, а как же должна выглядеть связка парент-чайлд в свете новых достижений семантики?  Парент владеет чайлдами? Да, стало быть все равно парент должен иметь контейнер чайлдов. Или (теперь уже) вумных указателей. Да, но "юники" копировать нельзя, а контейнер потребует. Слышал как-то это обходится "муванием". И как тогда удалять тот же виджет (чайлд)?

Да уж наворотили в Qt всего Подмигивающий.
Ах как мы добродушны и снисходительны  Улыбающийся
2  Qt / 2D и 3D графика / Re: 3D график по точкам : Ноябрь 01, 2023, 19:27
Необходимо виазулизировать траекторию. Покрутить мышкой в 3Д, приблизить, удалить, посмотреть сверху/снизу. Чем это можно сделать?
OpenGL. Графики или нет - все равно это "3D сцена", со всеми вытекающими. Вьюер - довольно большая работа (впрочем зависит от добросовестности исполняющего)
3  Qt / OpenGL / Re: Получение локальных координат объекта : Ноябрь 01, 2023, 19:22
Код:
       QVector3D screenPos(p.x(),p.y(),1.0f); // p.x, p.y экранные координаты клика
        QVector3D vecUnproj = screenPos.unproject(m_view, m_projection,QRect(0,0, 640, 480));
Y перевернута (см описание unproject). Z = 1 соответствует задней стенке фрустума, Z = 0 передней. У Вас Z = 3, нормируйте на nearRes, farRes, они те самые что даете в метод perspective, пере-вычислять не нужно.

В обоих случаях Вы получили верный луч/вектор, но у Вас перспективное изображение, т.е. чем дальше объект от камеры (чем больше Z) - тем он меньше и больше прижимается к центру экрана. Зачем Вам перспектива в 2D сцене - не знаю. Для расстояния 3

0.314589/x = -0.949228/-3, ну x и будет примерно 1

(я ненастоящий сварщик)
Так можно ж "просто пройти дальше по ссылке"  Улыбающийся
Страниц: [1]

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