Quaternion

classe pública Quaternion

Uma classe de quatérnio do Sceneform para flutuantes

As operações de quatérnio são hamiltonianas usando a convenção de regra da direita.

Campos

ponto flutuante público t
ponto flutuante público x
ponto flutuante público a
ponto flutuante público Z

Construtores públicos

Quaternion() (em inglês)
Criar o Quaternion e definir como Identity
Quaternion(float x, float y, float z, float w)
Construa o Quaternion e defina cada valor.
Quaternion(Quaternion q)
Construa o Quaternion usando valores de outro Quaternion
Quaternion(eixo Vector3, ângulo flutuante)
Construa o Quaternion usando um eixo/ângulo para definir a rotação
Quaternion(Vector3 elerAngles)
Construa o Quaternion com base em eulerAngles.

Métodos públicos

Quaternion estático
axisAngle (eixo Vector3, graus flutuantes)
Usar um novo quatérnio usando um eixo/ângulo para definir a rotação
booleano estático
igual a(kubectls do Quaternion, rhs do Quaternion)
Comparar dois quatérnios

Testes de igualdade calculando o produto ponto para lhs e rhs.

boolean
equals(objeto other)
Retorna verdadeiro se o outro objeto for um Quaternion e o produto de ponto for 1,0 +/- uma tolerância.
Quaternion estático
eulerAngles (Vector3, elerAngles)
Receba um novo Quaternion usando eulerAngles para definir a rotação.
Quaternion estático
identity() (em inglês)
Receber um Quaternion definido como identidade
estático Vector3
Quaternão
invertido()
Obter um quatérnio com a rotação oposta
Quaternion estático
lookRotation(Vector3 forwardInWorld, Vector3 desejadoUpInWorld)
Receba um novo Quaternion que representa uma rotação em direção a uma direção para frente especificada.
Quaternion estático
multiplicação(kubectls do Quaternion, rhs do Quaternion)
Crie um quaternion combinando dois multiplicadores de quaternions(lhs, rhs) para equivaler a executar a rotação rhs e, depois, a ordem de rotação de lhs é importante para esta operação.
boolean
normalize()
Redimensiona o quatérnio para o comprimento da unidade.
Quaternão
normalizado()
Receba um quatérnio com uma rotação correspondente, mas dimensionado para o comprimento da unidade.
estático Vector3
rotateVector(Quaternion q, Vector3 src)
Gira um Vector3 por um quatérnio
Quaternion estático
rotationBetweenVectors(início: Vector3, término de Vector3)
Receba um novo Quaternion que representa a rotação de um vetor para outro.
void
set (float qx, float qy, float qz, float qw)
Defina cada valor e normalize o quatérnio
void
set(eixo Vector3, ângulo flutuante)
Atualize este Quaternion usando um eixo/ângulo para definir a rotação
void
set (Quaternion q)
Copie valores de outro quatérnio para este
void
setIdentity()
Definir o quatérnio como identidade
Quaternion estático
slerp(início da Quaternion, final da Quaternion, float t)
String

Métodos herdados

Campos

ponto flutuante público w

ponto flutuante público x

ponto flutuante público y

ponto flutuante público z

Construtores públicos

público Quaternion ()

Criar o Quaternion e definir como Identity

public Quaternion (float x, float y, float z, float w)

Construa o Quaternion e defina cada valor. O Quaternion será normalizado durante a construção

Parâmetros
x
y
z
w

público Quaternion (Quaternion q)

Construa o Quaternion usando valores de outro Quaternion

Parâmetros
q

público Quaternion (eixo Vector3, ângulo flutuante)

Construa o Quaternion usando um eixo/ângulo para definir a rotação

Parâmetros
Axis Define a direção de rotação
ângulo Tamanho do ângulo em graus

público Quaternion (Vector3 eulerAngles)

Construa o Quaternion com base em eulerAngles.

Parâmetros
EulerAngles - o ângulo em graus para cada eixo.
Ver também

Métodos públicos

público estático Quaternion axisAngle (Eixo Vector3, graus flutuantes)

Usar um novo quatérnio usando um eixo/ângulo para definir a rotação

Parâmetros
Axis Define a direção de rotação
graus Tamanho do ângulo em graus

booleano estático booleano é igual a (lhares de Quaternion, Quaternion rhs)

Comparar dois quatérnios

Testes de igualdade ao calcular o produto de ponto de lhs e rhs. lhs e -lhs não serão iguais de acordo com esta função.

Parâmetros
lhs
RH

booleano público é igual a (Objeto outro)

Retorna verdadeiro se o outro objeto for um Quaternion e o produto de ponto for 1,0 +/- uma tolerância.

Parâmetros
Outras

público estático Quaternion eulerAngles (Vector3 eulerAngles)

Receba um novo Quaternion usando eulerAngles para definir a rotação.

As rotações são aplicadas em ordem Z, Y e X. Isso é consistente com outros mecanismos gráficos. É importante observar que os sistemas de coordenadas são diferentes no Sceneform e no Unity. Portanto, os mesmos ângulos usados aqui terão uma orientação diferente do Unity. Verifique cuidadosamente os valores dos parâmetros para ter o mesmo efeito que em outros mecanismos.

Parâmetros
EulerAngles - os ângulos em graus.

público estático Quaternion identidade ()

Receber um Quaternion definido como identidade

público estático Vector3 inverserotateVector (Quaternion q, Vector3 src)

Parâmetros
q
src

público Quaternion invertido ()

Obter um quatérnio com a rotação oposta

Retorna
  • a rotação oposta

público estático Quaternion lookRotation (Vector3forwardInWorld, Vector3DesejaUpInWorld)

Receba um novo Quaternion que representa uma rotação em direção a uma direção para frente especificada. Se upInWorld for ortogonal para forwardInWorld, o eixo Y será alinhado com desejadoUpInWorld.

Parâmetros
forwardInWorld
desejadoUpInWorld

público estático Quaternion multiplicar (lhlhas do Quaternion, Quaternion rhs)

Crie um quaternion combinando dois multiplicadores de quaternions(lhs, rhs) para equivaler a executar a rotação rhs e, depois, a ordem de rotação de lhs é importante para esta operação.

Parâmetros
lhs
RH
Retorna
  • A rotação combinada

booleano público normalizar ()

Redimensiona o quatérnio para o comprimento da unidade.

Se não for possível escalonar o Quaternion, ele será definido como identidade e false será retornado.

Retorna
  • verdadeiro se o Quaternion for diferente de zero

público Quaternion normalizado ()

Receba um quatérnio com uma rotação correspondente, mas dimensionado para o comprimento da unidade.

Retorna
  • o quatérnio dimensionado para o comprimento da unidade, ou zero se isso não puder ser feito.

público estático Vector3 rotateVector (Quaternion q, Vector3 src)

Gira um Vector3 por um quatérnio

Parâmetros
q
src
Retorna
  • O vetor girado

público estático Quaternion rotationBetweenVectors (Vector3 início, Vector3 final)

Receba um novo Quaternion que representa a rotação de um vetor para outro.

Parâmetros
início
end

public void set (float qx, float qy, float qz, float qw)

Defina cada valor e normalize o quatérnio

Parâmetros
qx
qy
qz
qw

public void set (eixo Vector3, ângulo flutuante)

Atualize este Quaternion usando um eixo/ângulo para definir a rotação

Parâmetros
Axis
ângulo

public void set (Quaternion q)

Copie valores de outro quatérnio para este

Parâmetros
q

public void setIdentity ()

Definir o quatérnio como identidade

público estático Quaternion slerp (Quaternion start, Quaternion end, float t)

Parâmetros
início
end
t

String toString ()