Freigeben über


Vector3 Struktur

Definition

Stellt einen Vektor mit drei Gleitkommawerten mit einfacher Genauigkeit dar.

public value class Vector3 : IEquatable<System::Numerics::Vector3>, IFormattable
public struct Vector3 : IEquatable<System.Numerics.Vector3>, IFormattable
type Vector3 = struct
    interface IFormattable
Public Structure Vector3
Implements IEquatable(Of Vector3), IFormattable
Vererbung
Vector3
Implementiert

Hinweise

Die Vector3-Struktur bietet Unterstützung für die Hardwarebeschleunigung.

Bei Matrixtransformationen werden die Vector2, Vector3und Vector4 Instanzen als Zeilen dargestellt: Ein Vektor v wird durch eine Matrix M mit vM- Multiplikation transformiert.

Konstruktoren

Vector3(ReadOnlySpan<Single>)

Erstellt einen Vektor aus der angegebenen ReadOnlySpan<T>. Die Spanne muss mindestens 3 Elemente enthalten.

Vector3(Single)

Erstellt ein neues Vector3-Objekt, dessen drei Elemente denselben Wert aufweisen.

Vector3(Single, Single, Single)

Erstellt einen Vektor, dessen Elemente die angegebenen Werte aufweisen.

Vector3(Vector2, Single)

Erstellt ein neues Vector3 -Objekt aus dem angegebenen Vector2 -Objekt und dem angegebenen Wert.

Felder

X

Die X-Komponente des Vektors.

Y

Die Y-Komponente des Vektors.

Z

Die Z-Komponente des Vektors.

Eigenschaften

Item[Int32]

Ruft das Element am angegebenen Index ab oder legt es fest.

One

Ruft einen Vektor ab, dessen 3 Elemente gleich einem sind.

UnitX

Ruft den Vektor (1,0,0) ab.

UnitY

Ruft den Vektor ab (0,1,0).

UnitZ

Ruft den Vektor (0,0,1) ab.

Zero

Ruft einen Vektor ab, dessen 3 Elemente gleich Null sind.

Methoden

Abs(Vector3)

Gibt einen Vektor zurück, dessen Elemente die absoluten Werte der einzelnen Elemente des angegebenen Vektors sind.

Add(Vector3, Vector3)

Fügt zwei Vektoren zusammen.

Clamp(Vector3, Vector3, Vector3)

Schränkt einen Vektor zwischen einem Minimum und einem Maximalwert ein.

CopyTo(Single[])

Kopiert die Elemente des Vektors in ein angegebenes Array.

CopyTo(Single[], Int32)

Kopiert die Elemente des Vektors in ein angegebenes Array, beginnend mit einer angegebenen Indexposition.

CopyTo(Span<Single>)

Kopiert den Vektor in den angegebenen Span<T>. Die Länge des Zielbereichs muss mindestens 3 sein.

Create(ReadOnlySpan<Single>)

Erstellt einen Vektor aus der angegebenen ReadOnlySpan<T>. Die Spanne muss mindestens 3 Elemente enthalten.

Create(Single)

Erstellt ein neues Vector3-Objekt, dessen drei Elemente denselben Wert aufweisen.

Create(Single, Single, Single)

Erstellt einen Vektor, dessen Elemente die angegebenen Werte aufweisen.

Create(Vector2, Single)

Erstellt ein neues Vector3-Objekt aus dem angegebenen Vector2-Objekt und einer Z-Komponente.

Cross(Vector3, Vector3)

Berechnet das Kreuzprodukt von zwei Vektoren.

Distance(Vector3, Vector3)

Berechnet den Euklidischen Abstand zwischen den beiden angegebenen Punkten.

DistanceSquared(Vector3, Vector3)

Gibt den Euklidischen Abstand zwischen zwei angegebenen Punkten zurück.

Divide(Vector3, Single)

Dividiert den angegebenen Vektor durch einen angegebenen Skalarwert.

Divide(Vector3, Vector3)

Dividiert den ersten Vektor durch die zweite.

Dot(Vector3, Vector3)

Gibt das Punktprodukt von zwei Vektoren zurück.

Equals(Object)

Gibt einen Wert zurück, der angibt, ob diese Instanz und ein angegebenes Objekt gleich sind.

Equals(Vector3)

Gibt einen Wert zurück, der angibt, ob diese Instanz und ein anderer Vektor gleich sind.

FusedMultiplyAdd(Vector3, Vector3, Vector3)

Stellt einen Vektor mit drei Gleitkommawerten mit einfacher Genauigkeit dar.

GetHashCode()

Gibt den Hashcode für diese Instanz zurück.

Length()

Gibt die Länge dieses Vektorobjekts zurück.

LengthSquared()

Gibt die Länge des Vektor-Quadrats zurück.

Lerp(Vector3, Vector3, Single)

Führt eine lineare Interpolation zwischen zwei Vektoren basierend auf der angegebenen Gewichtung aus.

Max(Vector3, Vector3)

Gibt einen Vektor zurück, dessen Elemente die maximale Anzahl der Elementepaare in zwei angegebenen Vektoren darstellen.

Min(Vector3, Vector3)

Gibt einen Vektor zurück, dessen Elemente das Minimum der einzelnen Elementepaare in zwei angegebenen Vektoren sind.

Multiply(Single, Vector3)

Multipliziert einen Skalarwert durch einen angegebenen Vektor.

Multiply(Vector3, Single)

Multipliziert einen Vektor mit einem angegebenen Skalar.

Multiply(Vector3, Vector3)

Gibt einen neuen Vektor zurück, dessen Werte das Produkt der einzelnen Elementepaare in zwei angegebenen Vektoren sind.

MultiplyAddEstimate(Vector3, Vector3, Vector3)

Stellt einen Vektor mit drei Gleitkommawerten mit einfacher Genauigkeit dar.

Negate(Vector3)

Hebt einen angegebenen Vektor auf.

Normalize(Vector3)

Gibt einen Vektor mit der gleichen Richtung wie der angegebene Vektor zurück, aber mit einer Länge von 1.

Reflect(Vector3, Vector3)

Gibt die Spiegelung eines Vektors von einer Oberfläche zurück, die die angegebene Normalität aufweist.

SquareRoot(Vector3)

Gibt einen Vektor zurück, dessen Elemente die Quadratwurzel der einzelnen Elemente eines angegebenen Vektors sind.

Subtract(Vector3, Vector3)

Subtrahiert den zweiten Vektor vom ersten.

ToString()

Gibt die Zeichenfolgendarstellung der aktuellen Instanz mithilfe der Standardformatierung zurück.

ToString(String)

Gibt die Zeichenfolgendarstellung der aktuellen Instanz mithilfe der angegebenen Formatzeichenfolge zurück, um einzelne Elemente zu formatieren.

ToString(String, IFormatProvider)

Gibt die Zeichenfolgendarstellung der aktuellen Instanz mithilfe der angegebenen Formatzeichenfolge zurück, um einzelne Elemente und den angegebenen Formatanbieter zu formatieren, um kulturspezifische Formatierungen zu definieren.

Transform(Vector3, Matrix4x4)

Transformiert einen Vektor durch eine angegebene 4x4-Matrix.

Transform(Vector3, Quaternion)

Transformiert einen Vektor durch den angegebenen Quaternion-Drehungswert.

TransformNormal(Vector3, Matrix4x4)

Transformiert eine Vektornormal durch die angegebene 4x4-Matrix.

TryCopyTo(Span<Single>)

Versucht, den Vektor in den angegebenen Span<T>zu kopieren. Die Länge des Zielbereichs muss mindestens 3 sein.

Operatoren

Addition(Vector3, Vector3)

Fügt zwei Vektoren zusammen.

Division(Vector3, Single)

Dividiert den angegebenen Vektor durch einen angegebenen Skalarwert.

Division(Vector3, Vector3)

Dividiert den ersten Vektor durch die zweite.

Equality(Vector3, Vector3)

Gibt einen Wert zurück, der angibt, ob jedes Elementpaar in zwei angegebenen Vektoren gleich ist.

Inequality(Vector3, Vector3)

Gibt einen Wert zurück, der angibt, ob zwei angegebene Vektoren nicht gleich sind.

Multiply(Single, Vector3)

Multiples the scalar value by the specified vector.

Multiply(Vector3, Single)

Multiples the specified vector by the specified scalar value.

Multiply(Vector3, Vector3)

Gibt einen neuen Vektor zurück, dessen Werte das Produkt der einzelnen Elementepaare in zwei angegebenen Vektoren sind.

Subtraction(Vector3, Vector3)

Subtrahiert den zweiten Vektor vom ersten.

UnaryNegation(Vector3)

Hebt den angegebenen Vektor ab.

Erweiterungsmethoden

AsVector4(Vector3)

Wandelt eine Vector3 in eine neue Vector4 um, wobei die neuen Elemente null sind.

AsVector4Unsafe(Vector3)

Wandelt eine Vector3 in eine neue Vector4 um, wobei die neuen Elemente nicht definiert sind.

AsVector128(Vector3)

Interpretiert eine Vector3 als neue Vector128<T>neu.

AsVector128Unsafe(Vector3)

Stellt einen Vektor mit drei Gleitkommawerten mit einfacher Genauigkeit dar.

Gilt für: