>> Tecnologia Eletrônica >  >> Câmeras >> Câmeras de Vídeo

Como Calcular uma Função LookAt

Para definir matematicamente a função lookAt, algumas definições preliminares devem ser feitas. Assuma que você está parado olhando para um ponto. Onde você está é definido como P_eye. O ponto que você olha é P_current. O ponto que você "tenta" olhar é P_target. A função lookAt calcula o ângulo necessário para rotacionar P_eye de P_current para P_target (ou seja, o ângulo que você precisa virar a cabeça para olhar P_target). Em termos técnicos, a função lookAt é o arco-cosseno do produto escalar do vetor do olho para o ponto atual e do vetor do olho para o ponto alvo.

Materiais necessários

  • Lápis
  • Papel
  • Calculadora

Instruções

  1. Desenhe um eixo x e um eixo y. O eixo x vai horizontalmente (linha da esquerda para direita), e o eixo y verticalmente (linha de baixo para cima).

  2. Defina P_eye. Para a função lookAt, todos os pontos devem ser definidos em 2 dimensões. Exemplo: P_eye = (1,1) — 1 unidade na direção "x" (esquerda) e 1 unidade na direção "y" (cima).

  3. Defina P_current. É o ponto que o olho olha atualmente. Exemplo: P_current = (3,3).

  4. Defina P_target. É o ponto "alvo" que o olho olhará eventualmente. Exemplo: (2,5).

  5. Calcule N_current. É o vetor de P_eye para P_current: P_current - P_eye. No exemplo: (3,3) - (1,1) = (2,2).

  6. Calcule N_target. É o vetor de P_eye para P_target: P_target - P_eye. No exemplo: (2,5) - (1,1) = (1,4).

  7. Calcule o produto escalar de N_current e N_target. Exemplo: (2,2)·(1,4) = 2*1 + 2*4 = 2 + 8 = 10.

  8. Tome o arco-cosseno do resultado anterior. Exemplo: arccos(10) = 1,47 radianos. Esta é a saída final da função lookAt; é o ângulo que o olho deve girar para olhar o ponto alvo.