2016-11-01 4 views
0

Я пытаюсь создать очень простой инструмент для решения проблемы в машиностроении и должен выполнять простые преобразования координат и векторов в евклидовом пространстве, которые включают в себя переводы + вращения.Стандартная процедура для геометрических преобразований

Например

  • составная часть с локальной системой координат (CS) перемещаются по отношению к миру CS. Мне нужно вычислить новое положение (происхождение) локальных cs и его ориентацию.
  • вектор сдвинут и повернут относительно cs. Его новое положение должно быть рассчитано.

Я в курсе различных концепций для выполнения этих вычислений:

  • углов Эйлера
  • кватернионов
  • Однородных координат

От моего POV использования однородных координат будут быть простейшим подходом, потому что можно вычислить переводы и вращения за один шаг.

Вопросы:

  • Что является наиболее распространенным подходом в программировании для реализации такого рода вычислений?

  • Есть ли библиотека python, которая может обрабатывать эти преобразования? Я нашел несколько небольших библиотек, таких как transformations.py, но я думаю, что такие преобразования очень распространены, и поэтому я задаюсь вопросом, не является ли это частью scipy или что-то в этом роде.

В конце концов я предполагаю, что я ищу для неправильных терминов и был бы рад, если кто-то может дать подсказку для дальнейшего чтения, примеры кода, библиотеки (особенно для Python).

+0

вообще существует 'numpy', который может дать вам матричное умножение. Поэтому вам просто нужно ввести матрицу преобразования. 'numpy' может инвертировать, транспонировать и делать все с помощью матриц. – kameranis

+0

Что такое COS? –

+0

Я имел в виду систему координат. я просто понял, что общая аббревиатура будет cs, поэтому я исправил это. – wmrch

ответ

-1

numpy Использования и линейная алгебра, чтобы сделать преобразование в качестве матричных умножений

Смежные вопросы