| Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
| Форум программистов > Visual C++/MFC/WTL > Преобразование 3-х мерных координат |
| Автор: zabludshiy 9.12.2012, 22:40 |
| Здравствуйте. У меня возникла следующая проблема. Создал метод, где расчитываются координаты функции, а для построения графика функции мне нужно преобразовать координаты из 3-х мерных мировых в экранные. Подскажите, пожалуйста, как правильно их преобразовать. Возможно есть какие-либо стандартные методы для преобразований? Если стандартных методов нет, то насколько я понял нужно преобразование координат осуществлять в два этапа: 1. из мировых в видовые, 2. из видовых в перспективные. Из перспективных берем Х и У и они являются экранными. Но не могу найти ни алгоритма преобразования, ни нормально расписанного теоретического материала по этой теме. Может быть у кого-нибудь есть какие-нибудь наработки или примеры в этом направлении? |
| Автор: tzirechnoy 10.12.2012, 20:10 |
| http://rutracker.org/forum/viewtopic.php?t=2338661 есть вменяемое введение. Удобно тем, что достаточно короткое (а если в какую-то деталь упёрся -- можно посмотреть в википедии, wolframalfa или туториалах opengl). |
| Автор: zabludshiy 11.12.2012, 20:03 |
| Спасибо, почитаю, жаль только на паскале примеры. |
| Автор: Amp 14.12.2012, 23:33 |
| Вкратце - проекционная матрица умножается на матрицу моделирования (видовую) и на вектор с мировыми координатами точки, x и y компоненты результата интерполируются в координаты окна. Если у тебя в программе не заложено никаких матричных преобразований над точками, то видовая матрица у тебя будет единичной и, соответственно, не нужна. |