Vector4 Estrutura
Definição
Importante
Algumas informações dizem respeito a um produto pré-lançado que pode ser substancialmente modificado antes de ser lançado. A Microsoft não faz garantias, de forma expressa ou implícita, em relação à informação aqui apresentada.
Representa um vetor com quatro valores de ponto flutuante de precisão simples.
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
- Herança
- Implementações
Observações
A Vector4 estrutura oferece suporte para aceleração por hardware.
Para transformações matriciais, os Vector2, Vector3, e Vector4 as instâncias são representados como linhas: um vetor v é transformado por uma matriz M com multiplicação vM .
Construtores
| Name | Description |
|---|---|
| Vector4(ReadOnlySpan<Single>) |
Constrói um vetor a partir do dado ReadOnlySpan<T>. O vão deve conter pelo menos 4 elementos. |
| Vector4(Single, Single, Single, Single) |
Cria um vetor cujos elementos têm os valores especificados. |
| Vector4(Single) |
Cria um novo Vector4 objeto cujos quatro elementos têm o mesmo valor. |
| Vector4(Vector2, Single, Single) |
Cria um novo Vector4 objeto a partir do objeto especificado Vector2 e um componente Z e um W. |
| Vector4(Vector3, Single) |
Constrói um novo Vector4 objeto a partir do objeto especificado Vector3 e um componente W. |
Campos
| Name | Description |
|---|---|
| W |
O componente W do vetor. |
| X |
O componente X do vetor. |
| Y |
O componente Y do vetor. |
| Z |
O componente Z do vetor. |
Propriedades
| Name | Description |
|---|---|
| AllBitsSet |
Obtém um vetor onde todos os bits são definidos para |
| E |
Obtém-se um vetor cujos elementos são iguais a E. |
| Epsilon |
Obtém-se um vetor cujos elementos são iguais a Epsilon. |
| Item[Int32] |
Obtém ou define o elemento no índice especificado. |
| NaN |
Obtém-se um vetor cujos elementos são iguais a NaN. |
| NegativeInfinity |
Obtém-se um vetor cujos elementos são iguais a NegativeInfinity. |
| NegativeZero |
Obtém-se um vetor cujos elementos são iguais a NegativeZero. |
| One |
Obtém um vetor cujos 4 elementos são iguais a um. |
| Pi |
Obtém-se um vetor cujos elementos são iguais a Pi. |
| PositiveInfinity |
Obtém-se um vetor cujos elementos são iguais a PositiveInfinity. |
| Tau |
Obtém-se um vetor cujos elementos são iguais a Tau. |
| UnitW |
Obtém o vetor (0,0,0,1). |
| UnitX |
Obtém o vetor (1,0,0,0). |
| UnitY |
Obtém o vetor (0,1,0,0). |
| UnitZ |
Obtém o vetor (0,0,1,0). |
| Zero |
Obtém um vetor cujos 4 elementos são iguais a zero. |
Métodos
| Name | Description |
|---|---|
| Abs(Vector4) |
Devolve um vetor cujos elementos são os valores absolutos de cada um dos elementos do vetor especificado. |
| Add(Vector4, Vector4) |
Soma dois vetores. |
| All(Vector4, Single) |
Determina se todos os elementos de um vetor são iguais a um dado valor. |
| AllWhereAllBitsSet(Vector4) |
Determina se todos os elementos de um vetor têm todos os seus bits definidos. |
| AndNot(Vector4, Vector4) |
Calcula o e bit a bit de um dado vetor e o complemento de uns de outro vetor. |
| Any(Vector4, Single) |
Determina se quaisquer elementos de um vetor são iguais a um dado valor. |
| AnyWhereAllBitsSet(Vector4) |
Determina se algum elemento de um vetor tem todos os seus bits definidos. |
| BitwiseAnd(Vector4, Vector4) |
Calcula o bit a bit-e de dois vetores. |
| BitwiseOr(Vector4, Vector4) |
Calcula o bit-or-ou de dois vetores. |
| Clamp(Vector4, Vector4, Vector4) |
Restringe um vetor entre um valor mínimo e um valor máximo. |
| ClampNative(Vector4, Vector4, Vector4) |
Restringe um vetor entre um valor mínimo e um valor máximo usando comportamentos específicos da plataforma para |
| ConditionalSelect(Vector4, Vector4, Vector4) |
Seleciona condicionalmente um valor entre dois vetores numa base bit a bit. |
| CopySign(Vector4, Vector4) |
Copia o sinal por elemento de um vetor para o signo por elemento de outro vetor. |
| CopyTo(Single[], Int32) |
Copia os elementos do vetor para um array especificado começando numa posição de índice especificada. |
| CopyTo(Single[]) |
Copia os elementos do vetor para um array especificado. |
| CopyTo(Span<Single>) |
Copia o vetor para o dado Span<T>. O comprimento do vão de destino deve ser pelo menos 4. |
| Cos(Vector4) |
Calcula o cosseno de cada elemento num vetor. |
| Count(Vector4, Single) |
Determina o número de elementos num vetor que são iguais a um dado valor. |
| CountWhereAllBitsSet(Vector4) |
Determina o número de elementos num vetor que têm todos os seus bits definidos. |
| Create(ReadOnlySpan<Single>) |
Constrói um vetor a partir do dado ReadOnlySpan<T>. O vão deve conter pelo menos 4 elementos. |
| Create(Single, Single, Single, Single) |
Cria um vetor cujos elementos têm os valores especificados. |
| Create(Single) |
Cria um novo Vector4 objeto cujos quatro elementos têm o mesmo valor. |
| Create(Vector2, Single, Single) |
Cria um novo Vector4 objeto a partir do objeto especificado Vector2 e um componente Z e um W. |
| Create(Vector3, Single) |
Constrói um novo Vector4 objeto a partir do objeto especificado Vector3 e um componente W. |
| CreateScalar(Single) |
Cria um vetor com X inicializado ao valor especificado e os restantes elementos inicializados a zero. |
| CreateScalarUnsafe(Single) |
Cria um vetor com X inicializado ao valor especificado e os restantes elementos deixados por inicializar. |
| Cross(Vector4, Vector4) |
Calcula o produto vetorial de dois vetores. Para coordenadas homogéneas, o produto dos pesos é o novo peso para o produto resultante. |
| DegreesToRadians(Vector4) |
Converte um dado vetor de graus para radianos. |
| Distance(Vector4, Vector4) |
Calcula a distância euclidiana entre os dois pontos dados. |
| DistanceSquared(Vector4, Vector4) |
Devolve a distância euclidiana ao quadrado entre dois pontos especificados. |
| Divide(Vector4, Single) |
Divide o vetor especificado por um valor escalar especificado. |
| Divide(Vector4, Vector4) |
Divide o primeiro vetor pelo segundo. |
| Dot(Vector4, Vector4) |
Devolve o produto escalar de dois vetores. |
| Equals(Object) |
Devolve um valor que indica se esta instância e um objeto especificado são iguais. |
| Equals(Vector4, Vector4) |
Compara dois vetores para determinar se são iguais por elemento. |
| Equals(Vector4) |
Devolve um valor que indica se esta instância e outro vetor são iguais. |
| EqualsAll(Vector4, Vector4) |
Compara dois vetores para determinar se todos os elementos são iguais. |
| EqualsAny(Vector4, Vector4) |
Compara dois vetores para determinar se algum elemento é igual. |
| Exp(Vector4) |
Calcula a exponencial de cada elemento num vetor. |
| FusedMultiplyAdd(Vector4, Vector4, Vector4) |
Calcula ( |
| GetHashCode() |
Devolve o código de hash para esta instância. |
| GreaterThan(Vector4, Vector4) |
Compara dois vetores para determinar qual é maior por elemento. |
| GreaterThanAll(Vector4, Vector4) |
Compara dois vetores para determinar se todos os elementos são maiores. |
| GreaterThanAny(Vector4, Vector4) |
Compara dois vetores para determinar se algum elemento é maior. |
| GreaterThanOrEqual(Vector4, Vector4) |
Compara dois vetores para determinar qual é maior ou igual por elemento. |
| GreaterThanOrEqualAll(Vector4, Vector4) |
Compara dois vetores para determinar se todos os elementos são maiores ou iguais. |
| GreaterThanOrEqualAny(Vector4, Vector4) |
Compara dois vetores para determinar se algum elemento é maior ou igual. |
| Hypot(Vector4, Vector4) |
Calcula a hipotenusa dados dois vetores que representam os comprimentos dos lados mais curtos num triângulo reto. |
| IndexOf(Vector4, Single) |
Determina o índice do primeiro elemento de um vetor que é igual a um dado valor. |
| IndexOfWhereAllBitsSet(Vector4) |
Determina o índice do primeiro elemento num vetor que tem todos os bits definidos. |
| IsEvenInteger(Vector4) |
Determina quais os elementos num vetor que são valores inteiros pares. |
| IsFinite(Vector4) |
Determina quais os elementos num vetor que são finitos. |
| IsInfinity(Vector4) |
Determina quais os elementos num vetor que são infinitos. |
| IsInteger(Vector4) |
Determina quais os elementos num vetor que são valores integrais. |
| IsNaN(Vector4) |
Determina quais os elementos de um vetor que são NaN. |
| IsNegative(Vector4) |
Determina quais os elementos num vetor que representam números reais negativos. |
| IsNegativeInfinity(Vector4) |
Determina quais os elementos num vetor que são menos infinito. |
| IsNormal(Vector4) |
Determina quais os elementos num vetor que são normais. |
| IsOddInteger(Vector4) |
Determina quais os elementos num vetor que são valores inteiros ímpares. |
| IsPositive(Vector4) |
Determina quais os elementos num vetor que representam números reais positivos. |
| IsPositiveInfinity(Vector4) |
Determina quais os elementos num vetor que são infinito positivo. |
| IsSubnormal(Vector4) |
Determina quais os elementos de um vetor que são subnormais. |
| IsZero(Vector4) |
Determina quais os elementos num vetor que são zero. |
| LastIndexOf(Vector4, Single) |
Determina o índice do último elemento num vetor que é igual a um dado valor. |
| LastIndexOfWhereAllBitsSet(Vector4) |
Determina o índice do último elemento num vetor que tem todos os bits definidos. |
| Length() |
Devolve o comprimento deste objeto vetorial. |
| LengthSquared() |
Devolve o comprimento do vetor ao quadrado. |
| Lerp(Vector4, Vector4, Single) |
Realiza uma interpolação linear entre dois vetores com base na ponderação dada. |
| Lerp(Vector4, Vector4, Vector4) |
Realiza uma interpolação linear entre dois vetores com base na ponderação dada. |
| LessThan(Vector4, Vector4) |
Compara dois vetores para determinar qual é menor por elemento. |
| LessThanAll(Vector4, Vector4) |
Compara dois vetores para determinar se todos os elementos são menores. |
| LessThanAny(Vector4, Vector4) |
Compara dois vetores para determinar se algum elemento é menor. |
| LessThanOrEqual(Vector4, Vector4) |
Compara dois vetores para determinar qual é menor ou igual por elemento. |
| LessThanOrEqualAll(Vector4, Vector4) |
Compara dois vetores para determinar se todos os elementos são menores ou iguais. |
| LessThanOrEqualAny(Vector4, Vector4) |
Compara dois vetores para determinar se algum elemento é menor ou igual. |
| Load(Single*) |
Carrega um vetor a partir da fonte dada. |
| LoadAligned(Single*) |
Carrega um vetor a partir da fonte alinhada dada. |
| LoadAlignedNonTemporal(Single*) |
Carrega um vetor a partir da fonte alinhada dada. |
| LoadUnsafe(Single, UIntPtr) |
Carrega um vetor a partir do deslocamento de fonte e elemento dado. |
| LoadUnsafe(Single) |
Carrega um vetor a partir da fonte dada. |
| Log(Vector4) |
Calcula o logarítmic de cada elemento num vetor. |
| Log2(Vector4) |
Calcula o log2 de cada elemento num vetor. |
| Max(Vector4, Vector4) |
Devolve um vetor cujos elementos são o máximo de cada um dos pares de elementos em dois vetores especificados. |
| MaxMagnitude(Vector4, Vector4) |
Compara dois vetores para calcular qual tem maior magnitude por elemento. |
| MaxMagnitudeNumber(Vector4, Vector4) |
Compara dois vetores, por elemento, para calcular qual tem maior magnitude e devolve o outro valor se uma entrada for |
| MaxNative(Vector4, Vector4) |
Compare dois vetores para determinar qual é maior por elemento usando comportamento específico da plataforma para |
| MaxNumber(Vector4, Vector4) |
Compara dois vetores, numa base por elemento, para calcular qual é maior e devolve o outro valor se um elemento for |
| Min(Vector4, Vector4) |
Devolve um vetor cujos elementos são o mínimo de cada um dos pares de elementos em dois vetores especificados. |
| MinMagnitude(Vector4, Vector4) |
Compara dois vetores para calcular que têm a magnitude menor por elemento. |
| MinMagnitudeNumber(Vector4, Vector4) |
Compara dois vetores, numa base por elemento, para calcular qual tem a magnitude menor e devolve o outro valor se uma entrada for |
| MinNative(Vector4, Vector4) |
Compare dois vetores para determinar qual é menor numa base por elemento usando comportamentos específicos da plataforma para |
| MinNumber(Vector4, Vector4) |
Compara dois vetores, numa base por elemento, para calcular qual é menor e devolve o outro valor se um elemento for |
| Multiply(Single, Vector4) |
Multiplica um valor escalar por um vetor especificado. |
| Multiply(Vector4, Single) |
Multiplica um vetor por um escalar especificado. |
| Multiply(Vector4, Vector4) |
Devolve um novo vetor cujos valores são o produto de cada par de elementos em dois vetores especificados. |
| MultiplyAddEstimate(Vector4, Vector4, Vector4) |
Calcula uma estimativa de ( |
| Negate(Vector4) |
Anula um vetor especificado. |
| None(Vector4, Single) |
Determina se nenhum elemento de um vetor é igual a um dado valor. |
| NoneWhereAllBitsSet(Vector4) |
Determina se nenhum elemento de um vetor tem todos os seus bits definidos. |
| Normalize(Vector4) |
Devolve um vetor com a mesma direção do vetor especificado, mas com comprimento de um. |
| OnesComplement(Vector4) |
Calcula o complemento de um vetor. |
| RadiansToDegrees(Vector4) |
Converte um dado vetor de radianos em graus. |
| Round(Vector4, MidpointRounding) |
Arredonda cada elemento de um vetor para o inteiro mais próximo usando o modo de arredondamento especificado. |
| Round(Vector4) |
Arredonda cada elemento de um vetor para o inteiro mais próximo usando o modo de arredondamento padrão (ToEven). |
| Shuffle(Vector4, Byte, Byte, Byte, Byte) |
Cria um novo vetor selecionando valores de um vetor de entrada usando um conjunto de índices. |
| Sin(Vector4) |
Calcula o seno de cada elemento num vetor. |
| SinCos(Vector4) |
Calcula o seno e o cosseno de cada elemento num vetor. |
| SquareRoot(Vector4) |
Devolve um vetor cujos elementos são a raiz quadrada de cada um dos elementos de um vetor especificado. |
| Subtract(Vector4, Vector4) |
Subtrai o segundo vetor do primeiro. |
| Sum(Vector4) |
Calcula a soma de todos os elementos num vetor. |
| ToString() |
Devolve a representação da string da instância atual usando a formatação por defeito. |
| ToString(String, IFormatProvider) |
Devolve a representação da string da instância atual usando a string de formato especificada para formatar elementos individuais e o fornecedor de formato especificado para definir a formatação específica da cultura. |
| ToString(String) |
Devolve a representação da cadeia da instância atual usando a string de formato especificada para formatar elementos individuais. |
| Transform(Vector2, Matrix4x4) |
Transforma um vetor bidimensional por uma matriz 4x4 especificada. |
| Transform(Vector2, Quaternion) |
Transforma um vetor bidimensional pelo valor especificado de rotação de Quaternion. |
| Transform(Vector3, Matrix4x4) |
Transforma um vetor tridimensional por uma matriz 4x4 especificada. |
| Transform(Vector3, Quaternion) |
Transforma um vetor tridimensional pelo valor especificado de rotação do quaternião. |
| Transform(Vector4, Matrix4x4) |
Transforma um vetor quadridimensional por uma matriz 4x4 especificada. |
| Transform(Vector4, Quaternion) |
Transforma um vetor quadridimensional pelo valor especificado de rotação de quaterniões. |
| Truncate(Vector4) |
Trunca cada elemento num vetor. |
| TryCopyTo(Span<Single>) |
Tenta copiar o vetor para o dado Span<T>. O comprimento do vão de destino deve ser pelo menos 4. |
| Xor(Vector4, Vector4) |
Calcula o ou exclusivo de dois vetores. |
Operadores
| Name | Description |
|---|---|
| Addition(Vector4, Vector4) |
Soma dois vetores. |
| BitwiseAnd(Vector4, Vector4) |
Calcula o bit a bit-e de dois vetores. |
| BitwiseOr(Vector4, Vector4) |
Calcula o bit-or-ou de dois vetores. |
| Division(Vector4, Single) |
Divide o vetor especificado por um valor escalar especificado. |
| Division(Vector4, Vector4) |
Divide o primeiro vetor pelo segundo. |
| Equality(Vector4, Vector4) |
Devolve um valor que indica se cada par de elementos em dois vetores especificados é igual. |
| ExclusiveOr(Vector4, Vector4) |
Calcula o ou exclusivo de dois vetores. |
| Inequality(Vector4, Vector4) |
Devolve um valor que indica se dois vetores especificados não são iguais. |
| LeftShift(Vector4, Int32) |
Desloca cada elemento de um vetor deixado pela quantidade especificada. |
| Multiply(Single, Vector4) |
Multiplica o valor escalar pelo vetor especificado. |
| Multiply(Vector4, Single) |
Multiplica o vetor especificado pelo valor escalar especificado. |
| Multiply(Vector4, Vector4) |
Devolve um novo vetor cujos valores são o produto de cada par de elementos em dois vetores especificados. |
| OnesComplement(Vector4) |
Calcula o complemento de um vetor. |
| RightShift(Vector4, Int32) |
Desloca (assinado) cada elemento de um vetor pela quantidade especificada. |
| Subtraction(Vector4, Vector4) |
Subtrai o segundo vetor do primeiro. |
| UnaryNegation(Vector4) |
Anula o vetor especificado. |
| UnaryPlus(Vector4) |
Devolve um dado vetor inalterado. |
| UnsignedRightShift(Vector4, Int32) |
Desloca (sem sinal) cada elemento de um vetor pela quantidade especificada. |
Métodos da Extensão
| Name | Description |
|---|---|
| AsPlane(Vector4) | |
| AsQuaternion(Vector4) |
Reinterpreta a Vector4 como um novo Quaternion. |
| AsVector128(Vector4) |
Reinterpreta a Vector4 como um novo Vector128<T>. |
| AsVector2(Vector4) | |
| AsVector3(Vector4) | |
| ExtractMostSignificantBits(Vector4) |
Extrai o bit mais significativo de cada elemento num vetor. |
| GetElement(Vector4, Int32) |
Obtém o elemento no índice especificado. |
| Store(Vector4, Single*) |
Armazena um vetor no destino indicado. |
| StoreAligned(Vector4, Single*) |
Armazena um vetor no destino alinhado com 16 bytes dado. |
| StoreAlignedNonTemporal(Vector4, Single*) |
Armazena um vetor no destino alinhado com 16 bytes dado. |
| StoreUnsafe(Vector4, Single, UIntPtr) |
Armazena um vetor no destino indicado. |
| StoreUnsafe(Vector4, Single) |
Armazena um vetor no destino indicado. |
| ToScalar(Vector4) |
Converte o vetor dado num escalar contendo o valor do primeiro elemento. |
| WithElement(Vector4, Int32, Single) |
Cria um novo Vector128<T> com o elemento no índice especificado definido para o valor especificado e os restantes elementos definidos para o mesmo valor que no vetor dado. |