powered by simpleCommunicator - 2.0.51     © 2025 Programmizd 02
Форумы / WPF, Silverlight [игнор отключен] [закрыт для гостей] / Преобразование координат мыши. 3D графика
18 сообщений из 18, страница 1 из 1
Преобразование координат мыши. 3D графика
    #38892156
AidarH
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Всем доброго дня. Есть ViewPort3D. В нем есть камера. В viewport3D строится график.
Вопрос. Как по координатам мыши (если нажали кнопку мыши и через GetPosition имеем координаты) найти координаты точки на графике с учетом позиции камеры по координатам мыши? Заранее спасибо.
...
Рейтинг: 0 / 0
Преобразование координат мыши. 3D графика
    #38892193
Ilya81
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Есть встроенное средство определения объекта по нажатию.
...
Рейтинг: 0 / 0
Преобразование координат мыши. 3D графика
    #38892271
AidarH
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Ilya81Есть встроенное средство определения объекта по нажатию.

Спасибо огромное.
...
Рейтинг: 0 / 0
Преобразование координат мыши. 3D графика
    #38892538
AidarH
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Ilya81Есть встроенное средство определения объекта по нажатию.

Еще вопрос такой. Мне надо мышкой нарисовать 3д объект (например куб). Если использовать HitTest из VisualTreeHelper то он находит точку именно с визуальном объектом (точка, линия и т.д.). А как мне получить координату именно для рисования объекта мышкой по координатам мышки? Заранее спасибо
...
Рейтинг: 0 / 0
Преобразование координат мыши. 3D графика
    #38893204
AidarH
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
AidarHIlya81Есть встроенное средство определения объекта по нажатию.

Еще вопрос такой. Мне надо мышкой нарисовать 3д объект (например куб). Если использовать HitTest из VisualTreeHelper то он находит точку именно с визуальном объектом (точка, линия и т.д.). А как мне получить координату именно для рисования объекта мышкой по координатам мышки? Заранее спасибо


Народ, помогите пожалуйста.
...
Рейтинг: 0 / 0
Преобразование координат мыши. 3D графика
    #38893441
Ilya81
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Тут уже только своими силами рассчитывать из матриц свойств Transform камеры и при необходимости, каких-то объектов. Для камеры, надо полагать, будет обратная матрица для умножения. Ну и к тому ж тут надо как-то самостоятельно придумать, как восполнить недостающую координату для текущей двумерной проекции, т. е. на каком расстоянии помещать объект. Как-то так.
...
Рейтинг: 0 / 0
Преобразование координат мыши. 3D графика
    #38902991
НемоКэп42
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Может, поможет. Есть такая штука - 3D Tools . Качаешь. Там есть примеры. Один из мримеров называется InteractiveViewport3DSample - там можно двигать ползунки и изменять ими размер куба. Т. е. там привязки есть между контролами и параметрыми 3Д-объектов. Попробуй привязать их к координатам мыши.

Ещё там есть пример Channel9Demo. Там нажимаешь галочку "Truth" и получаетс забавный эффект - всё, что рисуется на 3Д поверхности мышью, один-в-один отображается на плоской полупрозрачной поверхности. Т. е. там курсор мыши и две точки этой поверхности (только с разных видов) как бы совмещены. Не знаю, может, это пригодится.
...
Рейтинг: 0 / 0
Преобразование координат мыши. 3D графика
    #38902992
НемоКэп42
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Ну и до кучи эта штука даёт бесплатное вращение сцены в 3Д (надо только декоратором обрамить в XAML) и ещё некоторые плюшки, типа намапливания полнофункционального интерактивного UI на 3Д поверхности. Причём это доведено по сложности до уровня детского сада. Ничего подобного ни в каком сраном Unity 3D нет, а на WPF уже сто лет в обед есть.
...
Рейтинг: 0 / 0
Преобразование координат мыши. 3D графика
    #38903364
Roman Mejtes
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
НемоКэп42,

чушь писать не надо, в XNA и в Unity сделать это не на много сложнее, чем в WPF.
единственный минус, это элементы управления, надо будет ручками создавать
...
Рейтинг: 0 / 0
Преобразование координат мыши. 3D графика
    #38903435
НемоКэп42
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Roman MejtesНемоКэп42,

чушь писать не надо, в XNA и в Unity сделать это не на много сложнее, чем в WPF.
единственный минус, это элементы управления, надо будет ручками создавать
В юнити нет богатых контролов с байндингами и прочим фаршем? - Каменный век!
...
Рейтинг: 0 / 0
Преобразование координат мыши. 3D графика
    #38903439
НемоКэп42
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Ага, не намного сложнее - всего-то изобрести нормальный UI-фреймворк.
...
Рейтинг: 0 / 0
Преобразование координат мыши. 3D графика
    #38903570
Roman Mejtes
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
НемоКэп42,

там немного другой подход, но сделать простецкое игровое меню с анимацией, некий игровой интерфейс там не сильно сложно. А расположить его на 3д полигонах будет даже проще. В играх и не сложно функциональных котролов. Они все довольно простые.
...
Рейтинг: 0 / 0
Преобразование координат мыши. 3D графика
    #38903871
НемоКэп42
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Roman Mejtes,

вы, наверное, не поняли, что с помощью 3D Tools в WPF я показал. 1 - Там созданы ИНТЕРАКТИВНЫЕ контролы и трёхмерный объект, которым они управляют. 2 - Затем, внимание, вся сцена с этим всем отрисована в текстуру (отрисовывается каждый кадр - т. к. интерактивность и нужно постоянно обновлять). 3 - Затем, ещё внимание, эта текстура намаплена на другой трёхмерный объект. 4 - Ну и уже этот объект - во вьюпорте окна. При этом, ещё внимание, первоначальные контролы остаются интерактивными, а не просто безжизненная текстура. И САМОЕ ГЛАВНОЕ, этого добились без километров кода - всего несколько строчек привязок и всё. А именно, контролы забайндинены на свойства параллелепипеда, свойство Visual вьюпорта этих контролов с параллелепипедом забайндинено на текстуру плоскости. Вот и вся магия. Конечно, под капотом это работает как куча всяких штук, типа отрисовки в текстуру, шейдера для этого дела, плюс ловится мышь в первом вьюпорте, затем каким-то образом её координаты передаются в текстуру, на которой напамлен вьюпорт с контролами и параллелепипедом, затем этому вьюпорту с этими контролами и потом уже определяется, по каким контролам попадание.

Вот именно такую лёгкость может обеспечить Юнити или XNA? Забубенить несколько объектов в нескольких вьюпортах, а потом несколькими байндингами связать всё это дело и чтобы всё оставалось интерактивным?
...
Рейтинг: 0 / 0
Преобразование координат мыши. 3D графика
    #38903873
НемоКэп42
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
То, что в Юнити и прочих можно рендерить в текстуру я знаю. А можно ли это делать с сохранением интерактивности в этой отрендеренной текстуре, как у меня в примере?
...
Рейтинг: 0 / 0
Преобразование координат мыши. 3D графика
    #38903877
НемоКэп42
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Ни в каких играх, ни в каких юнитях не было и нет таких сложных интерфейсов, получаемых так легко и доступных в несколько строчек привязок. WPF всех обошёл на 10 лет. ВООБЩЕ ВСЕХ!
...
Рейтинг: 0 / 0
Преобразование координат мыши. 3D графика
    #38903882
НемоКэп42
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Придурки на хабрах всяких радуются, что у них какая-то примитивная хрень в типатридэ получается на сраном JS, хотя работает через пень-колоду и не у всех, плюс жрёт процессор и память как не в себя, требует поставить вебГЛ, хром, кучу JS накачивает и ещё что-то. А в WPF всё гораздо лучше, быстрее, совместимее, доступнее и легче было ещё 8 лет назад. Мир идиотов сошёл с ума. Остановите планету, я сойду.
...
Рейтинг: 0 / 0
Преобразование координат мыши. 3D графика
    #38904003
Ilya81
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Встроенный 3D в WPF - это так, баловство, если сцена из двух кубиков, то можно. Если что-то посерьёзнее - там Z-Fighting почти не преодолевается, так что для реальной графики нужно что угодно полноценное (XNA, SlimDX, SharpDX, в конце концов сделать native для DirectX), а в WPF выводить через D3DImage.

Тут-то автору темы, похоже, нужно несложные трёхмерные диаграммы вывести, с этим встроенный движок справится, а вот будь что-то поосновательнее - 3D из WPF не подошёл б.
...
Рейтинг: 0 / 0
Преобразование координат мыши. 3D графика
    #38904020
НемоКэп42
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Ilya81Встроенный 3D в WPF - это так, баловство, если сцена из двух кубиков, то можно. Если что-то посерьёзнее - там Z-Fighting почти не преодолевается, так что для реальной графики нужно что угодно полноценное (XNA, SlimDX, SharpDX, в конце концов сделать native для DirectX), а в WPF выводить через D3DImage.

Тут-то автору темы, похоже, нужно несложные трёхмерные диаграммы вывести, с этим встроенный движок справится, а вот будь что-то поосновательнее - 3D из WPF не подошёл б.
Согласен. Но вот в то, что в WPF есть для 3Д-интерейсов из коробки (ну, скачать 3D Tools) и в несколько строчек, на всех перечисленных тобой "профессиональных" 3Д-фреймворках придётся в рукопашную делать.

В том-то и штука в WPF, что он легко конвергирует сложные 2Д и не очень сложные по сцене, но сложные по компоновке 3Д интерфейсы. А главное, добавляет в это 3Д свои классные штуки, такие как байндинги и прочее.

Вот в каком из "профессиональных" 3Д-фреймворков есть втроенные байндинги?
...
Рейтинг: 0 / 0
18 сообщений из 18, страница 1 из 1
Форумы / WPF, Silverlight [игнор отключен] [закрыт для гостей] / Преобразование координат мыши. 3D графика
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]