Vector2

StockSharp.Xaml.Charting.Rendering.HighQualityRasterizer.Agg.VectorMath

Stellt einen 2D-Vektor unter Verwendung von zwei Gleitkommazahlen mit doppelter Präzision dar.

Implementiert: IEquatable<Vector2>

Konstruktoren

Vector2
public Vector2(double x, double y)
vector2 = Vector2(x, y)

Konstruiert linken Vektor mit den angegebenen Koordinaten.

x
Die X-Koordinate.
y
Die Y-Koordinate.

Eigenschaften

Length
public double Length { get; }
value = vector2.Length

Bekommt die Länge (Magnitude) des Vektors.

LengthSquared
public double LengthSquared { get; }
value = vector2.LengthSquared

Bekommt das Quadrat der Vektorlänge (Magnitude).

PerpendicularLeft
public Vector2 PerpendicularLeft { get; }
value = vector2.PerpendicularLeft

Erhält den senkrechten Vektor auf der linken Seite dieses Vektors.

PerpendicularRight
public Vector2 PerpendicularRight { get; }
value = vector2.PerpendicularRight

Erhält den senkrechten Vektor auf der rechten Seite dieses Vektors.

Methoden

Add
public static void Add(Vector2 a, Vector2 b, Vector2 result)
Vector2.Add(a, b, result)

Addiert zwei Vektoren.

a
Linker Operand.
b
rechter Operand.
result
Ergebnis der Operation.
Add
public static Vector2 Add(Vector2 a, Vector2 b)
result = Vector2.Add(a, b)

Addiert zwei Vektoren.

a
Linker Operand.
b
rechter Operand.

Rückgabe: Ergebnis der Operation.

BaryCentric
public static void BaryCentric(Vector2 a, Vector2 b, Vector2 c, double u, double v, Vector2 result)
Vector2.BaryCentric(a, b, c, u, v, result)

Interpolieren Sie 3 Vektoren mit Barycentric Koordinaten

a
Erster Eingangsvektor.
b
zweiter Eingangsvektor.
c
dritter Eingangsvektor.
u
Erste baryzentrische Koordinate.
v
Zweite Barycentric-Koordinate.
result
Ausgangsvektor a wenn u = v = 0, b wenn u = 1, v = 0, c wenn u = 0, v = 1 und eine lineare Kombination von a, b, c ansonsten
BaryCentric
public static Vector2 BaryCentric(Vector2 a, Vector2 b, Vector2 c, double u, double v)
result = Vector2.BaryCentric(a, b, c, u, v)

Interpolieren Sie 3 Vektoren mit Barycentric Koordinaten

a
erster Eingangsvektor
b
zweiter Eingangsvektor
c
dritter Eingangsvektor
u
Erste baryzentrische Koordinate
v
Zweite Barycentric-Koordinate

Rückgabe: a wenn u = v = 0, b wenn u = 1,v = 0, c wenn u = 0,v = 1 und eine lineare Kombination von a,b,c ansonsten

Clamp
public static void Clamp(Vector2 vec, Vector2 min, Vector2 max, Vector2 result)
Vector2.Clamp(vec, min, max, result)

Einen Vektor an den vorgegebenen Minimal- und Maximalvektoren klemmen

vec
Eingangsvektor
min
Mindestvektor
max
Maximalvektor
result
Der geklemmte Vektor
Clamp
public static Vector2 Clamp(Vector2 vec, Vector2 min, Vector2 max)
result = Vector2.Clamp(vec, min, max)

Einen Vektor an den vorgegebenen Minimal- und Maximalvektoren klemmen

vec
Eingangsvektor
min
Mindestvektor
max
Maximalvektor

Rückgabe: Der geklemmte Vektor

ComponentMax
public static void ComponentMax(Vector2 a, Vector2 b, Vector2 result)
Vector2.ComponentMax(a, b, result)

Berechnen Sie das komponentenweise Maximum von zwei Vektoren

a
erster Operand
b
zweiter Operand
result
Das komponentenweise Maximum
ComponentMax
public static Vector2 ComponentMax(Vector2 a, Vector2 b)
result = Vector2.ComponentMax(a, b)

Berechnen Sie das komponentenweise Maximum von zwei Vektoren

a
erster Operand
b
zweiter Operand

Rückgabe: Das komponentenweise Maximum

ComponentMin
public static void ComponentMin(Vector2 a, Vector2 b, Vector2 result)
Vector2.ComponentMin(a, b, result)

Berechnen Sie das komponentenweise Minimum von zwei Vektoren

a
erster Operand
b
zweiter Operand
result
Das komponentenweise Minimum
ComponentMin
public static Vector2 ComponentMin(Vector2 a, Vector2 b)
result = Vector2.ComponentMin(a, b)

Berechnen Sie das komponentenweise Minimum von zwei Vektoren

a
erster Operand
b
zweiter Operand

Rückgabe: Das komponentenweise Minimum

Cross
public static double Cross(Vector2 left, Vector2 right)
result = Vector2.Cross(left, right)

Berechnen Sie das Kreuzprodukt von zwei Vektoren

left
erster Operand
right
zweiter Operand

Rückgabe: Das Kreuzprodukt der beiden Inputs

Divide
public static Vector2 Divide(Vector2 vector, Vector2 scale)
result = Vector2.Divide(vector, scale)

Teilt einen Vektor durch die Komponenten eines Vektors (Skala).

vector
Linker Operand.
scale
rechter Operand.

Rückgabe: Ergebnis der Operation.

Divide
public static void Divide(Vector2 vector, Vector2 scale, Vector2 result)
Vector2.Divide(vector, scale, result)

Teilen Sie einen Vektor durch die Komponenten eines Vektors (Skala).

vector
Linker Operand.
scale
rechter Operand.
result
Ergebnis der Operation.
Divide
public static Vector2 Divide(Vector2 vector, double scale)
result = Vector2.Divide(vector, scale)

Teilt einen Vektor durch einen Skalar.

vector
Linker Operand.
scale
rechter Operand.

Rückgabe: Ergebnis der Operation.

Divide
public static void Divide(Vector2 vector, double scale, Vector2 result)
Vector2.Divide(vector, scale, result)

Teilt einen Vektor durch einen Skalar.

vector
Linker Operand.
scale
rechter Operand.
result
Ergebnis der Operation.
Dot
public static double Dot(Vector2 left, Vector2 right)
result = Vector2.Dot(left, right)

Berechnen Sie das Punkt (Skalar) Produkt von zwei Vektoren

left
erster Operand
right
zweiter Operand

Rückgabe: Das Punktprodukt der beiden Eingänge

Dot
public static void Dot(Vector2 left, Vector2 right, double result)
Vector2.Dot(left, right, result)

Berechnen Sie das Punkt (Skalar) Produkt von zwei Vektoren

left
erster Operand
right
zweiter Operand
result
Das Punktprodukt der beiden Eingänge
Equals
public override bool Equals(object obj)
result = vector2.Equals(obj)

Gibt an, ob diese Instanz und ein angegebenes Objekt gleich sind.

obj
Das Objekt zum Vergleichen.

Rückgabe: Wahr, wenn die Instanzen gleich sind; falsch sonst.

Equals
public bool Equals(Vector2 other)
result = vector2.Equals(other)

Gibt an, ob der aktuelle Vektor einem anderen Vektor entspricht.

other
Ein Vektor zum Vergleichen mit diesem Vektor.

Rückgabe: true, wenn der aktuelle Vektor gleich dem Vektorparameter ist; andernfalls false.

Equals
public bool Equals(Vector2 other, double errorRange)
result = vector2.Equals(other, errorRange)

Gibt an, ob der aktuelle Vektor einem anderen Vektor entspricht.

other
Ein Vektor zum Vergleichen mit diesem Vektor.
errorRange

Rückgabe: true, wenn der aktuelle Vektor gleich dem Vektorparameter ist; andernfalls false.

GetHashCode
public override int GetHashCode()
result = vector2.GetHashCode()

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

Rückgabe: Ein System.Int32, der den eindeutigen Hashcode für diese Instanz enthält.

GetNormal
public Vector2 GetNormal()
result = vector2.GetNormal()

Gibt einen normalisierten Vektor davon zurück.

Lerp
public static Vector2 Lerp(Vector2 a, Vector2 b, double blend)
result = Vector2.Lerp(a, b, blend)

Gibt einen neuen Vektor zurück, der die lineare Mischung der 2 gegebenen Vektoren ist

a
erster Eingangsvektor
b
zweiter Eingangsvektor
blend
Der Blendfaktor a wenn Blend = 0, b wenn Blend = 1

Rückgabe: a wenn Blend = 0, b wenn Blend = 1 und ansonsten eine lineare Kombination

Lerp
public static void Lerp(Vector2 a, Vector2 b, double blend, Vector2 result)
Vector2.Lerp(a, b, blend, result)

Gibt einen neuen Vektor zurück, der die lineare Mischung der 2 gegebenen Vektoren ist

a
erster Eingangsvektor
b
zweiter Eingangsvektor
blend
Der Blendfaktor a wenn Blend = 0, b wenn Blend = 1
result
a wenn Blend = 0, b wenn Blend = 1 und ansonsten eine lineare Kombination
Max
public static Vector2 Max(Vector2 a, Vector2 b)
result = Vector2.Max(a, b)

Berechnen Sie das komponentenweise Maximum von zwei Vektoren

a
erster Operand
b
zweiter Operand

Rückgabe: Das komponentenweise Maximum

Max
public static void Max(Vector2 a, Vector2 b, Vector2 result)
Vector2.Max(a, b, result)

Berechnen Sie das komponentenweise Maximum von zwei Vektoren

a
erster Operand
b
zweiter Operand
result
Das komponentenweise Maximum
Min
public static Vector2 Min(Vector2 a, Vector2 b)
result = Vector2.Min(a, b)

Berechnen Sie das komponentenweise Minimum von zwei Vektoren

a
erster Operand
b
zweiter Operand

Rückgabe: Das komponentenweise Minimum

Min
public static void Min(Vector2 a, Vector2 b, Vector2 result)
Vector2.Min(a, b, result)

Berechnen Sie das komponentenweise Minimum von zwei Vektoren

a
erster Operand
b
zweiter Operand
result
Das komponentenweise Minimum
Multiply
public static void Multiply(Vector2 vector, double scale, Vector2 result)
Vector2.Multiply(vector, scale, result)

Multipliziert einen Vektor mit einem Skalar.

vector
Linker Operand.
scale
rechter Operand.
result
Ergebnis der Operation.
Multiply
public static Vector2 Multiply(Vector2 vector, Vector2 scale)
result = Vector2.Multiply(vector, scale)

Multipliziert einen Vektor mit den Komponenten einen Vektor (Skala).

vector
Linker Operand.
scale
rechter Operand.

Rückgabe: Ergebnis der Operation.

Multiply
public static void Multiply(Vector2 vector, Vector2 scale, Vector2 result)
Vector2.Multiply(vector, scale, result)

Multipliziert einen Vektor mit den Komponenten eines Vektors (Skala).

vector
Linker Operand.
scale
rechter Operand.
result
Ergebnis der Operation.
Multiply
public static Vector2 Multiply(Vector2 vector, double scale)
result = Vector2.Multiply(vector, scale)

Multipliziert einen Vektor mit einem Skalar.

vector
Linker Operand.
scale
rechter Operand.

Rückgabe: Ergebnis der Operation.

Normalize
public static Vector2 Normalize(Vector2 vec)
result = Vector2.Normalize(vec)

Skalieren Sie einen Vektor auf die Länge der Einheit

vec
Der Eingangsvektor

Rückgabe: Der normierte Vektor

Normalize
public static void Normalize(Vector2 vec, Vector2 result)
Vector2.Normalize(vec, result)

Skalieren Sie einen Vektor auf die Länge der Einheit

vec
Der Eingangsvektor
result
Der normierte Vektor
Normalize
public void Normalize()
vector2.Normalize()

Skaliert den Vector2 auf Längeneinheit.

NormalizeFast
public static Vector2 NormalizeFast(Vector2 vec)
result = Vector2.NormalizeFast(vec)

Skalieren Sie einen Vektor auf ungefähr die Länge einer Einheit

vec
Der Eingangsvektor

Rückgabe: Der normierte Vektor

NormalizeFast
public static void NormalizeFast(Vector2 vec, Vector2 result)
Vector2.NormalizeFast(vec, result)

Skalieren Sie einen Vektor auf ungefähr die Länge einer Einheit

vec
Der Eingangsvektor
result
Der normierte Vektor
op_Addition
public static Vector2 op_Addition(Vector2 left, Vector2 right)
result = Vector2.op_Addition(left, right)

Addiert zwei Instanzen.

left
Die linke Instanz.
right
Die richtige Instanz.

Rückgabe: Das Ergebnis der Operation.

op_Division
public static Vector2 op_Division(double f, Vector2 vec)
result = Vector2.op_Division(f, vec)

Teilt einen Scaler durch eine Instanzkomponenten.

vec
Der Skalar.
f
Die Instanz.

Rückgabe: Das Ergebnis der Operation.

op_Division
public static Vector2 op_Division(Vector2 vec, double f)
result = Vector2.op_Division(vec, f)

Teilt eine Instanz durch einen Skalar.

vec
Die Instanz.
f
Der Skalar.

Rückgabe: Das Ergebnis der Operation.

op_Equality
public static bool op_Equality(Vector2 left, Vector2 right)
result = Vector2.op_Equality(left, right)

Vergleicht zwei Beispiele für Gleichheit.

left
Die linke Instanz.
right
Die richtige Instanz.

Rückgabe: Wahr, wenn beide Instanzen gleich sind; falsch sonst.

op_Inequality
public static bool op_Inequality(Vector2 left, Vector2 right)
result = Vector2.op_Inequality(left, right)

Vergleicht zwei Beispiele für ienquality.

left
Die linke Instanz.
right
Die richtige Instanz.

Rückgabe: Wahr, wenn die Instanzen nicht gleich sind; falsch sonst.

op_Multiply
public static Vector2 op_Multiply(double f, Vector2 vec)
result = Vector2.op_Multiply(f, vec)

Multiplizieren Sie eine Instanz mit einem Skalar.

f
Der Skalar.
vec
Die Instanz.

Rückgabe: Das Ergebnis der Operation.

op_Multiply
public static Vector2 op_Multiply(Vector2 vec, double f)
result = Vector2.op_Multiply(vec, f)

Multipliziert eine Instanz mit einem Skalar.

vec
Die Instanz.
f
Der Skalar.

Rückgabe: Das Ergebnis der Operation.

op_Subtraction
public static Vector2 op_Subtraction(Vector2 left, Vector2 right)
result = Vector2.op_Subtraction(left, right)

Subtrahiert zwei Instanzen.

left
Die linke Instanz.
right
Die richtige Instanz.

Rückgabe: Das Ergebnis der Operation.

op_UnaryNegation
public static Vector2 op_UnaryNegation(Vector2 vec)
result = Vector2.op_UnaryNegation(vec)

Verneint eine Instanz.

vec
Die Instanz.

Rückgabe: Das Ergebnis der Operation.

Subtract
public static void Subtract(Vector2 a, Vector2 b, Vector2 result)
Vector2.Subtract(a, b, result)

Subtrahieren Sie einen Vektor von einem anderen

a
erster Operand
b
zweiter Operand
result
Ergebnis der Subtraktion
Subtract
public static Vector2 Subtract(Vector2 a, Vector2 b)
result = Vector2.Subtract(a, b)

Subtrahieren Sie einen Vektor von einem anderen

a
erster Operand
b
zweiter Operand

Rückgabe: Ergebnis der Subtraktion

ToString
public override string ToString()
result = vector2.ToString()

Gibt ein System.String zurück, das die aktuelle Instanz darstellt.

Transform
public static void Transform(Vector2 vec, Quaternion quat, Vector2 result)
Vector2.Transform(vec, quat, result)

Transformiert einen Vektor durch eine Quaternion-Rotation.

vec
Der Vektor zur Transformation.
quat
Die Quaternion, um den Vektor zu drehen.
result
Das Ergebnis der Operation.
Transform
public static Vector2 Transform(Vector2 vec, Quaternion quat)
result = Vector2.Transform(vec, quat)

Transformiert einen Vektor durch eine Quaternion-Rotation.

vec
Der Vektor zur Transformation.
quat
Die Quaternion, um den Vektor zu drehen.

Rückgabe: Das Ergebnis der Operation.

Felder

One
public static readonly Vector2 One
value = Vector2.One

Definiert eine Instanz mit allen Komponenten, die auf 1 gesetzt sind.

SizeInBytes
public static readonly int SizeInBytes
value = Vector2.SizeInBytes

Definiert die Größe der Vector2d-Struktur in Bytes.

UnitX
public static Vector2 UnitX
value = Vector2.UnitX

Definiert einen Einheitslängenvektor2d, der in Richtung der X-Achse zeigt.

UnitY
public static Vector2 UnitY
value = Vector2.UnitY

Definiert einen Einheitslängenvektor2d, der auf die Y-Achse zeigt.

x
public double x
value = vector2.x

Die X-Koordinate dieser Instanz.

y
public double y
value = vector2.y

Die Y-Koordinate dieser Instanz.

Zero
public static Vector2 Zero
value = Vector2.Zero

Definiert einen Nulllängenvektor2d.