Sdílet prostřednictvím


Matrix4x4 Struktura

Definice

Představuje matici 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)
Dědičnost
Matrix4x4
Implementuje

Poznámky

U maticových Vector2transformací jsou instance , Vector3a Vector4 reprezentovány jako řádky: vektor v je transformován maticí M s násobením virtuálního počítače.

Konstruktory

Matrix4x4(Matrix3x2)

Matrix4x4 Vytvoří objekt ze zadaného Matrix3x2 objektu.

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

Vytvoří matici 4x4 ze zadaných komponent.

Pole

M11

První prvek prvního řádku.

M12

Druhý prvek prvního řádku.

M13

Třetí prvek prvního řádku.

M14

Čtvrtý prvek prvního řádku.

M21

První prvek druhého řádku.

M22

Druhý prvek druhého řádku.

M23

Třetí prvek druhého řádku.

M24

Čtvrtý prvek druhého řádku.

M31

První prvek třetího řádku.

M32

Druhý prvek třetího řádku.

M33

Třetí prvek třetího řádku.

M34

Čtvrtý prvek třetího řádku.

M41

První prvek čtvrtého řádku.

M42

Druhý prvek čtvrtého řádku.

M43

Třetí prvek čtvrtého řádku.

M44

Čtvrtý prvek čtvrtého řádku.

Vlastnosti

Identity

Získá násobitelnou matici identity.

IsIdentity

Určuje, zda je aktuální matice maticí identit.

Item[Int32, Int32]

Získá nebo nastaví element na zadané indexy.

Translation

Získá nebo nastaví komponentu překladu této matice.

Metody

Add(Matrix4x4, Matrix4x4)

Přidá každý prvek v jedné matici s odpovídajícím prvkem v druhé matici.

CreateBillboard(Vector3, Vector3, Vector3, Vector3)

Vytvoří kulový plakát, který se otáčí kolem zadané pozice objektu.

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

Vytvoří válcový plakát, který se otáčí kolem zadané osy.

CreateFromAxisAngle(Vector3, Single)

Vytvoří matici, která se otáčí kolem libovolného vektoru.

CreateFromQuaternion(Quaternion)

Vytvoří matici otáčení ze zadané hodnoty otočení kvaternionu.

CreateFromYawPitchRoll(Single, Single, Single)

Vytvoří matici otáčení ze zadaného yaw, pitch a roll.

CreateLookAt(Vector3, Vector3, Vector3)

Vytvoří matici zobrazení.

CreateLookAtLeftHanded(Vector3, Vector3, Vector3)

Vytvoří matici levého zobrazení.

CreateLookTo(Vector3, Vector3, Vector3)

Vytvoří matici zobrazení zprava.

CreateLookToLeftHanded(Vector3, Vector3, Vector3)

Vytvoří matici levého zobrazení.

CreateOrthographic(Single, Single, Single, Single)

Vytvoří ortografickou perspektivní matici z dané dimenze objemu zobrazení.

CreateOrthographicLeftHanded(Single, Single, Single, Single)

Vytvoří matici levostranné ortografické perspektivy z dané dimenze objemu zobrazení.

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

Vytvoří přizpůsobenou ortografickou projekční matici.

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

Vytvoří levostrannou přizpůsobenou ortografickou projekční matici.

CreatePerspective(Single, Single, Single, Single)

Vytvoří perspektivní matici projekce z dané dimenze objemu zobrazení.

CreatePerspectiveFieldOfView(Single, Single, Single, Single)

Vytvoří perspektivní matici projekce založenou na zorném poli, poměru stran a vzdálenostech blízké a vzdálené roviny pohledu.

CreatePerspectiveFieldOfViewLeftHanded(Single, Single, Single, Single)

Vytvoří matici levostranné perspektivní projekce založenou na zorném poli, poměru stran a vzdálenostech blízké a vzdálené roviny pohledu.

CreatePerspectiveLeftHanded(Single, Single, Single, Single)

Vytvoří matici levostranné perspektivy projekce z dané dimenze objemu zobrazení.

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

Vytvoří přizpůsobenou matici perspektivní projekce.

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

Vytvoří levostrannou přizpůsobenou matici perspektivní projekce.

CreateReflection(Plane)

Vytvoří matici, která odráží souřadnicový systém o zadané rovině.

CreateRotationX(Single)

Vytvoří matici pro otáčení bodů kolem osy X.

CreateRotationX(Single, Vector3)

Vytvoří matici pro otáčení bodů kolem osy X ze středu bodu.

CreateRotationY(Single)

Vytvoří matici pro otáčení bodů kolem osy Y.

CreateRotationY(Single, Vector3)

Množství v radiánech, o které se má otáčet kolem osy Y ze středového bodu.

CreateRotationZ(Single)

Vytvoří matici pro otáčení bodů kolem osy Z.

CreateRotationZ(Single, Vector3)

Vytvoří matici pro otáčení bodů kolem osy Z ze středového bodu.

CreateScale(Single)

Vytvoří jednotnou matici škálování, která se rovnoměrně škáluje na každé ose.

CreateScale(Single, Single, Single)

Vytvoří matici škálování ze zadaných komponent X, Y a Z.

CreateScale(Single, Single, Single, Vector3)

Vytvoří matici škálování, která je posunutá o daný středový bod.

CreateScale(Single, Vector3)

Vytvoří jednotnou matici škálování, která se rovnoměrně škáluje na každé ose se středovým bodem.

CreateScale(Vector3)

Vytvoří matici škálování ze zadaného vektorového měřítka.

CreateScale(Vector3, Vector3)

Vytvoří matici škálování se středovým bodem.

CreateShadow(Vector3, Plane)

Vytvoří matici, která zploštělí geometrii do zadané roviny, jako by odlévání stínu ze zadaného zdroje světla.

CreateTranslation(Single, Single, Single)

Vytvoří matici překladu ze zadaných komponent X, Y a Z.

CreateTranslation(Vector3)

Vytvoří matici překladu ze zadaného trojrozměrného vektoru.

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

Vytvoří matici pravého zobrazení ze zadaných parametrů.

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

Vytvoří levou matici zobrazení ze zadaných parametrů.

CreateWorld(Vector3, Vector3, Vector3)

Vytvoří světovou matici se zadanými parametry.

Decompose(Matrix4x4, Vector3, Quaternion, Vector3)

Pokusí se extrahovat komponenty měřítka, překladu a otočení z dané škálovací, rotační nebo překladové matice. Vrácená hodnota označuje, jestli operace proběhla úspěšně.

Equals(Matrix4x4)

Vrátí hodnotu, která označuje, zda je tato instance a další matice 4x4 rovny.

Equals(Object)

Vrátí hodnotu, která označuje, zda je tato instance a zadaný objekt rovny.

GetDeterminant()

Vypočítá determinant aktuální matice 4x4.

GetHashCode()

Vrátí hodnotu hash pro tuto instanci.

Invert(Matrix4x4, Matrix4x4)

Invertuje zadanou matici. Vrácená hodnota označuje, jestli operace proběhla úspěšně.

Lerp(Matrix4x4, Matrix4x4, Single)

Provede lineární interpolaci z jedné matice do druhé matice na základě hodnoty, která určuje váhu druhé matice.

Multiply(Matrix4x4, Matrix4x4)

Vrátí matici, která je výsledkem vynásobení dvou matic.

Multiply(Matrix4x4, Single)

Vrátí matici, která je výsledkem škálování všech prvků zadané matice skalárním faktorem.

Negate(Matrix4x4)

Neguje zadanou matici vynásobením všech jejích hodnot hodnotou -1.

Subtract(Matrix4x4, Matrix4x4)

Odečte každý prvek v druhé matici od odpovídajícího prvku v první matici.

ToString()

Vrátí řetězec, který představuje tuto matici.

Transform(Matrix4x4, Quaternion)

Transformuje zadanou matici použitím zadaného otočení kvaternionu.

Transpose(Matrix4x4)

Transponuje řádky a sloupce matice.

Operátory

Addition(Matrix4x4, Matrix4x4)

Přidá každý prvek v jedné matici s odpovídajícím prvkem v druhé matici.

Equality(Matrix4x4, Matrix4x4)

Vrátí hodnotu, která označuje, zda jsou zadané matice stejné.

Inequality(Matrix4x4, Matrix4x4)

Vrátí hodnotu, která označuje, zda se zadané matice nerovnají.

Multiply(Matrix4x4, Matrix4x4)

Vrátí matici, která je výsledkem vynásobení dvou matic.

Multiply(Matrix4x4, Single)

Vrátí matici, která je výsledkem škálování všech prvků zadané matice skalárním faktorem.

Subtraction(Matrix4x4, Matrix4x4)

Odečte každý prvek v druhé matici od odpovídajícího prvku v první matici.

UnaryNegation(Matrix4x4)

Neguje zadanou matici vynásobením všech jejích hodnot hodnotou -1.

Platí pro