Vector4

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

Representa un vector 4D que utiliza cuatro números de doble precisión flotante-punto.

Implementa: IEquatable<Vector4>

Constructores

Vector4
public Vector4(double x, double y, double z, double w)
vector4 = Vector4(x, y, z, w)

Construye un nuevo Vector4d.

x
El componente x del Vector4d.
y
El componente y del Vector4d.
z
El componente z del Vector4d.
w
El componente w del Vector4d.
Vector4
public Vector4(Vector2 v)
vector4 = Vector4(v)

Construye un nuevo Vector4d del vector dado2d.

v
El Vector2d para copiar componentes de.
Vector4
public Vector4(Vector3 v)
vector4 = Vector4(v)

Construye un nuevo Vector4d del vector dado.

v
El Vector3d para copiar componentes de.
Vector4
public Vector4(Vector3 v, double w)
vector4 = Vector4(v, w)

Construye un nuevo Vector4d del componente Vector3d y w especificado.

v
El Vector3d para copiar componentes de.
w
El componente w del nuevo Vector4.
Vector4
public Vector4(Vector4 v)
vector4 = Vector4(v)

Construye un nuevo Vector4d del vector dado.

v
El Vector4d para copiar componentes de.

Propiedades

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

Consigue la longitud (magnitud) del vector.

LengthFast
public double LengthFast { get; }
value = vector4.LengthFast

Consigue una aproximación de la longitud del vector (magnitud).

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

Consigue la plaza de la longitud del vector (magnitud).

Xy
public Vector2 Xy { get; set; }
value = vector4.Xy
vector4.Xy = value

Consigue o establece un OpenTK.Vector2d@ con los componentes X y Y de esta instancia.

Xyz
public Vector3 Xyz { get; set; }
value = vector4.Xyz
vector4.Xyz = value

Consigue o establece un OpenTK.Vector3d@ con los componentes X, Y y Z de esta instancia.

Métodos

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

Añade dos vectores.

a
Operador izquierdo.
b
Buen trabajo.
result
Resultado de la operación.
Add
public static Vector4 Add(Vector4 a, Vector4 b)
result = Vector4.Add(a, b)

Añade dos vectores.

a
Operador izquierdo.
b
Buen trabajo.

Devuelve: Resultado de la operación.

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

Interpolate 3 Vectores usando coordenadas Barycentric

a
Primer vector de entrada.
b
Segundo vector de entrada.
c
Tercer vector de entrada.
u
Primera Coordinación Baríntrica.
v
Segunda Coordinadora Barígena.
result
Vector de salida. a cuando u=v=0, b cuando u=1,v=0, c cuando u=0,v=1, y una combinación lineal de a,b,c de otro modo
BaryCentric
public static Vector4 BaryCentric(Vector4 a, Vector4 b, Vector4 c, double u, double v)
result = Vector4.BaryCentric(a, b, c, u, v)

Interpolate 3 Vectores usando coordenadas Barycentric

a
Vector de primera entrada
b
Segundo vector de entrada
c
Vector de terceros
u
Primera Coordinación Baríntrica
v
Second Barycentric Coordinate

Devuelve: a cuando u=v=0, b cuando u=1,v=0, c cuando u=0,v=1, y una combinación lineal de a,b,c de otra manera

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

Abraza un vector a los vectores mínimo y máximo dados

vec
Input vector
min
vector mínimo
max
vector máximo
result
El vector abrazado
Clamp
public static Vector4 Clamp(Vector4 vec, Vector4 min, Vector4 max)
result = Vector4.Clamp(vec, min, max)

Abraza un vector a los vectores mínimo y máximo dados

vec
Input vector
min
vector mínimo
max
vector máximo

Devuelve: El vector abrazado

Divide
public static Vector4 Divide(Vector4 vector, double scale)
result = Vector4.Divide(vector, scale)

Divide un vector por un escalar.

vector
Operador izquierdo.
scale
Buen trabajo.

Devuelve: Resultado de la operación.

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

Divide un vector por un escalar.

vector
Operador izquierdo.
scale
Buen trabajo.
result
Resultado de la operación.
Divide
public static Vector4 Divide(Vector4 vector, Vector4 scale)
result = Vector4.Divide(vector, scale)

Divide un vector por los componentes de un vector (escala).

vector
Operador izquierdo.
scale
Buen trabajo.

Devuelve: Resultado de la operación.

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

Divide un vector por los componentes de un vector (escala).

vector
Operador izquierdo.
scale
Buen trabajo.
result
Resultado de la operación.
Dot
public static void Dot(Vector4 left, Vector4 right, double result)
Vector4.Dot(left, right, result)

Calcular el producto de puntos de dos vectores

left
Primer operand
right
Segundo operand
result
El producto de puntos de las dos entradas
Dot
public static double Dot(Vector4 left, Vector4 right)
result = Vector4.Dot(left, right)

Calcular el producto de puntos de dos vectores

left
Primer operand
right
Segundo operand

Devuelve: El producto de puntos de las dos entradas

Equals
public bool Equals(Vector4 other)
result = vector4.Equals(other)

Indica si el vector actual es igual a otro vector.

other
Un vector para comparar con este vector.

Devuelve: verdadero si el vector actual es igual al parámetro vectorial; de lo contrario, falso.

Equals
public override bool Equals(object obj)
result = vector4.Equals(obj)

Indica si este caso y un objeto específico son iguales.

obj
El objeto a comparar.

Devuelve: Cierto si los casos son iguales; falso de lo contrario.

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

Devuelve el código de hashcode para este caso.

Devuelve: A System.Int32 que contiene el código de hashcode único para este caso.

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

Devuelve un nuevo vector que es la mezcla lineal de los 2 vectores dados

a
Primer vector de entrada
b
Segundo vector de entrada
blend
El factor de mezcla. a cuando se mezcla=0, b cuando se mezcla=1.

Devuelve: a cuando blend=0, b cuando blend=1, y una combinación lineal de otra manera

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

Devuelve un nuevo vector que es la mezcla lineal de los 2 vectores dados

a
Primer vector de entrada
b
Segundo vector de entrada
blend
El factor de mezcla. a cuando se mezcla=0, b cuando se mezcla=1.
result
a cuando blend=0, b cuando blend=1, y una combinación lineal de otra manera
Max
public static void Max(Vector4 a, Vector4 b, Vector4 result)
Vector4.Max(a, b, result)

Calcular el máximo de dos vectores a la medida de los componentes

a
Primer operand
b
Segundo operand
result
El máximo de componente-en función
Max
public static Vector4 Max(Vector4 a, Vector4 b)
result = Vector4.Max(a, b)

Calcular el máximo de dos vectores a la medida de los componentes

a
Primer operand
b
Segundo operand

Devuelve: El máximo de componente-en función

Min
public static Vector4 Min(Vector4 a, Vector4 b)
result = Vector4.Min(a, b)

Calcular el mínimo de dos vectores a la vez de componentes

a
Primer operand
b
Segundo operand

Devuelve: El mínimo de componente-en-sabio

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

Calcular el mínimo de dos vectores a la vez de componentes

a
Primer operand
b
Segundo operand
result
El mínimo de componente-en-sabio
Multiply
public static Vector4 Multiply(Vector4 vector, double scale)
result = Vector4.Multiply(vector, scale)

Multiplica un vector por un escalar.

vector
Operador izquierdo.
scale
Buen trabajo.

Devuelve: Resultado de la operación.

Multiply
public static void Multiply(Vector4 vector, double scale, Vector4 result)
Vector4.Multiply(vector, scale, result)

Multiplica un vector por un escalar.

vector
Operador izquierdo.
scale
Buen trabajo.
result
Resultado de la operación.
Multiply
public static Vector4 Multiply(Vector4 vector, Vector4 scale)
result = Vector4.Multiply(vector, scale)

Multiplica un vector por los componentes un vector (escala).

vector
Operador izquierdo.
scale
Buen trabajo.

Devuelve: Resultado de la operación.

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

Multiplica un vector por los componentes de un vector (escala).

vector
Operador izquierdo.
scale
Buen trabajo.
result
Resultado de la operación.
Normalize
public static Vector4 Normalize(Vector4 vec)
result = Vector4.Normalize(vec)

Escalar un vector a la longitud de la unidad

vec
El vector de entrada

Devuelve: El vector normalizado

Normalize
public void Normalize()
vector4.Normalize()

Escala el Vector4d a longitud de unidad.

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

Escalar un vector a la longitud de la unidad

vec
El vector de entrada
result
El vector normalizado
NormalizeFast
public void NormalizeFast()
vector4.NormalizeFast()

Escala el Vector4d a aproximadamente longitud de unidad.

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

Escalar un vector a una longitud de unidad aproximadamente

vec
El vector de entrada
result
El vector normalizado
NormalizeFast
public static Vector4 NormalizeFast(Vector4 vec)
result = Vector4.NormalizeFast(vec)

Escalar un vector a una longitud de unidad aproximadamente

vec
El vector de entrada

Devuelve: El vector normalizado

op_Addition
public static Vector4 op_Addition(Vector4 left, Vector4 right)
result = Vector4.op_Addition(left, right)

Añade dos casos.

left
La primera instancia.
right
La segunda instancia.

Devuelve: El resultado del cálculo.

op_Division
public static Vector4 op_Division(Vector4 vec, double scale)
result = Vector4.op_Division(vec, scale)

Divide una instancia de un escalar.

vec
El caso.
scale
El cuero cabelludo.

Devuelve: El resultado del cálculo.

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

Compara dos casos para la igualdad.

left
La primera instancia.
right
La segunda instancia.

Devuelve: Cierto, si la izquierda es igual a la derecha; falso de lo contrario.

op_Explicit(Double*) : IntPtr

Devuelve un puntero al primer elemento de la instancia especificada.

v
El caso.

Devuelve: Un puntero al primer elemento de v.

op_Explicit(IntPtr) : IntPtr

Devuelve un puntero al primer elemento de la instancia especificada.

v
El caso.

Devuelve: Un puntero al primer elemento de v.

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

Compara dos casos de desigualdad.

left
La primera instancia.
right
La segunda instancia.

Devuelve: Cierto, si la izquierda no ecua lright; falso de lo contrario.

op_Multiply
public static Vector4 op_Multiply(double scale, Vector4 vec)
result = Vector4.op_Multiply(scale, vec)

Multiplica una instancia por un escalar.

scale
El cuero cabelludo.
vec
El caso.

Devuelve: El resultado del cálculo.

op_Multiply
public static Vector4 op_Multiply(Vector4 vec, double scale)
result = Vector4.op_Multiply(vec, scale)

Multiplica una instancia por un escalar.

vec
El caso.
scale
El cuero cabelludo.

Devuelve: El resultado del cálculo.

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

Substrae dos casos.

left
La primera instancia.
right
La segunda instancia.

Devuelve: El resultado del cálculo.

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

Negates an instance.

vec
El caso.

Devuelve: El resultado del cálculo.

Subtract
public static Vector4 Subtract(Vector4 a, Vector4 b)
result = Vector4.Subtract(a, b)

Substraer un vector de otro

a
Primer operand
b
Segundo operand

Devuelve: Resultado de la resta

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

Substraer un vector de otro

a
Primer operand
b
Segundo operand
result
Resultado de la resta
ToString
public string ToString(string format)
result = vector4.ToString(format)

Devuelve a System.String que representa el Vector4d actual, formateando cada elemento con formato.

format
ToString
public override string ToString()
result = vector4.ToString()

Devuelve a System.String@ que representa el Vector4d actual.

Transform
public static Vector4 Transform(Vector4 vec, Matrix4X4 mat)
result = Vector4.Transform(vec, mat)

Transformar un vector por la matriz dada

vec
El vector para transformar
mat
La transformación deseada

Devuelve: El vector transformado

Transform
public static void Transform(Vector4 vec, Matrix4X4 mat, Vector4 result)
Vector4.Transform(vec, mat, result)

Transformar un vector por la matriz dada

vec
El vector para transformar
mat
La transformación deseada
result
El vector transformado
Transform
public static Vector4 Transform(Vector4 vec, Quaternion quat)
result = Vector4.Transform(vec, quat)

Transforma un vector por una rotación de la cuaternión.

vec
El vector a transformar.
quat
La cuaternión para rotar el vector por.

Devuelve: El resultado de la operación.

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

Transforma un vector por una rotación de la cuaternión.

vec
El vector a transformar.
quat
La cuaternión para rotar el vector por.
result
El resultado de la operación.

Campos

One
public static readonly Vector4 One
value = Vector4.One

Define una instancia con todos los componentes fijados a 1.

SizeInBytes
public static readonly int SizeInBytes
value = Vector4.SizeInBytes

Define el tamaño de la estructura Vector4d en bytes.

UnitW
public static Vector4 UnitW
value = Vector4.UnitW

Define un vector de longitud unitaria que apunta hacia el eje W.

UnitX
public static Vector4 UnitX
value = Vector4.UnitX

Define un vector de longitud unitaria que apunta hacia el eje X.

UnitY
public static Vector4 UnitY
value = Vector4.UnitY

Define un vector de longitud unitaria que apunta hacia el eje Y.

UnitZ
public static Vector4 UnitZ
value = Vector4.UnitZ

Define un vector de longitud unitaria que apunta hacia el eje Z.

w
public double w
value = vector4.w

El componente W del Vector4d.

x
public double x
value = vector4.x

El componente X del Vector4d.

y
public double y
value = vector4.y

El componente Y del Vector4d.

z
public double z
value = vector4.z

El componente Z del Vector4d.

Zero
public static Vector4 Zero
value = Vector4.Zero

Define un Vector4d de cero longitud.