Empresas
Empregos
  • Sobre nós
  • Soluções
    • Publicação de vagas
      Publique sua vaga e receba candidatos qualificados em 48h.
    • Avaliações de candidatos
      Mais de 500 testes técnicos e psicológicos, mais anti-fraude.
    • Headhunting
      Busca executiva personalizada do início ao fim.
    • Folha de Pagamento + EOR
      Dispersão de folha e EOR em mais de 15 países da LATAM.
  • Preços
  • Empregos

0

264
Visualizações
¿Cómo arreglar el código para que se ejecute con precisión en modo vertical?

El siguiente código funciona bien para la vista 360 en modo horizontal. Enlace para comprobar: https://metagrid1.sv.vt.edu/~swmohd/npolys/ICAT2021/ICAT2021/Stroubles_2021/_Multi1.html

pero quiero que este código también funcione en caso de que detecte que el dispositivo está en modo vertical.

Gracias por adelantado

 <script> var runtime = null; var degreeToRadiansFactor = Math.PI / 180; x3dom.fields.Quaternion.prototype.setFromEulerYXZ = function (alpha, beta, gamma) { var c1 = Math.cos( alpha / 2 ); var c2 = Math.cos( beta / 2 ); var c3 = Math.cos( gamma / 2 ); var s1 = Math.sin( alpha / 2 ); var s2 = Math.sin( beta / 2 ); var s3 = Math.sin( gamma / 2 ); this.x = s1 * c2 * c3 + c1 * s2 * s3; this.y = c1 * s2 * c3 - s1 * c2 * s3; this.z = c1 * c2 * s3 - s1 * s2 * c3; this.w = c1 * c2 * c3 + s1 * s2 * s3; } function deg2rad(deg){return deg * degreeToRadiansFactor;} /* function added by sheeban for reference */ function handleOrientation(event) { updateFieldIfNotNull('Orientation_a', event.alpha); updateFieldIfNotNull('Orientation_b', event.beta); updateFieldIfNotNull('Orientation_g', event.gamma); incrementEventCount(); var V = document.getElementById('vp'); var degtorad = Math.PI / 180; // Degree-to-Radian conversion var a = event.alpha * degtorad; var b = event.beta * degtorad ; var c = event.gamma * degtorad; var q0 = x3dom.fields.Quaternion.axisAngle(new x3dom.fields.SFVec3f(0,0,1),-Math.PI/2); // phone rotation offset // works now in LANDSCAPE MODE !!!!!!!!!!!!!!! /// note order and sign here ! var q = new x3dom.fields.Quaternion(); q.setFromEulerYXZ(b, a, -c); // our own implemented function var q1 = new x3dom.fields.Quaternion.axisAngle(new x3dom.fields.SFVec3f(1,0,0),-Math.PI/2); // device orientation points upwards. rotate down to camera orientation // q = q.multiply(q1); q = q.multiply(q0); var aa = q.toAxisAngle(); //console.log(aa); V.setAttribute("orientation", aa[0].x + " " + aa[0].y + " " + aa[0].z + " " + aa[1]); }
about 4 years ago · Juan Pablo Isaza
Responde à pergunta
Encontrar trabalhos remotos

Descubra a nova forma de encontrar um emprego!

melhores empregos
Principais categorias de trabalho
Empresas
Postar vaga Preços Comercial
Jurídico
Termos e Condições Política de privacidade
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomende algumas ofertas para mim
Preciso de ajuda