Empresas
Empleos
  • Sobre nosotros
  • Soluciones
    • Publicación de vacantes
      Publica tu vacante y recibe candidatos calificados en 48h.
    • Evaluación de candidatos
      500+ pruebas técnicas y psicológicas, más anti-fraude.
    • Headhunting
      Búsqueda ejecutiva a la medida de principio a fin.
    • Nómina + EOR
      Dispersión de nómina y EOR en más de 15 países de LATAM.
  • Precios
  • Empleos

0

253
Vistas
¿Cómo calcular eficientemente los puntos visibles en una esfera?

Tengo muchos puntos pequeños para dibujar en la superficie de una esfera. Están situados por dos ángulos lat ∈ [-PI/2,PI/2] y long ∈ [-PI,PI] y el mismo radio R .

Mi cámara está apuntando directamente al centro de la esfera, y también está ubicada con ángulos de latitud y longitud. Sin embargo, su distancia desde el centro puede variar, pero siempre es mayor que R , llamémoslo d .

Para cada punto visible, tengo que hacer otros cálculos además del renderizado real, por lo que para hacer que el bucle de animación sea más rápido, me gustaría saber cuáles son visibles y cuáles no.

Lo que he probado:

No los represente si esta condición es verdadera: Math.abs(point.position.long - camera.position.long) > Math.PI/4 && Math.abs(point.position.lat - camera.position.lat) > Math.PI/4

Lo cual solo funciona cuando la latitud de la cámara es 0, porque si estás en un polo, el rango de longitudes que quieres ver es en realidad 2*PI, pero quieres un rango de latitud reducido.

Luego intenté tener en cuenta la latitud al calcular el rango de longitud, usando Math.PI/4 + 3/2*Math.abs(this.rotation.lat) en lugar de solo Math.PI/4 y es mejor pero aún no Perfecto.

Me gustaría saber cómo podría lograr esto y, en el mejor de los casos, tener en cuenta la configuración de la cámara, tal vez con sus matrices de proyección o vista de modelo (uso THREE.js para que estén disponibles) para reducir realmente la cantidad de puntos prestados.

Muchas gracias,

about 4 years ago · Juan Pablo Isaza
Responde la pregunta
Encuentra empleos remotos

¡Descubre la nueva forma de encontrar empleo!

Top de empleos
Top categorías de empleo
Empresas
Publicar vacante Precios Comercial
Legal
Términos y condiciones Política de privacidad
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomiéndame algunas ofertas
Necesito ayuda