Vector3 Estructura

Definición

Representa un vector con tres valores de punto flotante de precisión única.

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
Herencia
Vector3
Implementaciones

Comentarios

La Vector3 estructura proporciona compatibilidad con la aceleración de hardware.

En el caso de las transformaciones de matriz, las Vector2instancias , Vector3y Vector4 se representan como filas: un vector v se transforma mediante una matriz M con multiplicación de vM .

Constructores

Nombre Description
Vector3(ReadOnlySpan<Single>)

Construye un vector a partir de la clase especificada ReadOnlySpan<T>. El intervalo debe contener al menos 3 elementos.

Vector3(Single, Single, Single)

Crea un vector cuyos elementos tienen los valores especificados.

Vector3(Single)

Crea un nuevo Vector3 objeto cuyos tres elementos tienen el mismo valor.

Vector3(Vector2, Single)

Crea un nuevo Vector3 objeto a partir del objeto especificado Vector2 y el valor especificado.

Campos

Nombre Description
X

Componente X del vector.

Y

Componente Y del vector.

Z

Componente Z del vector.

Propiedades

Nombre Description
AllBitsSet

Obtiene un vector donde todos los bits se establecen en 1.

E

Obtiene un vector cuyos elementos son iguales a E.

Epsilon

Obtiene un vector cuyos elementos son iguales a Epsilon.

Item[Int32]

Obtiene o establece el elemento en el índice especificado.

NaN

Obtiene un vector cuyos elementos son iguales a NaN.

NegativeInfinity

Obtiene un vector cuyos elementos son iguales a NegativeInfinity.

NegativeZero

Obtiene un vector cuyos elementos son iguales a NegativeZero.

One

Obtiene un vector cuyos 3 elementos son iguales a uno.

Pi

Obtiene un vector cuyos elementos son iguales a Pi.

PositiveInfinity

Obtiene un vector cuyos elementos son iguales a PositiveInfinity.

Tau

Obtiene un vector cuyos elementos son iguales a Tau.

UnitX

Obtiene el vector (1,0,0).

UnitY

Obtiene el vector (0,1,0).

UnitZ

Obtiene el vector (0,0,1).

Zero

Obtiene un vector cuyos 3 elementos son iguales a cero.

Métodos

Nombre Description
Abs(Vector3)

Devuelve un vector cuyos elementos son los valores absolutos de cada uno de los elementos del vector especificado.

Add(Vector3, Vector3)

Agrega dos vectores juntos.

All(Vector3, Single)

Determina si todos los elementos de un vector son iguales a un valor determinado.

AllWhereAllBitsSet(Vector3)

Determina si todos los elementos de un vector tienen todos sus bits establecidos.

AndNot(Vector3, Vector3)

Calcula los vectores bit a bit y de un vector determinado y los que complementan a otro vector.

Any(Vector3, Single)

Determina si algún elemento de un vector es igual a un valor determinado.

AnyWhereAllBitsSet(Vector3)

Determina si alguno de los elementos de un vector tiene todos sus bits establecidos.

BitwiseAnd(Vector3, Vector3)

Calcula el bit a bit y de dos vectores.

BitwiseOr(Vector3, Vector3)

Calcula el bit a bit o de dos vectores.

Clamp(Vector3, Vector3, Vector3)

Restringe un vector entre un valor mínimo y un valor máximo.

ClampNative(Vector3, Vector3, Vector3)

Restringe un vector entre un valor mínimo y un valor máximo mediante el comportamiento específico de la plataforma para NaN y NegativeZero.

ConditionalSelect(Vector3, Vector3, Vector3)

Selecciona condicionalmente un valor de dos vectores de forma bit a bit.

CopySign(Vector3, Vector3)

Copia el signo por elemento de un vector en el signo por elemento de otro vector.

CopyTo(Single[], Int32)

Copia los elementos del vector en una matriz especificada a partir de una posición de índice especificada.

CopyTo(Single[])

Copia los elementos del vector en una matriz especificada.

CopyTo(Span<Single>)

Copia el vector en el especificado Span<T>. La longitud del intervalo de destino debe ser al menos 3.

Cos(Vector3)

Calcula el coseno de cada elemento de un vector.

Count(Vector3, Single)

Determina el número de elementos de un vector que son iguales a un valor determinado.

CountWhereAllBitsSet(Vector3)

Determina el número de elementos de un vector que tienen todos sus bits establecidos.

Create(ReadOnlySpan<Single>)

Construye un vector a partir de la clase especificada ReadOnlySpan<T>. El intervalo debe contener al menos 3 elementos.

Create(Single, Single, Single)

Crea un vector cuyos elementos tienen los valores especificados.

Create(Single)

Crea un nuevo Vector3 objeto cuyos tres elementos tienen el mismo valor.

Create(Vector2, Single)

Crea un nuevo Vector3 objeto a partir del objeto especificado Vector2 y un componente Z.

CreateScalar(Single)

Crea un vector con X inicializado en el valor especificado y los elementos restantes inicializados en cero.

CreateScalarUnsafe(Single)

Crea un vector con X inicializado en el valor especificado y los elementos restantes dejan sin inicializar.

Cross(Vector3, Vector3)

Calcula el producto cruzado de dos vectores.

DegreesToRadians(Vector3)

Convierte un vector determinado de grados a radianes.

Distance(Vector3, Vector3)

Calcula la distancia euclidiana entre los dos puntos dados.

DistanceSquared(Vector3, Vector3)

Devuelve la distancia euclidiana al cuadrado entre dos puntos especificados.

Divide(Vector3, Single)

Divide el vector especificado por un valor escalar especificado.

Divide(Vector3, Vector3)

Divide el primer vector por segundo.

Dot(Vector3, Vector3)

Devuelve el producto de punto de dos vectores.

Equals(Object)

Devuelve un valor que indica si esta instancia y un objeto especificado son iguales.

Equals(Vector3, Vector3)

Compara dos vectores para determinar si son iguales por elemento.

Equals(Vector3)

Devuelve un valor que indica si esta instancia y otro vector son iguales.

EqualsAll(Vector3, Vector3)

Compara dos vectores para determinar si todos los elementos son iguales.

EqualsAny(Vector3, Vector3)

Compara dos vectores para determinar si alguno de los elementos es igual.

Exp(Vector3)

Calcula el exponencial de cada elemento de un vector.

FusedMultiplyAdd(Vector3, Vector3, Vector3)

Calcula (left * right) + addend, redondeado como una operación ternaria.

GetHashCode()

Devuelve el código hash de esta instancia.

GreaterThan(Vector3, Vector3)

Compara dos vectores para determinar cuál es mayor por elemento.

GreaterThanAll(Vector3, Vector3)

Compara dos vectores para determinar si todos los elementos son mayores.

GreaterThanAny(Vector3, Vector3)

Compara dos vectores para determinar si alguno de los elementos es mayor.

GreaterThanOrEqual(Vector3, Vector3)

Compara dos vectores para determinar cuál es mayor o igual en función de cada elemento.

GreaterThanOrEqualAll(Vector3, Vector3)

Compara dos vectores para determinar si todos los elementos son mayores o iguales.

GreaterThanOrEqualAny(Vector3, Vector3)

Compara dos vectores para determinar si algún elemento es mayor o igual.

Hypot(Vector3, Vector3)

Calcula la hipotenusa dada dos vectores que representan las longitudes de los lados más cortos en un triángulo con ángulo derecho.

IndexOf(Vector3, Single)

Determina el índice del primer elemento de un vector que es igual a un valor determinado.

IndexOfWhereAllBitsSet(Vector3)

Determina el índice del primer elemento de un vector que tiene todos los bits establecidos.

IsEvenInteger(Vector3)

Determina qué elementos de un vector son incluso valores enteros.

IsFinite(Vector3)

Determina qué elementos de un vector son finitos.

IsInfinity(Vector3)

Determina qué elementos de un vector son infinitos.

IsInteger(Vector3)

Determina qué elementos de un vector son valores enteros.

IsNaN(Vector3)

Determina qué elementos de un vector son NaN.

IsNegative(Vector3)

Determina qué elementos de un vector representan números reales negativos.

IsNegativeInfinity(Vector3)

Determina qué elementos de un vector son infinitos negativos.

IsNormal(Vector3)

Determina qué elementos de un vector son normales.

IsOddInteger(Vector3)

Determina qué elementos de un vector son valores enteros impares.

IsPositive(Vector3)

Determina qué elementos de un vector representan números reales positivos.

IsPositiveInfinity(Vector3)

Determina qué elementos de un vector son infinitos positivos.

IsSubnormal(Vector3)

Determina qué elementos de un vector son subnormales.

IsZero(Vector3)

Determina qué elementos de un vector son cero.

LastIndexOf(Vector3, Single)

Determina el índice del último elemento de un vector que es igual a un valor determinado.

LastIndexOfWhereAllBitsSet(Vector3)

Determina el índice del último elemento de un vector que tiene todos los bits establecidos.

Length()

Devuelve la longitud de este objeto vectorial.

LengthSquared()

Devuelve la longitud del vector al cuadrado.

Lerp(Vector3, Vector3, Single)

Realiza una interpolación lineal entre dos vectores en función de la ponderación especificada.

Lerp(Vector3, Vector3, Vector3)

Realiza una interpolación lineal entre dos vectores en función de la ponderación especificada.

LessThan(Vector3, Vector3)

Compara dos vectores para determinar cuál es menos por elemento.

LessThanAll(Vector3, Vector3)

Compara dos vectores para determinar si todos los elementos son menores.

LessThanAny(Vector3, Vector3)

Compara dos vectores para determinar si alguno de los elementos es menor.

LessThanOrEqual(Vector3, Vector3)

Compara dos vectores para determinar cuál es menor o igual por elemento.

LessThanOrEqualAll(Vector3, Vector3)

Compara dos vectores para determinar si todos los elementos son menores o iguales.

LessThanOrEqualAny(Vector3, Vector3)

Compara dos vectores para determinar si algún elemento es menor o igual.

Load(Single*)

Carga un vector del origen especificado.

LoadAligned(Single*)

Carga un vector del origen alineado especificado.

LoadAlignedNonTemporal(Single*)

Carga un vector del origen alineado especificado.

LoadUnsafe(Single, UIntPtr)

Carga un vector desde el origen y el desplazamiento de elementos especificados.

LoadUnsafe(Single)

Carga un vector del origen especificado.

Log(Vector3)

Calcula el registro de cada elemento de un vector.

Log2(Vector3)

Calcula el registro2 de cada elemento de un vector.

Max(Vector3, Vector3)

Devuelve un vector cuyos elementos son el máximo de cada uno de los pares de elementos en dos vectores especificados.

MaxMagnitude(Vector3, Vector3)

Compara dos vectores con el proceso que tiene la mayor magnitud por elemento.

MaxMagnitudeNumber(Vector3, Vector3)

Compara dos vectores, por elemento, para calcular que tiene mayor magnitud y devuelve el otro valor si una entrada es NaN.

MaxNative(Vector3, Vector3)

Compare dos vectores para determinar cuál es mayor por elemento mediante el comportamiento específico de la plataforma para NaN y NegativeZero.

MaxNumber(Vector3, Vector3)

Compara dos vectores, por elemento, para calcular cuál es mayor y devolver el otro valor si un elemento es NaN.

Min(Vector3, Vector3)

Devuelve un vector cuyos elementos son el mínimo de cada uno de los pares de elementos en dos vectores especificados.

MinMagnitude(Vector3, Vector3)

Compara dos vectores con el proceso que tiene la magnitud menor por elemento.

MinMagnitudeNumber(Vector3, Vector3)

Compara dos vectores, por elemento, para calcular que tiene la magnitud menor y devuelve el otro valor si una entrada es NaN.

MinNative(Vector3, Vector3)

Compare dos vectores para determinar cuál es menor por elemento mediante el comportamiento específico de la plataforma para NaN y NegativeZero.

MinNumber(Vector3, Vector3)

Compara dos vectores, por elemento, para calcular que es menor y devolver el otro valor si un elemento es NaN.

Multiply(Single, Vector3)

Multiplica un valor escalar por un vector especificado.

Multiply(Vector3, Single)

Multiplica un vector por un escalar especificado.

Multiply(Vector3, Vector3)

Devuelve un nuevo vector cuyos valores son el producto de cada par de elementos en dos vectores especificados.

MultiplyAddEstimate(Vector3, Vector3, Vector3)

Calcula una estimación de (left * right) + addend.

Negate(Vector3)

Niega un vector especificado.

None(Vector3, Single)

Determina si ningún elemento de un vector es igual a un valor determinado.

NoneWhereAllBitsSet(Vector3)

Determina si ningún elemento de un vector tiene todos sus bits establecidos.

Normalize(Vector3)

Devuelve un vector con la misma dirección que el vector especificado, pero con una longitud de uno.

OnesComplement(Vector3)

Calcula el complemento uno de un vector.

RadiansToDegrees(Vector3)

Convierte un vector determinado de radianes a grados.

Reflect(Vector3, Vector3)

Devuelve la reflexión de un vector fuera de una superficie que tiene el valor normal especificado.

Round(Vector3, MidpointRounding)

Redondea cada elemento de un vector al entero más cercano mediante el modo de redondeo especificado.

Round(Vector3)

Redondea cada elemento de un vector al entero más cercano mediante el modo de redondeo predeterminado (ToEven).

Shuffle(Vector3, Byte, Byte, Byte)

Crea un nuevo vector seleccionando valores de un vector de entrada mediante un conjunto de índices.

Sin(Vector3)

Calcula el seno de cada elemento de un vector.

SinCos(Vector3)

Calcula el seno y el coseno de cada elemento de un vector.

SquareRoot(Vector3)

Devuelve un vector cuyos elementos son la raíz cuadrada de cada uno de los elementos de un vector especificado.

Subtract(Vector3, Vector3)

Resta el segundo vector del primero.

Sum(Vector3)

Calcula la suma de todos los elementos de un vector.

ToString()

Devuelve la representación de cadena de la instancia actual mediante el formato predeterminado.

ToString(String, IFormatProvider)

Devuelve la representación de cadena de la instancia actual utilizando la cadena de formato especificada para dar formato a elementos individuales y al proveedor de formato especificado para definir el formato específico de la referencia cultural.

ToString(String)

Devuelve la representación de cadena de la instancia actual utilizando la cadena de formato especificada para dar formato a elementos individuales.

Transform(Vector3, Matrix4x4)

Transforma un vector por una matriz 4x4 especificada.

Transform(Vector3, Quaternion)

Transforma un vector por el valor de rotación de cuaternión especificado.

TransformNormal(Vector3, Matrix4x4)

Transforma un vector normal por la matriz 4x4 especificada.

Truncate(Vector3)

Trunca cada elemento de un vector.

TryCopyTo(Span<Single>)

Intenta copiar el vector en el especificado Span<T>. La longitud del intervalo de destino debe ser al menos 3.

Xor(Vector3, Vector3)

Calcula el valor exclusivo o de dos vectores.

Operadores

Nombre Description
Addition(Vector3, Vector3)

Agrega dos vectores juntos.

BitwiseAnd(Vector3, Vector3)

Calcula el bit a bit y de dos vectores.

BitwiseOr(Vector3, Vector3)

Calcula el bit a bit o de dos vectores.

Division(Vector3, Single)

Divide el vector especificado por un valor escalar especificado.

Division(Vector3, Vector3)

Divide el primer vector por segundo.

Equality(Vector3, Vector3)

Devuelve un valor que indica si cada par de elementos de dos vectores especificados es igual.

ExclusiveOr(Vector3, Vector3)

Calcula el valor exclusivo o de dos vectores.

Inequality(Vector3, Vector3)

Devuelve un valor que indica si dos vectores especificados no son iguales.

LeftShift(Vector3, Int32)

Desplaza cada elemento de un vector a la izquierda por la cantidad especificada.

Multiply(Single, Vector3)

Multiplese el valor escalar por el vector especificado.

Multiply(Vector3, Single)

Multiples el vector especificado por el valor escalar especificado.

Multiply(Vector3, Vector3)

Devuelve un nuevo vector cuyos valores son el producto de cada par de elementos en dos vectores especificados.

OnesComplement(Vector3)

Calcula el complemento uno de un vector.

RightShift(Vector3, Int32)

Desplaza (firmado) cada elemento de un vector a la derecha por la cantidad especificada.

Subtraction(Vector3, Vector3)

Resta el segundo vector del primero.

UnaryNegation(Vector3)

Niega el vector especificado.

UnaryPlus(Vector3)

Devuelve un vector determinado sin cambios.

UnsignedRightShift(Vector3, Int32)

Desplaza (sin signo) cada elemento de un vector derecho por la cantidad especificada.

Métodos de extensión

Nombre Description
AsVector128(Vector3)

Reinterpreta como Vector3 un nuevo Vector128<T>.

AsVector128Unsafe(Vector3)

Reinterpreta como Vector3 un nuevo Vector128<T>, dejando los nuevos elementos sin definir.

AsVector2(Vector3)

Reinterpreta como Vector3 un nuevo Vector2.

AsVector4(Vector3)

Convierte un objeto Vector3 en un nuevo Vector4 con los nuevos elementos en cero.

AsVector4Unsafe(Vector3)

Convierte un objeto Vector3 en un nuevo Vector4 con los nuevos elementos sin definir.

ExtractMostSignificantBits(Vector3)

Extrae el bit más significativo de cada elemento de un vector.

GetElement(Vector3, Int32)

Obtiene el elemento en el índice especificado.

Store(Vector3, Single*)

Almacena un vector en el destino especificado.

StoreAligned(Vector3, Single*)

Almacena un vector en el destino alineado de 8 bytes determinado.

StoreAlignedNonTemporal(Vector3, Single*)

Almacena un vector en el destino alineado de 8 bytes determinado.

StoreUnsafe(Vector3, Single, UIntPtr)

Almacena un vector en el destino especificado.

StoreUnsafe(Vector3, Single)

Almacena un vector en el destino especificado.

ToScalar(Vector3)

Convierte el vector especificado en un escalar que contiene el valor del primer elemento.

WithElement(Vector3, Int32, Single)

Crea un nuevo Vector128<T> con el elemento en el índice especificado establecido en el valor especificado y los elementos restantes establecidos en el mismo valor que en el vector especificado.

Se aplica a