Поделиться через


Matrix4x4 Структура

Определение

Представляет матрицу 4x4.

public value class Matrix4x4 : IEquatable<System::Numerics::Matrix4x4>
public struct Matrix4x4 : IEquatable<System.Numerics.Matrix4x4>
type Matrix4x4 = struct
Public Structure Matrix4x4
Implements IEquatable(Of Matrix4x4)
Наследование
Matrix4x4
Реализации

Комментарии

В матричных преобразованиях экземпляры Vector2, Vector3 и Vector4 отображаются в виде строк: вектор v преобразуется матрицей M с помощью умножения vM.

Конструкторы

Matrix4x4(Matrix3x2)

Создает объект Matrix4x4 из указанного объекта Matrix3x2.

Matrix4x4(Single, Single, Single, Single, Single, Single, Single, Single, Single, Single, Single, Single, Single, Single, Single, Single)

Создает матрицу 4x4 на основе заданных координат.

Поля

M11

Первый элемент первой строки.

M12

Второй элемент первой строки.

M13

Третий элемент первой строки.

M14

Четвертый элемент первой строки.

M21

Первый элемент второй строки.

M22

Второй элемент второй строки.

M23

Третий элемент второй строки.

M24

Четвертый элемент второй строки.

M31

Первый элемент третьей строки.

M32

Второй элемент третьей строки.

M33

Третий элемент третьей строки.

M34

Четвертый элемент третьей строки.

M41

Первый элемент четвертой строки.

M42

Второй элемент четвертой строки.

M43

Третий элемент четвертой строки.

M44

Четвертый элемент четвертой строки.

Свойства

Identity

Получает матрицу мультипликативного тождества.

IsIdentity

Указывает, является ли текущая матрица единичной матрицей.

Item[Int32, Int32]

Возвращает или задает элемент по указанным индексам.

Translation

Получает или задает координату трансляции данной матрицы.

Методы

Add(Matrix4x4, Matrix4x4)

Складывает каждый элемент в одной матрице с соответствующим элементом во второй матрице.

CreateBillboard(Vector3, Vector3, Vector3, Vector3)

Создает сферический элемент с объявлением, который вращается вокруг заданной позиции объекта.

CreateConstrainedBillboard(Vector3, Vector3, Vector3, Vector3, Vector3)

Создает цилиндрический элемент с объявлением, который вращается вокруг заданной оси.

CreateFromAxisAngle(Vector3, Single)

Создает матрицу, которая вращается вокруг произвольного вектора.

CreateFromQuaternion(Quaternion)

Создает матрицу поворота на основе заданного значения поворота кватерниона.

CreateFromYawPitchRoll(Single, Single, Single)

Создает матрицу поворота на основе заданного значения нутации, прецессии и собственного вращения.

CreateLookAt(Vector3, Vector3, Vector3)

Создает матрицу просмотра.

CreateLookAtLeftHanded(Vector3, Vector3, Vector3)

Создает левую матрицу представления.

CreateLookTo(Vector3, Vector3, Vector3)

Создает матрицу представления правой рукой.

CreateLookToLeftHanded(Vector3, Vector3, Vector3)

Создает левую матрицу представления.

CreateOrthographic(Single, Single, Single, Single)

Создает матрицу ортогональной перспективы на основе данных размеров отображаемого объема.

CreateOrthographicLeftHanded(Single, Single, Single, Single)

Создает левую матрицу орфографической перспективы на основе заданных размеров объема представления.

CreateOrthographicOffCenter(Single, Single, Single, Single, Single, Single)

Создает настраиваемую матрицу ортогональной проекции.

CreateOrthographicOffCenterLeftHanded(Single, Single, Single, Single, Single, Single)

Создает левую настраиваемую матрицу орфографической проекции.

CreatePerspective(Single, Single, Single, Single)

Создает матрицу перспективы на основе данных размеров отображаемого объема.

CreatePerspectiveFieldOfView(Single, Single, Single, Single)

Создает матрицу перспективы на основе поля зрения, пропорций и расстояния до ближней и дальней плоскости просмотра.

CreatePerspectiveFieldOfViewLeftHanded(Single, Single, Single, Single)

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

CreatePerspectiveLeftHanded(Single, Single, Single, Single)

Создает левую матрицу проекции перспективы на основе заданных размеров объема представления.

CreatePerspectiveOffCenter(Single, Single, Single, Single, Single, Single)

Создает настраиваемую матрицу перспективы.

CreatePerspectiveOffCenterLeftHanded(Single, Single, Single, Single, Single, Single)

Создает левую настраиваемую матрицу проекции перспективы.

CreateReflection(Plane)

Создает матрицу, отражающую систему координат для указанной плоскости.

CreateRotationX(Single)

Создает матрицу для поворота точек вокруг оси X.

CreateRotationX(Single, Vector3)

Создает матрицу для поворота точек вокруг оси X относительно центральной точки.

CreateRotationY(Single)

Создает матрицу для поворота точек вокруг оси Y.

CreateRotationY(Single, Vector3)

Значение поворота вокруг оси Y относительно центральной точки (в радианах).

CreateRotationZ(Single)

Создает матрицу для поворота точек вокруг оси Z.

CreateRotationZ(Single, Vector3)

Создает матрицу для поворота точек вокруг оси Z относительно центральной точки.

CreateScale(Single)

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

CreateScale(Single, Single, Single)

Создает матрицу масштабирования на основе заданных координат X, Y и Z.

CreateScale(Single, Single, Single, Vector3)

Создает матрицу масштабирования со смещением на заданную центральную точку.

CreateScale(Single, Vector3)

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

CreateScale(Vector3)

Создает матрицу масштабирования на основе заданного масштаба вектора.

CreateScale(Vector3, Vector3)

Создает матрицу масштабирования с центральной точкой.

CreateShadow(Vector3, Plane)

Создает матрицу, которая создает проекцию геометрической фигуры на указанной плоскости подобно отбрасыванию тени от указанного источника света.

CreateTranslation(Single, Single, Single)

Создает матрицу трансляции на основе заданных координат X, Y и Z.

CreateTranslation(Vector3)

Создает матрицу трансляции на основе заданного трехмерного вектора.

CreateViewport(Single, Single, Single, Single, Single, Single)

Создает правую матрицу окна просмотра на основе указанных параметров.

CreateViewportLeftHanded(Single, Single, Single, Single, Single, Single)

Создает левую матрицу окна просмотра на основе указанных параметров.

CreateWorld(Vector3, Vector3, Vector3)

Создает мировую матрицу с заданными параметрами.

Decompose(Matrix4x4, Vector3, Quaternion, Vector3)

Пытается извлечь координаты масштаба, трансляции и поворота на основе данной матрицы масштабирования, поворота или трансляции. Возвращаемое значение указывает, успешно ли выполнена операция.

Equals(Matrix4x4)

Возвращает значение, указывающее, равен ли данный экземпляр другой матрице 4x4.

Equals(Object)

Возвращает значение, указывающее, равен ли данный экземпляр указанному объекту.

GetDeterminant()

Вычисляет определитель текущей матрицы 4x4.

GetHashCode()

Возвращает хэш-код данного экземпляра.

Invert(Matrix4x4, Matrix4x4)

Инвертирует заданную матрицу. Возвращаемое значение указывает, успешно ли выполнена операция.

Lerp(Matrix4x4, Matrix4x4, Single)

Выполняет линейную интерполяцию из одной матрицы во вторую матрицу на основе значения, указывающего взвешивание второй матрицы.

Multiply(Matrix4x4, Matrix4x4)

Возвращает матрицу, полученную в результате перемножения двух матриц.

Multiply(Matrix4x4, Single)

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

Negate(Matrix4x4)

Преобразует заданную матрицу в отрицательную, умножая все ее значения на "-1".

Subtract(Matrix4x4, Matrix4x4)

Вычитает каждый элемент во второй матрице из соответствующего элемента в первой матрице.

ToString()

Возвращает строку, представляющую данную матрицу.

Transform(Matrix4x4, Quaternion)

Преобразует заданную матрицу, применяя указанный поворот кватерниона.

Transpose(Matrix4x4)

Переставляет строки и столбцы матрицы.

Операторы

Addition(Matrix4x4, Matrix4x4)

Складывает каждый элемент в одной матрице с соответствующим элементом во второй матрице.

Equality(Matrix4x4, Matrix4x4)

Возвращает значение, указывающее на равенство заданных матриц.

Inequality(Matrix4x4, Matrix4x4)

Возвращает значение, указывающее на неравенство заданных матриц.

Multiply(Matrix4x4, Matrix4x4)

Возвращает матрицу, полученную в результате перемножения двух матриц.

Multiply(Matrix4x4, Single)

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

Subtraction(Matrix4x4, Matrix4x4)

Вычитает каждый элемент во второй матрице из соответствующего элемента в первой матрице.

UnaryNegation(Matrix4x4)

Преобразует заданную матрицу в отрицательную, умножая все ее значения на "-1".

Применяется к