Ответ 1
Microsoft.Xna.Framework (отправка этой XNA) может выполнить работу.
Библиотека XNA Framework Math имеет несколько базовых геометрических типов, которые можно использовать для управления объектами в 2D или 3D пространстве. Примитивные объекты в этой библиотеке представляют данные, необходимые для представления геометрического объекта или операции над этим объектом. Каждый геометрический тип имеет ряд математических операций, которые поддерживаются для типа.
вектор
XNA Framework предоставляет классы Vector2, Vector3 и Vector4 для представления и управления векторами. Вектор обычно используется для представления направления и величины. Однако в инфраструктуре XNA он также может использоваться для хранения координаты или какого-либо другого типа данных с одинаковыми требованиями к хранению.
Каждый векторный класс имеет методы для выполнения стандартных векторных операций, таких как:
- Точечный продукт
- Перекрестный продукт
- Нормализация
- Преобразование
- Линейная, кубическая, катмаль-ромская или эрмитовая сплайновая интерполяция.
Матрица
XNA Framework предоставляет класс Matrix для преобразования геометрии. Класс Matrix использует основной порядок строк для адресации матриц, что означает, что строка указывается перед столбцом при описании элемента двумерной матрицы. Класс Matrix предоставляет методы для выполнения стандартных матричных операций, таких как вычисление детерминированной или обратной матрицы, в дополнение к вспомогательным методам создания матриц масштабирования, трансляции и вращения.
Кватернионы
XNA Framework предоставляет структуру кватернионов для представления и вычисления эффективного вращения вокруг вектора вокруг заданного угла.