Vector4 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 vektor se čtyřmi hodnotami s plovoucí desetinnou čárkou s jednoduchou přesností.
public value class Vector4 : IEquatable<System::Numerics::Vector4>, IFormattable
public struct Vector4 : IEquatable<System.Numerics.Vector4>, IFormattable
type Vector4 = struct
interface IFormattable
Public Structure Vector4
Implements IEquatable(Of Vector4), IFormattable
- Dědičnost
- Implementuje
Poznámky
Struktura Vector4 poskytuje podporu hardwarové akcelerace.
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 |
|---|---|
| Vector4(ReadOnlySpan<Single>) |
Vytvoří vektor z daného ReadOnlySpan<T>objektu . Rozsah musí obsahovat alespoň 4 prvky. |
| Vector4(Single, Single, Single, Single) |
Vytvoří vektor, jehož prvky mají zadané hodnoty. |
| Vector4(Single) |
Vytvoří nový Vector4 objekt, jehož čtyři prvky mají stejnou hodnotu. |
| Vector4(Vector2, Single, Single) |
Vytvoří nový Vector4 objekt ze zadaného Vector2 objektu a Z a součásti W. |
| Vector4(Vector3, Single) |
Vytvoří nový Vector4 objekt ze zadaného Vector3 objektu a součásti W. |
Pole
| Name | Description |
|---|---|
| W |
W komponenta vektoru. |
| X |
Komponenta X vektoru. |
| Y |
Komponenta Y vektoru. |
| Z |
Komponenta Z vektoru. |
Vlastnosti
| Name | Description |
|---|---|
| AllBitsSet |
Získá vektor, kde jsou všechny bity nastaveny na |
| E |
Získá vektor, jehož prvky jsou rovny E. |
| Epsilon |
Získá vektor, jehož prvky jsou rovny Epsilon. |
| Item[Int32] |
Získá nebo nastaví prvek v zadaném indexu. |
| NaN |
Získá vektor, jehož prvky jsou rovny NaN. |
| NegativeInfinity |
Získá vektor, jehož prvky jsou rovny NegativeInfinity. |
| NegativeZero |
Získá vektor, jehož prvky jsou rovny NegativeZero. |
| One |
Získá vektor, jehož 4 prvky jsou rovny jedné. |
| Pi |
Získá vektor, jehož prvky jsou rovny Pi. |
| PositiveInfinity |
Získá vektor, jehož prvky jsou rovny PositiveInfinity. |
| Tau |
Získá vektor, jehož prvky jsou rovny Tau. |
| UnitW |
Získá vektor (0,0,0,1). |
| UnitX |
Získá vektor (1,0,0,0). |
| UnitY |
Získá vektor (0,1,0,0). |
| UnitZ |
Získá vektor (0,0,1,0). |
| Zero |
Získá vektor, jehož 4 prvky jsou rovny nule. |
Metody
| Name | Description |
|---|---|
| Abs(Vector4) |
Vrátí vektor, jehož prvky jsou absolutními hodnotami jednotlivých prvků zadaného vektoru. |
| Add(Vector4, Vector4) |
Sečte dva vektory dohromady. |
| All(Vector4, Single) |
Určuje, zda jsou všechny prvky vektoru rovny dané hodnotě. |
| AllWhereAllBitsSet(Vector4) |
Určuje, zda všechny prvky vektoru mají všechny své bity nastaveny. |
| AndNot(Vector4, Vector4) |
Vypočítá bitové i dané vektory a ty, které doplňují jiný vektor. |
| Any(Vector4, Single) |
Určuje, zda se některé prvky vektoru rovnají dané hodnotě. |
| AnyWhereAllBitsSet(Vector4) |
Určuje, zda některé prvky vektoru mají všechny své bity nastaveny. |
| BitwiseAnd(Vector4, Vector4) |
Vypočítá bitové a dva vektory. |
| BitwiseOr(Vector4, Vector4) |
Vypočítá bitové nebo dva vektory. |
| Clamp(Vector4, Vector4, Vector4) |
Omezuje vektor mezi minimální a maximální hodnotou. |
| ClampNative(Vector4, Vector4, Vector4) |
Omezuje vektor mezi minimální a maximální hodnotou pomocí chování specifického pro |
| ConditionalSelect(Vector4, Vector4, Vector4) |
Podmíněně vybere hodnotu ze dvou vektorů bitovým způsobem. |
| CopySign(Vector4, Vector4) |
Zkopíruje znaménko prvku vektoru na znaménko pro jednotlivé prvky jiného vektoru. |
| CopyTo(Single[], Int32) |
Zkopíruje prvky vektoru do zadaného pole počínaje zadanou pozicí indexu. |
| CopyTo(Single[]) |
Zkopíruje prvky vektoru do zadaného pole. |
| CopyTo(Span<Single>) |
Zkopíruje vektor do daného Span<T>objektu . Délka cílového rozsahu musí být alespoň 4. |
| Cos(Vector4) |
Vypočítá kosinus každého prvku ve vektoru. |
| Count(Vector4, Single) |
Určuje počet prvků ve vektoru, které jsou rovny dané hodnotě. |
| CountWhereAllBitsSet(Vector4) |
Určuje počet prvků ve vektoru, které mají všechny jejich bity nastaveny. |
| Create(ReadOnlySpan<Single>) |
Vytvoří vektor z daného ReadOnlySpan<T>objektu . Rozsah musí obsahovat alespoň 4 prvky. |
| Create(Single, Single, Single, Single) |
Vytvoří vektor, jehož prvky mají zadané hodnoty. |
| Create(Single) |
Vytvoří nový Vector4 objekt, jehož čtyři prvky mají stejnou hodnotu. |
| Create(Vector2, Single, Single) |
Vytvoří nový Vector4 objekt ze zadaného Vector2 objektu a Z a součásti W. |
| Create(Vector3, Single) |
Vytvoří nový Vector4 objekt ze zadaného Vector3 objektu a součásti W. |
| CreateScalar(Single) |
Vytvoří vektor s inicializovaným X na zadanou hodnotu a zbývající prvky inicializované na nulu. |
| CreateScalarUnsafe(Single) |
Vytvoří vektor s inicializovaným X na zadanou hodnotu a zbývající prvky zůstanou neinicializované. |
| Cross(Vector4, Vector4) |
Vypočítá křížový součin dvou vektorů. Pro homogenní souřadnice je součin váhy novou hmotností výsledného výrobku. |
| DegreesToRadians(Vector4) |
Převede daný vektor ze stupňů na radiány. |
| Distance(Vector4, Vector4) |
Vypočítá euklidskou vzdálenost mezi dvěma danými body. |
| DistanceSquared(Vector4, Vector4) |
Vrátí euklidskou vzdálenost čtverce mezi dvěma zadanými body. |
| Divide(Vector4, Single) |
Vydělí zadaný vektor zadanou skalární hodnotou. |
| Divide(Vector4, Vector4) |
Vydělí první vektor druhou. |
| Dot(Vector4, Vector4) |
Vrátí tečkovaný součin dvou vektorů. |
| Equals(Object) |
Vrátí hodnotu, která určuje, zda je tato instance a zadaný objekt stejné. |
| Equals(Vector4, Vector4) |
Porovná dva vektory a určí, jestli jsou rovny pro jednotlivé prvky. |
| Equals(Vector4) |
Vrátí hodnotu, která určuje, zda jsou tato instance a jiný vektor rovny. |
| EqualsAll(Vector4, Vector4) |
Porovná dva vektory a určí, jestli jsou všechny prvky stejné. |
| EqualsAny(Vector4, Vector4) |
Porovná dva vektory a určí, jestli jsou některé prvky stejné. |
| Exp(Vector4) |
Vypočítá exponenciální hodnotu každého prvku ve vektoru. |
| FusedMultiplyAdd(Vector4, Vector4, Vector4) |
Výpočty ( |
| GetHashCode() |
Vrátí kód hash pro tuto instanci. |
| GreaterThan(Vector4, Vector4) |
Porovná dva vektory a určí, který z prvků je větší. |
| GreaterThanAll(Vector4, Vector4) |
Porovná dva vektory a určí, jestli jsou všechny prvky větší. |
| GreaterThanAny(Vector4, Vector4) |
Porovná dva vektory a určí, jestli jsou některé prvky větší. |
| GreaterThanOrEqual(Vector4, Vector4) |
Porovná dva vektory a určí, která z prvků je větší nebo rovna. |
| GreaterThanOrEqualAll(Vector4, Vector4) |
Porovná dva vektory a určí, jestli jsou všechny prvky větší nebo rovny. |
| GreaterThanOrEqualAny(Vector4, Vector4) |
Porovná dva vektory a určí, jestli jsou některé prvky větší nebo rovny. |
| Hypot(Vector4, Vector4) |
Vypočítá hypotenuse zadanou dvěma vektory představující délky kratších stran v pravoúhlém trojúhelníku. |
| IndexOf(Vector4, Single) |
Určuje index prvního prvku v vektoru, který se rovná dané hodnotě. |
| IndexOfWhereAllBitsSet(Vector4) |
Určuje index prvního prvku v vektoru, který má všechny bity set. |
| IsEvenInteger(Vector4) |
Určuje, které prvky vektoru jsou dokonce celočíselné hodnoty. |
| IsFinite(Vector4) |
Určuje, které prvky vektoru jsou konečné. |
| IsInfinity(Vector4) |
Určuje, které prvky ve vektoru jsou nekonečno. |
| IsInteger(Vector4) |
Určuje, které prvky vektoru jsou celočíselné hodnoty. |
| IsNaN(Vector4) |
Určuje, které prvky vektoru jsou NaN. |
| IsNegative(Vector4) |
Určuje, které prvky vektoru představují záporná reálná čísla. |
| IsNegativeInfinity(Vector4) |
Určuje, které prvky ve vektoru jsou záporné nekonečno. |
| IsNormal(Vector4) |
Určuje, které prvky vektoru jsou normální. |
| IsOddInteger(Vector4) |
Určuje, které prvky vektoru jsou liché celočíselné hodnoty. |
| IsPositive(Vector4) |
Určuje, které prvky vektoru představují kladná reálná čísla. |
| IsPositiveInfinity(Vector4) |
Určuje, které prvky ve vektoru jsou kladné nekonečno. |
| IsSubnormal(Vector4) |
Určuje, které prvky vektoru jsou podnormální. |
| IsZero(Vector4) |
Určuje, které prvky ve vektoru jsou nula. |
| LastIndexOf(Vector4, Single) |
Určuje index posledního prvku ve vektoru, který se rovná dané hodnotě. |
| LastIndexOfWhereAllBitsSet(Vector4) |
Určuje index posledního prvku v vektoru, který má všechny bity set. |
| Length() |
Vrátí délku tohoto vektorového objektu. |
| LengthSquared() |
Vrátí délku vektorového čtverce. |
| Lerp(Vector4, Vector4, Single) |
Provede lineární interpolaci mezi dvěma vektory na základě dané váhy. |
| Lerp(Vector4, Vector4, Vector4) |
Provede lineární interpolaci mezi dvěma vektory na základě dané váhy. |
| LessThan(Vector4, Vector4) |
Porovná dva vektory a určí, která hodnota je menší na základě jednotlivých prvků. |
| LessThanAll(Vector4, Vector4) |
Porovná dva vektory a určí, jestli jsou všechny prvky menší. |
| LessThanAny(Vector4, Vector4) |
Porovná dva vektory a určí, jestli jsou některé prvky menší. |
| LessThanOrEqual(Vector4, Vector4) |
Porovná dva vektory a určí, která hodnota je menší nebo rovna pro jednotlivé prvky. |
| LessThanOrEqualAll(Vector4, Vector4) |
Porovná dva vektory a určí, jestli jsou všechny prvky menší nebo rovny. |
| LessThanOrEqualAny(Vector4, Vector4) |
Porovná dva vektory a určí, jestli jsou některé prvky menší nebo rovny. |
| Load(Single*) |
Načte vektor z daného zdroje. |
| LoadAligned(Single*) |
Načte vektor z daného zarovnaného zdroje. |
| LoadAlignedNonTemporal(Single*) |
Načte vektor z daného zarovnaného zdroje. |
| LoadUnsafe(Single, UIntPtr) |
Načte vektor z daného zdroje a posunu prvku. |
| LoadUnsafe(Single) |
Načte vektor z daného zdroje. |
| Log(Vector4) |
Vypočítá protokol každého prvku vektoru. |
| Log2(Vector4) |
Vypočítá log2 každého prvku vektoru. |
| Max(Vector4, Vector4) |
Vrátí vektor, jehož prvky jsou maximálním počtem dvojic prvků ve dvou zadaných vektorech. |
| MaxMagnitude(Vector4, Vector4) |
Porovná dva vektory s výpočty, které mají větší velikost na základě prvku. |
| MaxMagnitudeNumber(Vector4, Vector4) |
Porovná dva vektory, na bázi jednotlivých prvků, k výpočtu, který má větší velikost a vrací druhou hodnotu, pokud je |
| MaxNative(Vector4, Vector4) |
Porovnáním dvou vektorů určíte, která je větší na základě jednotlivých prvků, pomocí specifického chování platformy pro |
| MaxNumber(Vector4, Vector4) |
Porovná dva vektory, na bázi jednotlivých prvků, k výpočtu, který je větší a vrací druhou hodnotu, pokud je |
| Min(Vector4, Vector4) |
Vrátí vektor, jehož prvky jsou minimálními jednotlivými dvojicemi prvků ve dvou zadaných vektorech. |
| MinMagnitude(Vector4, Vector4) |
Porovná dva vektory s výpočty, které mají menší velikost na základě prvku. |
| MinMagnitudeNumber(Vector4, Vector4) |
Porovná dva vektory, na bázi jednotlivých prvků, k výpočtu, který má menší velikost a vrací druhou hodnotu, pokud je |
| MinNative(Vector4, Vector4) |
Porovnáním dvou vektorů určíte, která z jednotlivých prvků je menší pomocí chování specifického pro platformu a |
| MinNumber(Vector4, Vector4) |
Porovná dva vektory, na bázi jednotlivých prvků, k výpočtu, který je menší a vrací druhou hodnotu, pokud je |
| Multiply(Single, Vector4) |
Vynásobí skalární hodnotu zadaným vektorem. |
| Multiply(Vector4, Single) |
Vynásobí vektor zadaným skalárem. |
| Multiply(Vector4, Vector4) |
Vrátí nový vektor, jehož hodnoty jsou součinem každé dvojice prvků ve dvou zadaných vektorech. |
| MultiplyAddEstimate(Vector4, Vector4, Vector4) |
Vypočítá odhad ( |
| Negate(Vector4) |
Neguje zadaný vektor. |
| None(Vector4, Single) |
Určuje, zda se žádné prvky vektoru nerovnají dané hodnotě. |
| NoneWhereAllBitsSet(Vector4) |
Určuje, zda žádné prvky vektoru nemají všechny své bity nastaveny. |
| Normalize(Vector4) |
Vrátí vektor se stejným směrem jako zadaný vektor, ale s délkou jednoho. |
| OnesComplement(Vector4) |
Vypočítá doplněk vektoru. |
| RadiansToDegrees(Vector4) |
Převede daný vektor z radiánů na stupně. |
| Round(Vector4, MidpointRounding) |
Zaokrouhlí každý prvek ve vektoru na nejbližší celé číslo pomocí zadaného režimu zaokrouhlování. |
| Round(Vector4) |
Zaokrouhlí každý prvek ve vektoru na nejbližší celé číslo pomocí výchozího režimu zaokrouhlování (ToEven). |
| Shuffle(Vector4, Byte, Byte, Byte, Byte) |
Vytvoří nový vektor výběrem hodnot ze vstupního vektoru pomocí sady indexů. |
| Sin(Vector4) |
Vypočítá sinus každého prvku ve vektoru. |
| SinCos(Vector4) |
Vypočítá sinus a kosinus každého prvku ve vektoru. |
| SquareRoot(Vector4) |
Vrátí vektor, jehož prvky jsou druhou odmocninou každého z prvků zadaného vektoru. |
| Subtract(Vector4, Vector4) |
Odečte druhý vektor od prvního. |
| Sum(Vector4) |
Vypočítá součet všech prvků ve vektoru. |
| ToString() |
Vrátí řetězcovou reprezentaci aktuální instance pomocí výchozího formátování. |
| ToString(String, IFormatProvider) |
Vrátí řetězcovou reprezentaci aktuální instance pomocí zadaného řetězce formátu k formátování jednotlivých prvků a zadaného zprostředkovatele formátu pro definování formátování specifického pro jazykovou verzi. |
| ToString(String) |
Vrátí řetězcovou reprezentaci aktuální instance pomocí zadaného formátovacího řetězce k formátování jednotlivých prvků. |
| Transform(Vector2, Matrix4x4) |
Transformuje dvojrozměrný vektor zadanou maticí 4x4. |
| Transform(Vector2, Quaternion) |
Transformuje dvojrozměrný vektor zadanou hodnotou otočení quaternionu. |
| Transform(Vector3, Matrix4x4) |
Transformuje trojrozměrný vektor zadanou maticí 4x4. |
| Transform(Vector3, Quaternion) |
Transformuje trojrozměrný vektor zadanou hodnotou otočení quaternionu. |
| Transform(Vector4, Matrix4x4) |
Transformuje čtyřrozměrný vektor zadanou maticí 4x4. |
| Transform(Vector4, Quaternion) |
Transformuje čtyřrozměrný vektor zadanou hodnotou otočení quaternionu. |
| Truncate(Vector4) |
Zkrátí každý prvek vektoru. |
| TryCopyTo(Span<Single>) |
Pokusí se zkopírovat vektor do daného Span<T>objektu . Délka cílového rozsahu musí být alespoň 4. |
| Xor(Vector4, Vector4) |
Vypočítá exkluzivní nebo dva vektory. |
Operátory
| Name | Description |
|---|---|
| Addition(Vector4, Vector4) |
Sečte dva vektory dohromady. |
| BitwiseAnd(Vector4, Vector4) |
Vypočítá bitové a dva vektory. |
| BitwiseOr(Vector4, Vector4) |
Vypočítá bitové nebo dva vektory. |
| Division(Vector4, Single) |
Vydělí zadaný vektor zadanou skalární hodnotou. |
| Division(Vector4, Vector4) |
Vydělí první vektor druhou. |
| Equality(Vector4, Vector4) |
Vrátí hodnotu, která určuje, zda je každá dvojice prvků ve dvou zadaných vektorech rovna. |
| ExclusiveOr(Vector4, Vector4) |
Vypočítá exkluzivní nebo dva vektory. |
| Inequality(Vector4, Vector4) |
Vrátí hodnotu, která určuje, zda dva zadané vektory nejsou rovny. |
| LeftShift(Vector4, Int32) |
Posune každý prvek vektoru doleva o zadanou hodnotu. |
| Multiply(Single, Vector4) |
Znásobí skalární hodnotu zadaným vektorem. |
| Multiply(Vector4, Single) |
Násobí zadaný vektor zadanou skalární hodnotou. |
| Multiply(Vector4, Vector4) |
Vrátí nový vektor, jehož hodnoty jsou součinem každé dvojice prvků ve dvou zadaných vektorech. |
| OnesComplement(Vector4) |
Vypočítá doplněk vektoru. |
| RightShift(Vector4, Int32) |
Posune (podepsáno) každý prvek vektoru doprava o zadanou částku. |
| Subtraction(Vector4, Vector4) |
Odečte druhý vektor od prvního. |
| UnaryNegation(Vector4) |
Neguje zadaný vektor. |
| UnaryPlus(Vector4) |
Vrátí daný vektor beze změny. |
| UnsignedRightShift(Vector4, Int32) |
Posune (bez znaménka) každý prvek vektoru doprava o zadanou velikost. |
Metody rozšíření
| Name | Description |
|---|---|
| AsPlane(Vector4) | |
| AsQuaternion(Vector4) |
Reinterpretuje Vector4 jako nový Quaternion. |
| AsVector128(Vector4) |
Reinterpretuje Vector4 jako nový Vector128<T>. |
| AsVector2(Vector4) | |
| AsVector3(Vector4) | |
| ExtractMostSignificantBits(Vector4) |
Extrahuje nejvýznamnější bit z každého prvku vektoru. |
| GetElement(Vector4, Int32) |
Získá prvek v zadaném indexu. |
| Store(Vector4, Single*) |
Uloží vektor v daném cíli. |
| StoreAligned(Vector4, Single*) |
Uloží vektor v daném cíli zarovnaném na 16 bajtů. |
| StoreAlignedNonTemporal(Vector4, Single*) |
Uloží vektor v daném cíli zarovnaném na 16 bajtů. |
| StoreUnsafe(Vector4, Single, UIntPtr) |
Uloží vektor v daném cíli. |
| StoreUnsafe(Vector4, Single) |
Uloží vektor v daném cíli. |
| ToScalar(Vector4) |
Převede daný vektor na skalár obsahující hodnotu prvního prvku. |
| WithElement(Vector4, Int32, Single) |
Vytvoří nový Vector128<T> prvek se zadaným indexem nastaveným na zadanou hodnotu a zbývající prvky jsou nastaveny na stejnou hodnotu jako v daném vektoru. |