| Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
| Форум программистов > C/C++: Мультимедия, OpenGL/DirectX > Преобразование из Экранных координат |
| Автор: TommyAlice 26.3.2007, 14:31 |
| Здравствуйте Такой вопрос: пользователь смотрит на сцену, при помощи движений мыши изменяет угол зрения, удаленность и тп. Кликая мышью, необходимо разместить объект в некоторой плосоксти или захватить объект в окресности клика. То есть необходимо определить множество точек соотвествующее экранной координате в 3D простанстве. Как это сделать. Ведь выполняеться множество преобразований, как сделать это не запоминая их всех, может быть есть какая-то функция преобразования из экранных в пространсвенные? |
| Автор: Moid 27.3.2007, 11:35 |
| Возьми любой учебник по OpenGL там описыны процедуры сдвигов и поворотов матрицы... вот хотябы тот, что предлагают на форуме:http://msdn.microsoft.com/library/default.asp%3Furl%3D/library/en-us/dnanchor/html/opengl.asp А если вы немного подумаете, то и как преобразовать координыты мыши на форме в 3D тоже догадаетесь... Хотя там не совсем 3d получится, 3-ю координатную ось уже нужно будет при определенных условиях определять... К примеру как это сделано в 3ds Max. |
| Автор: Rickert 6.4.2007, 14:08 | ||
| Глупости всё, не слушай. Вот код:
point - координаты курсора на экране. wx, wy, wz - в 3D пространстве. |