Трансформация систем координат

Сообщение №23419 от pvl 10 января 2008 г. 14:56
Тема: Трансформация систем координат

Помогите решить следующую задачу:
есть первая система координат описанная следующей матрицей
(первые три столбца направляющие косинусы определяющие поворот,
четвертый смещение по X,Y,Z):

CSYS/ 1.000000, 0.000000, 0.000000, 0.000000, $
0.000000, 1.000000, 0.000000, 0.000000, $
0.000000, 0.000000, 1.000000, 0.000000
и
вторая трансформированная система координат описанная следующей матрицей:

CSYS / 0.0000000000, 0.3420201433, 0.9396926208, 781.2061475843, $
-1.0000000000, 0.0000000000, 0.0000000000, 293.9878426485, $
0.0000000000, -0.9396926208, 0.3420201433, -6.8404028665


КАК определить обратную трансформацию - из второй координатной системы в первую?
Результат должен быть следующий:

TRANS/0.000000, -1.000000, 0.000000, 293.987843,$
0.342020, 0.000000, -0.939693, -273.616115,$
0.939693, 0.000000, 0.342020, -731.754097

КАК получить эти значения? Интерисует получение значений четвертого столбика
- положение начала первой системы координат относительно второй
(четвертый столбик положение проекции по X,Y,Z на вторую систему координат)
P.S. направляющие косинусы определяющие трансформацию получаются
простым переносом значений первой строки на первый столбец и т.д.


Отклики на это сообщение:

> Помогите решить следующую задачу:
> есть первая система координат описанная следующей матрицей
> (первые три столбца направляющие косинусы определяющие поворот,
> четвертый смещение по X,Y,Z):

> CSYS/ 1.000000, 0.000000, 0.000000, 0.000000, $
> 0.000000, 1.000000, 0.000000, 0.000000, $
> 0.000000, 0.000000, 1.000000, 0.000000

Похоже, что вы написали единичную матрицу

А что означает четвертый столбец с доллорами?
И что вы подразумеваете под "трансформацией" системы координат?


> первые три столбца направляющие косинусы определяющие поворот,:

Вы не ошиблись в написании первого столбца?


> > Помогите решить следующую задачу:
> > есть первая система координат описанная следующей матрицей
> > (первые три столбца направляющие косинусы определяющие поворот,
> > четвертый смещение по X,Y,Z):

> > CSYS/ 1.000000, 0.000000, 0.000000, 0.000000, $
> > 0.000000, 1.000000, 0.000000, 0.000000, $
> > 0.000000, 0.000000, 1.000000, 0.000000

> Похоже, что вы написали единичную матрицу
> \begin{pmatrix}1.0& 0.0& 0.0\\0.0&1.0&0.0\\0.0&0.0&1.0\end{pmatrix}
> ">

> А что означает четвертый столбец с доллорами?
> И что вы подразумеваете под "трансформацией" системы координат?


Четвертый столбец это значения расстояния по X,Y,Z начала 1-ой системы координат до начала 2-ой системы координат т.е. одна система координат смещена и повернута относительно другой (поворот описан во второй матрице направляющими косинусами - первые три столбца) - это и есть трансформация.
Доллар это просто перенос текстовой строки.
Извиняюсь, если что непонятно описал.
Т.е. вторая матрица описывает смещение относительно первой.
Нужно определить обратное отношение - смещение первой относительно второй -
расстояние от центра второй системы координат до центра первой относительно
второй системы координат (проекция на вторую систему координат).
Ух, уже и сам не понимаю что пишу
СПАСИБО, тем кто это читает. Может рисунок sys.gif поможет - нужно найти по значениям второй матрицы - dx, dy, dz т.е. значения четвертого столбца.


> > первые три столбца направляющие косинусы определяющие поворот,:
> \begin{pmatrix} 0.0000000000& 0.3420201433& 0.9396926208& 781.2061475843&\\-1.0000000000& 0.0000000000& 0.0000000000& 293.9878426485\\0.0000000000& -0.9396926208& 0.3420201433& -6.8404028665 \end{pmatrix}
> ">

> Вы не ошиблись в написании первого столбца?

Нет, все правильно. Спасиб.


> > > первые три столбца направляющие косинусы определяющие поворот,:

> > Вы не ошиблись в написании первого столбца?

> Нет, все правильно. Спасиб.

Вы писали, что это матрица поворота.
Так это какой поворот, я что-то не соображу.
Относительно какой-то оси, или комбинация поворотов?


> > > > первые три столбца направляющие косинусы определяющие поворот,:
> \begin{pmatrix} 0.0000000000& 0.3420201433& 0.9396926208& 781.2061475843&\\-1.0000000000& 0.0000000000& 0.0000000000& 293.9878426485\\0.0000000000& -0.9396926208& 0.3420201433& -6.8404028665 \end{pmatrix}
> ">

> > > Вы не ошиблись в написании первого столбца?

> > Нет, все правильно. Спасиб.

> \begin{pmatrix} 0.0000000000& 0.3420201433& 0.9396926208\\-1.0000000000& 0.0000000000& 0.0000000000\\0.0000000000& -0.9396926208& 0.3420201433\end{pmatrix}
> ">

> Вы писали, что это матрица поворота.
> Так это какой поворот, я что-то не соображу.
> Относительно какой-то оси, или комбинация поворотов?

Это комбинация поворотов. Попробую прицепить файл рисунка sys.gif
и пояснение к нему:
Помогите пожалуйста решить следующую задачу:

Пояснение к рисунку:

SYS1 - первая система координат и ее матрица:
1.000000, 0.000000, 0.000000, 0.000000,
0.000000, 1.000000, 0.000000, 0.000000,
0.000000, 0.000000, 1.000000, 0.000000
(первые три столбца направляющие косинусы определяющие поворот,
четвертый смещение по X,Y,Z):

SYS2 - вторая система координат и ее матрица описывающая
ее трансформацию (смещение и поворот) относительно первой:

0.000000 0.766044 0.642788 81.379768
-1.000000 0.000000 0.000000 50.000000
0.000000 -0.642788 0.766044 -29.619813

Нужно найти матрицу, которая будет описывать
трансформацию (смещение и поворот) второй системs координат SYS2
относительно первой SYS1:
Нужно вычислить значения четвертого столбца матрицы -
положение начала первой системы координат
относительно второй системы координат (проекция на нее):
на рисунке Dx, Dy, Dz т.к.
остальные значеня матрицы (направляющие косинусы)
получаются переносом первой строки на первый столбец,
второй строки на второй и т.д.

Правильный результат - следующая матрица:

0.000000 -1.000000 0.000000 50.000000
0.766044 0.000000 -0.642788 -81.379768
0.642788 0.000000 0.766044 -29.619813

Как вычислить значения четвертого столбца матрицы:
Dx=(50.000000), Dy(-81.379768), Dz(-29.619813)???

Заранее спасибо.


Помогите пожалуйста решить следующую задачу:

Пояснение к рисунку:

SYS1 - первая система координат и ее матрица:
1.000000, 0.000000, 0.000000, 0.000000,
0.000000, 1.000000, 0.000000, 0.000000,
0.000000, 0.000000, 1.000000, 0.000000
(первые три столбца направляющие косинусы определяющие поворот,
четвертый смещение по X,Y,Z):

SYS2 - вторая система координат и ее матрица описывающая
ее трансформацию (смещение и поворот) относительно первой:

0.000000 0.766044 0.642788 81.379768
-1.000000 0.000000 0.000000 50.000000
0.000000 -0.642788 0.766044 -29.619813

Нужно найти матрицу, которая будет описывать
трансформацию (смещение и поворот) второй системs координат SYS2
относительно первой SYS1:
Нужно вычислить значения четвертого столбца матрицы -
положение начала первой системы координат
относительно второй системы координат (проекция на нее):
на рисунке Dx, Dy, Dz т.к.
остальные значеня матрицы (направляющие косинусы)
получаются переносом первой строки на первый столбец,
второй строки на второй и т.д.

Правильный результат - следующая матрица:

0.000000 -1.000000 0.000000 50.000000
0.766044 0.000000 -0.642788 -81.379768
0.642788 0.000000 0.766044 -29.619813

Как вычислить значения четвертого столбца матрицы:
Dx=(50.000000), Dy(-81.379768), Dz(-29.619813)???

Заранее спасибо.


> Помогите пожалуйста решить следующую задачу:
>
> Пояснение к рисунку:

> SYS1 - первая система координат и ее матрица:
> 1.000000, 0.000000, 0.000000, 0.000000,
> 0.000000, 1.000000, 0.000000, 0.000000,
> 0.000000, 0.000000, 1.000000, 0.000000
> (первые три столбца направляющие косинусы определяющие поворот,
> четвертый смещение по X,Y,Z):

> SYS2 - вторая система координат и ее матрица описывающая
> ее трансформацию (смещение и поворот) относительно первой:

> 0.000000 0.766044 0.642788 81.379768
> -1.000000 0.000000 0.000000 50.000000
> 0.000000 -0.642788 0.766044 -29.619813

> Нужно найти матрицу, которая будет описывать
> трансформацию (смещение и поворот) второй системs координат SYS2
> относительно первой SYS1:
> Нужно вычислить значения четвертого столбца матрицы -
> положение начала первой системы координат
> относительно второй системы координат (проекция на нее):
> на рисунке Dx, Dy, Dz т.к.
> остальные значеня матрицы (направляющие косинусы)
> получаются переносом первой строки на первый столбец,
> второй строки на второй и т.д.

> Правильный результат - следующая матрица:

> 0.000000 -1.000000 0.000000 50.000000
> 0.766044 0.000000 -0.642788 -81.379768
> 0.642788 0.000000 0.766044 -29.619813

> Как вычислить значения четвертого столбца матрицы:
> Dx=(50.000000), Dy(-81.379768), Dz(-29.619813)???

> Заранее спасибо.

Имеем такую ситуацию

Необходимо вычислить Так?

Умножим левую и правую части на матрицу, обратную к
-1=-1 + -1

В итоге
=-1--1

-1 является матрицей, транспонированной к


Физика в анимациях - Купить диск - Тесты по физике - Графики on-line

Реклама:
Rambler's Top100