powered by simpleCommunicator - 2.0.59     © 2025 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Программирование [игнор отключен] [закрыт для гостей] / Как построить матрицу трансформации из видового куба
31 сообщений из 31, показаны все 2 страниц
Как построить матрицу трансформации из видового куба
    #39565297
roleks
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Есть куб, с координатами -1 -1 -1 ..... 1 1 1
С его границы идет вектор в точку 0 0 0
Как имея эти данные построить матрицу трансформации.
Прикрепляю изображения для наглядности
...
Рейтинг: 0 / 0
Как построить матрицу трансформации из видового куба
    #39565384
kealon(Ruslan)
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
roleks,
у вас как-то не очень с вопросами

>>С его границы идет вектор в точку 0 0 0
и что? что за вектор? с какой границы?
>>Как имея эти данные построить матрицу трансформации.
самый главный вопрос: куда матрица должна трансформировать?


http://compgraph.tpu.ru/3d.htm
потом смотрим произведение матриц
...
Рейтинг: 0 / 0
Как построить матрицу трансформации из видового куба
    #39565446
roleks
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
kealon(Ruslan)roleks,
у вас как-то не очень с вопросами

>>С его границы идет вектор в точку 0 0 0
и что? что за вектор? с какой границы?
>>Как имея эти данные построить матрицу трансформации.
самый главный вопрос: куда матрица должна трансформировать?


http://compgraph.tpu.ru/3d.htm
потом смотрим произведение матриц


Почитайте что такое видовой куб, раз не знаете
...
Рейтинг: 0 / 0
Как построить матрицу трансформации из видового куба
    #39565448
roleks
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
kealon(Ruslan),

Скорее всего проблема не в вопросах, а в ответах
...
Рейтинг: 0 / 0
Как построить матрицу трансформации из видового куба
    #39565474
kealon(Ruslan)
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
roleks,

тут программисты ходют, и я думаю не многие из них поклонники автокада

но вот как нарисовать эту фиговинку большинство понимает, а что вы хотите - непонятно
...
Рейтинг: 0 / 0
Как построить матрицу трансформации из видового куба
    #39565480
Фотография Изопропил
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
kealon(Ruslan)тут программисты ходют, и я думаю не многие из них поклонники автокада
а в OpenGL/Direct3D никакого видового куба нет
...
Рейтинг: 0 / 0
Как построить матрицу трансформации из видового куба
    #39565605
exp98
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Дык наверняка подразумеваются к.-нить проективные координаты, а "точка зрения" = тому самому вектору с "поверхности". Типа задайте его сами в общем виде, а мне дайте результат. Ни тебе самостоятельных попыток, ни уточняющих вопросов. Напоминает сериал о цилиндре.
...
Рейтинг: 0 / 0
Как построить матрицу трансформации из видового куба
    #39565651
kealon(Ruslan)
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
exp98,

ну давай потелепатим, возьмём изометрическую проекцию:

координаты наблюдателя (xn,yn,zn), сместим к ним координаты
Shift(-xn,-yn,-zn) * (x,y,n)


азимут просмотра - a [0, 2Пи)
RotateZ(-a) * Shift(-xn,-yn,-zn) * (x,y,n)


отклонение от вертикали - fi [-Пи/2, Пи/2]

RotateX(-fi) * RotateZ(-a) * Shift(-xn,-yn,-zn) * (x,y,n)


накинем матрицу масштаба с коэффициентом - S
Scale(S) * RotateX(-fi) * RotateZ(-a) * Shift(-xn,-yn,-zn) * (x,y,n)

итоговая матрица выходит:
Scale(S) * RotateX(-fi) * RotateZ(-a) * Shift(-xn,-yn,-zn)
...
Рейтинг: 0 / 0
Как построить матрицу трансформации из видового куба
    #39565895
roleks
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
kealon(Ruslan)exp98,

ну давай потелепатим, возьмём изометрическую проекцию:

координаты наблюдателя (xn,yn,zn), сместим к ним координаты
Shift(-xn,-yn,-zn) * (x,y,n)


азимут просмотра - a [0, 2Пи)
RotateZ(-a) * Shift(-xn,-yn,-zn) * (x,y,n)


отклонение от вертикали - fi [-Пи/2, Пи/2]

RotateX(-fi) * RotateZ(-a) * Shift(-xn,-yn,-zn) * (x,y,n)


накинем матрицу масштаба с коэффициентом - S
Scale(S) * RotateX(-fi) * RotateZ(-a) * Shift(-xn,-yn,-zn) * (x,y,n)

итоговая матрица выходит:
Scale(S) * RotateX(-fi) * RotateZ(-a) * Shift(-xn,-yn,-zn)


Все верно, к этому я сам дошел. Проблема в том как узнать fi и а
...
Рейтинг: 0 / 0
Как построить матрицу трансформации из видового куба
    #39565981
exp98
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
"Так бы сразу и сказал"(с)

вектор (координаты) наблюдателя (xn-0, yn-0, zn-0) = b
азимут просмотра - a [0, 2Пи)
отклонение от вертикали - fi [-Пи/2, Пи/2]

^ - угол между векторами
Pr( b, XY ) - проекция b на плоскость XY, т.е zn :=0

Cos fi= Cos( b^OZ) = скалярное пр-ние
Cos( a) = Cos( OX ^ Pr( b, XY )) = скалярное пр-ние
...
Рейтинг: 0 / 0
Как построить матрицу трансформации из видового куба
    #39566107
roleks
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
exp98,

спасибо за ответ.
К сожалению, есть некоторые неточности.
Изометрия работает правильно, но например вид спереди, т.е. нормаль = 0 1 1
углы получаются
fi = 90
a = 90
что соответствует виду сбоку
...
Рейтинг: 0 / 0
Как построить матрицу трансформации из видового куба
    #39566157
exp98
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Традиционно Х смотрит на нас, У - вправо, Зет - вверх.
при х= 0 у=1 зет=1, куда вектор должен смотреть: на северо-восток или в лицо? Углы как раз по 90.
Как для "видовухи" я хрз.
...
Рейтинг: 0 / 0
Как построить матрицу трансформации из видового куба
    #39566180
Фотография Изопропил
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
exp98Традиционно Х смотрит на нас, У - вправо, Зет - вверх
в какой традиции?

в OpenGL - X-вправо, Y-вверх, Z- на себя
...
Рейтинг: 0 / 0
Как построить матрицу трансформации из видового куба
    #39566217
kealon(Ruslan)
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
roleksПроблема в том как узнать fi и а
обратная задача значит

тынц , как раз твоя задача
...
Рейтинг: 0 / 0
Как построить матрицу трансформации из видового куба
    #39566391
exp98
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Изопропилв OpenGL - X-вправо, Y-вверх, Z- на себя Надо же, а в Сях было У - вниз.
Это всё нетрадиционная ориентация.
...
Рейтинг: 0 / 0
Как построить матрицу трансформации из видового куба
    #39566402
Dima T
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
exp98Изопропилв OpenGL - X-вправо, Y-вверх, Z- на себя Надо же, а в Сях было У - вниз.
Это всё нетрадиционная ориентация.
В геометрии ось Y - вверх, на любых графиках - вверх и т.д.

Но какой-то умник зачем-то решил что на мониторе надо пиксели нумеровать вниз.
...
Рейтинг: 0 / 0
Как построить матрицу трансформации из видового куба
    #39566409
Basil A. Sidorov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Dima TНо какой-то умник зачем-то решил что на мониторе надо пиксели нумеровать вниз.Не везде. В P(resentation)M(anager) (графическое API OS/2) начало координат было в левом нижнем углу экрана.
А так - да, нумерация точек (байт) монитора следовала за ходом развёртки электронно-лучевой трубки
...
Рейтинг: 0 / 0
Как построить матрицу трансформации из видового куба
    #39566439
exp98
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Да, а Зет на вас смотрит, чтобы был Зет-ордер.
Теперь много разных ориентаций, теперь ведь толерастия. А может дождаться начальника транспортного цеха?
...
Рейтинг: 0 / 0
Как построить матрицу трансформации из видового куба
    #39566553
Фотография Изопропил
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
exp98Теперь много разных ориентаций, теперь ведь толерастия.
всего две - левосторонняя и правосторонняя
...
Рейтинг: 0 / 0
Как построить матрицу трансформации из видового куба
    #39566561
exp98
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Это традиционных две. А не традиционных среди каждой из них: влева/вправа, вверх/вниз, вперёд/вназад. И это только "экранные" координаты. А есть ещё "мыслимые", наверное ТС их имел ввиду.
...
Рейтинг: 0 / 0
Как построить матрицу трансформации из видового куба
    #39566810
Фотография Изопропил
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
exp98Это традиционных две. А не традиционных среди каждой из них: влева/вправа, вверх/вниз, вперёд/вназад.
поворотами нельзя правую в левую превратить и наоборот

а твои нетрадиционные так или иначе - либо левые, либо правые
...
Рейтинг: 0 / 0
Как построить матрицу трансформации из видового куба
    #39566815
roleks
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
roleksexp98,

спасибо за ответ.
К сожалению, есть некоторые неточности.
Изометрия работает правильно, но например вид спереди, т.е. нормаль = 0 1 1
углы получаются
fi = 90
a = 90
что соответствует виду сбоку

Напоминаю, мы отошли от сути вопроса
Как быть?
...
Рейтинг: 0 / 0
Как построить матрицу трансформации из видового куба
    #39566819
kealon(Ruslan)
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
roleksroleksexp98,

спасибо за ответ.
К сожалению, есть некоторые неточности.
Изометрия работает правильно, но например вид спереди, т.е. нормаль = 0 1 1
углы получаются
fi = 90
a = 90
что соответствует виду сбоку

Напоминаю, мы отошли от сути вопроса
Как быть?

я же тебе уже ответ показал 21016446
...
Рейтинг: 0 / 0
Как построить матрицу трансформации из видового куба
    #39566822
roleks
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
kealon(Ruslan)roleksпропущено...


Напоминаю, мы отошли от сути вопроса
Как быть?

я же тебе уже ответ показал 21016446

Это не ответ, сам то читал что по ссылке?
...
Рейтинг: 0 / 0
Как построить матрицу трансформации из видового куба
    #39566823
kealon(Ruslan)
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
rolekskealon(Ruslan)пропущено...


я же тебе уже ответ показал 21016446

Это не ответ, сам то читал что по ссылке?читал конечно
то что, там перспективная проекция и восстановление по двум рисункам неважно, главное идея
именно то, что вы просили с помощью этого легко додумать, техника такая же
...
Рейтинг: 0 / 0
Как построить матрицу трансформации из видового куба
    #39567644
exp98
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Изопропил, они не мои)) Если взять, к примеру сишную (когда у вниз), то страшно представить даже, что смотришь как в ж... или подглядываешь снизу под юбку , чтобы система эта была правой. Но и это фигня, после того как я выше там ляпнул, я потом сам не понял, что хотел сказать, а вы повелись.

roleks нормаль = 0 1 1
углы получаются
fi = 90
a = 90 roleks, в моём понимании x=0 y=1 z=1 даёт угол 45 град с осью Z , куда бы оси ни смотрели. Может Х с Z поменять местами? обычно первой пишут X.
...
Рейтинг: 0 / 0
Как построить матрицу трансформации из видового куба
    #39568545
roleks
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
exp98Изопропил, они не мои)) Если взять, к примеру сишную (когда у вниз), то страшно представить даже, что смотришь как в ж... или подглядываешь снизу под юбку , чтобы система эта была правой. Но и это фигня, после того как я выше там ляпнул, я потом сам не понял, что хотел сказать, а вы повелись.

roleks нормаль = 0 1 1
углы получаются
fi = 90
a = 90 roleks, в моём понимании x=0 y=1 z=1 даёт угол 45 град с осью Z , куда бы оси ни смотрели. Может Х с Z поменять местами? обычно первой пишут X.

Извиняюсь, опечатался, вид спереди 0 1 0
...
Рейтинг: 0 / 0
Как построить матрицу трансформации из видового куба
    #39568552
roleks
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
roleks,

Итак,вид сверху: 0 0 1
спереди 0 1 0
справа 1 0 0
сзади 0 -1 0
слева -1 0 0
снизу 0 0 -1
сверху-спереди 0 0.707 0.707
угол сверху-спереди-справа (юв изометрия) 0.577 0.577 0.577
угол сверху-спереди-слева (юз изометрия) -0.577 0.577 0.577

Задача: составить матрицу трансформации
...
Рейтинг: 0 / 0
Как построить матрицу трансформации из видового куба
    #39569204
exp98
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
roleks, а просто интересно, что вызывает затруднения? Вы ведь не юноша, а впечатление, что в лом руки приложить.
Мне, например, месяц как некогда переключиться, ограничиваюсь чтением. Но даже, если б было желание тратить время на заведомых лентяев, всё равно нет софта для визуализации.
Так в чём трудности?

Но даже не приступая, на каждом посте возникают вопросы. Вы уверены, что у Вас
вид сверху: 0 0 1спереди 0 1 0справа 1 0 0
?
В начальном посте рисунок другое напоминал. Подпишите на рисунке, где Х, где У, где Z и куда они направлены. Для матриц это не принципмально, знаки только другие будут. Но всё же ваши оси уж точно не традиционные?
...
Рейтинг: 0 / 0
Как построить матрицу трансформации из видового куба
    #39574735
roleks
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
exp98roleks, а просто интересно, что вызывает затруднения? Вы ведь не юноша, а впечатление, что в лом руки приложить.
Мне, например, месяц как некогда переключиться, ограничиваюсь чтением. Но даже, если б было желание тратить время на заведомых лентяев, всё равно нет софта для визуализации.
Так в чём трудности?

Но даже не приступая, на каждом посте возникают вопросы. Вы уверены, что у Вас
вид сверху: 0 0 1спереди 0 1 0справа 1 0 0
?
В начальном посте рисунок другое напоминал. Подпишите на рисунке, где Х, где У, где Z и куда они направлены. Для матриц это не принципмально, знаки только другие будут. Но всё же ваши оси уж точно не традиционные?

Если бы затруднений не было, вопросы бы не задавал.
Впечатление у вас ошибочное, несколько дней борюсь с этим вопросом и пока не могу решить.
Можно считать, что оси традиционные, как вы правильно заметили, повернуть ось не трудно.

Естественно, когда оси традиционные, вид спереди будет 0 -1 0, остальное не изменится.
Перебрал все варианты поворотов что нашел, но пока безрезультатно - если в 1 случае правильно то в другом неправильно получается

Собственно, вот так вот.
...
Рейтинг: 0 / 0
Как построить матрицу трансформации из видового куба
    #39576976
exp98
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
roleks,
вот Вы просили:
....Задача: составить матрицу трансформации

потом писали:
....Все верно, к этому я сам дошел. Проблема в том как узнать fi и а

Теперь:
....если в 1 случае правильно то в другом неправильно получается

После таких ответов каждый на форуме решит, что уж матрицы Вы наверняка составили для каждого случая. Не вижу их ...
...
Рейтинг: 0 / 0
31 сообщений из 31, показаны все 2 страниц
Форумы / Программирование [игнор отключен] [закрыт для гостей] / Как построить матрицу трансформации из видового куба
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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