Matrix4x4 Struktura
Definice
Důležité
Některé informace platí pro předběžně vydaný produkt, který se může zásadně změnit, než ho výrobce nebo autor vydá. Microsoft neposkytuje žádné záruky, výslovné ani předpokládané, týkající se zde uváděných informací.
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
- Implementuje
Poznámky
U maticových transformací Vector2jsou vzorce a Vector3Vector4 instance reprezentovány jako řádky: vektor v je transformován maticí M s násobením virtuálního počítače.
Konstruktory
| Name | Description |
|---|---|
| Matrix4x4(Matrix3x2) | |
| 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
| Name | Description |
|---|---|
| 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
| Name | Description |
|---|---|
| Identity |
Získá matici násobení identity. |
| IsIdentity |
Určuje, jestli aktuální matice představuje matici identity. |
| Item[Int32, Int32] |
Získá nebo nastaví prvek na zadaných indexech. |
| Item[Int32] |
Získá nebo nastaví řádek v zadaném indexu. |
| Translation |
Získá nebo nastaví komponentu překladu této matice. |
| W |
Získá nebo nastaví čtvrtý řádek matice. |
| X |
Získá nebo nastaví první řádek matice. |
| Y |
Získá nebo nastaví druhý řádek matice. |
| Z |
Získá nebo nastaví třetí řádek matice. |
Metody
| Name | Description |
|---|---|
| Add(Matrix4x4, Matrix4x4) |
Přidá každý prvek v jedné matici s odpovídajícím prvkem v druhé matici. |
| Create(Matrix3x2) | |
| Create(Single, Single, Single, Single, Single, Single, Single, Single, Single, Single, Single, Single, Single, Single, Single, Single) |
Vytvoří Matrix3x2 ze zadaných prvků. |
| Create(Single) |
Matrix4x4 Vytvoří 16 prvků, jejichž hodnota je nastavena na zadanou hodnotu. |
| Create(Vector4, Vector4, Vector4, Vector4) |
Vytvoří ze zadaných řádků.Matrix4x4 |
| Create(Vector4) |
Matrix4x4 Vytvoří, jehož čtyři řádky jsou nastaveny na zadanou hodnotu. |
| CreateBillboard(Vector3, Vector3, Vector3, Vector3) |
Vytvoří kulový plakát, který se otočí kolem zadané pozice objektu. |
| CreateBillboardLeftHanded(Vector3, Vector3, Vector3, Vector3) |
Vytvoří kulovou matici s levou rukou, která se otočí kolem zadané pozice objektu. |
| CreateConstrainedBillboard(Vector3, Vector3, Vector3, Vector3, Vector3) |
Vytvoří válcový plakát, který se otočí kolem zadané osy. |
| CreateConstrainedBillboardLeftHanded(Vector3, Vector3, Vector3, Vector3, Vector3) |
Vytvoří válcovou desku válcové desky, která se otočí kolem zadané osy. |
| CreateFromAxisAngle(Vector3, Single) |
Vytvoří matici, která se otočí kolem libovolného vektoru. |
| CreateFromQuaternion(Quaternion) |
Vytvoří matici otočení ze zadané hodnoty otočení quaternionu. |
| CreateFromYawPitchRoll(Single, Single, Single) |
Vytvoří matici otáčení ze zadané pily, rozteče a hodu. |
| CreateLookAt(Vector3, Vector3, Vector3) |
Vytvoří matici zobrazení. |
| CreateLookAtLeftHanded(Vector3, Vector3, Vector3) |
Vytvoří matici zobrazení vlevo. |
| CreateLookTo(Vector3, Vector3, Vector3) |
Vytvoří matici zobrazení v pravém rohu. |
| CreateLookToLeftHanded(Vector3, Vector3, Vector3) |
Vytvoří matici zobrazení vlevo. |
| CreateOrthographic(Single, Single, Single, Single) |
Vytvoří orthografickou matici perspektivy z daných dimenzí objemu zobrazení. |
| CreateOrthographicLeftHanded(Single, Single, Single, Single) |
Vytvoří matici perspektivy s levou rukou z daných dimenzí objemu zobrazení. |
| CreateOrthographicOffCenter(Single, Single, Single, Single, Single, Single) |
Vytvoří přizpůsobenou ortografickou matici projekce. |
| CreateOrthographicOffCenterLeftHanded(Single, Single, Single, Single, Single, Single) |
Vytvoří přizpůsobenou ortografickou matici projekce s levým rukou. |
| CreatePerspective(Single, Single, Single, Single) |
Vytvoří perspektivní projekční matici z daných dimenzí objemu zobrazení. |
| CreatePerspectiveFieldOfView(Single, Single, Single, Single) |
Vytvoří perspektivní matici projekce na základě pohledu, poměru stran a vzdáleností roviny blízkého a vzdáleného pohledu. |
| CreatePerspectiveFieldOfViewLeftHanded(Single, Single, Single, Single) |
Vytvoří matici projekce s levou perspektivou na základě pole zobrazení, poměru stran a vzdáleností roviny blízkého a vzdáleného pohledu. |
| CreatePerspectiveLeftHanded(Single, Single, Single, Single) |
Vytvoří matici projekce z levé perspektivy z daných dimenzí objemu zobrazení. |
| CreatePerspectiveOffCenter(Single, Single, Single, Single, Single, Single) |
Vytvoří přizpůsobenou matici projekce perspektivy. |
| CreatePerspectiveOffCenterLeftHanded(Single, Single, Single, Single, Single, Single) |
Vytvoří přizpůsobenou matici projekce perspektivy s levou rukou. |
| CreateReflection(Plane) |
Vytvoří matici, která odráží souřadnicový systém o zadané rovině. |
| CreateRotationX(Single, Vector3) |
Vytvoří matici pro otáčení bodů kolem osy X ze středu. |
| CreateRotationX(Single) |
Vytvoří matici pro otáčení bodů kolem osy X. |
| CreateRotationY(Single, Vector3) |
Množství v radiánech, o které se má otočit kolem osy Y ze středu. |
| CreateRotationY(Single) |
Vytvoří matici pro otáčení bodů kolem osy Y. |
| CreateRotationZ(Single, Vector3) |
Vytvoří matici pro otáčení bodů kolem osy Z ze středu. |
| CreateRotationZ(Single) |
Vytvoří matici pro otáčení bodů kolem osy Z. |
| CreateScale(Single, Single, Single, Vector3) |
Vytvoří matici škálování, která je posunutá daným středovým bodem. |
| CreateScale(Single, Single, Single) |
Vytvoří matici škálování ze zadaných komponent X, Y a Z. |
| CreateScale(Single, Vector3) |
Vytvoří jednotnou matici měřítka, která se rovnoměrně škáluje na každé ose se středovým bodem. |
| CreateScale(Single) |
Vytvoří jednotnou matici škálování, která se rovnoměrně škáluje na každé ose. |
| CreateScale(Vector3, Vector3) |
Vytvoří matici škálování se středovým bodem. |
| CreateScale(Vector3) |
Vytvoří matici škálování ze zadaného vektorového měřítka. |
| CreateShadow(Vector3, Plane) |
Vytvoří matici, která zploštělí geometrii do zadané roviny, jako by přetypová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 3rozměrného vektoru. |
| CreateViewport(Single, Single, Single, Single, Single, Single) |
Vytvoří z zadaných parametrů matici oblasti zobrazení v pravém rohu. |
| CreateViewportLeftHanded(Single, Single, Single, Single, Single, Single) |
Vytvoří levou matici oblasti 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ály, otočení nebo matice překladu. Vrácená hodnota označuje, jestli operace proběhla úspěšně. |
| Equals(Matrix4x4) |
Vrátí hodnotu, která určuje, zda je tato instance a další matice 4x4 rovna. |
| Equals(Object) |
Vrátí hodnotu, která určuje, zda je tato instance a zadaný objekt stejné. |
| GetDeterminant() |
Vypočítá determinant aktuální matice 4x4. |
| GetElement(Int32, Int32) |
Získá prvek na zadaném řádku a sloupci. |
| GetHashCode() |
Vrátí kód hash pro tuto instanci. |
| GetRow(Int32) |
Získá nebo nastaví řádek v zadaném indexu. |
| 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é 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 hodnot hodnotou -1. |
| Subtract(Matrix4x4, Matrix4x4) |
Odečte každý prvek v druhé matici od jeho 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í quaternionu. |
| Transpose(Matrix4x4) |
Transponuje řádky a sloupce matice. |
| WithElement(Int32, Int32, Single) |
Vytvoří novou Matrix4x4 s prvkem na zadaném řádku a sloupci nastaveném na danou hodnotu a zbývající prvky nastavené na stejnou hodnotu jako v aktuální matici. |
| WithRow(Int32, Vector4) |
Vytvoří novou Matrix4x4 s řádkem v zadaném indexu nastaveném na danou hodnotu a zbývající řádky nastavené na stejnou hodnotu jako v aktuální matici. |
Operátory
| Name | Description |
|---|---|
| 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á určuje, zda jsou zadané matice rovny. |
| Inequality(Matrix4x4, Matrix4x4) |
Vrátí hodnotu, která určuje, zda zadané matice nejsou rovny. |
| 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 jeho odpovídajícího prvku v první matici. |
| UnaryNegation(Matrix4x4) |
Neguje zadanou matici vynásobením všech hodnot hodnotou -1. |