Rastreador 3D de satélites para navegador, basado en mecánica orbital real y dirigido a estudiantes, docentes y equipos de operaciones espaciales.
qunabu/Gravity
Un simulador interactivo del sistema solar con TypeScript y Three.js que muestra cómo la gravedad determina las órbitas, con un recorrido guiado y datos astronómicos reales.
- Estrellas
- 220
- Forks
- 17
- Issues abiertos
- 0
- Último commit
- hace 29 días
¿Qué es?
Gravity es un simulador del sistema solar que funciona en el navegador, desarrollado con TypeScript, Three.js y Vite. Usa datos astronómicos reales sobre el tamaño y la masa de los cuerpos, así como elementos orbitales J2000.0, para que los planetas, Plutón y las lunas principales sigan sus órbitas reales. Lo único que se escala es la representación visual, y una opción permite alternar entre la escala real y una escala visual que mantiene visibles al mismo tiempo el Sol y el diminuto Mercurio.
El proyecto comienza con un recorrido guiado de 43 pasos que explica por qué existen las órbitas: parte de las leyes de Newton y avanza por el sistema Tierra-Luna, los puntos de Lagrange, las mareas y la relatividad general. Cada paso tiene un enlace directo, y el texto se puede cambiar entre inglés y polaco. Después del recorrido, el modo de exploración libre permite interactuar directamente con la simulación.
Se puede alternar entre dos modelos físicos: un modelo kepleriano analítico y un modelo N-body que integra la gravedad newtoniana entre todos los pares de cuerpos con un integrador leapfrog y muestra en tiempo real la variación de energía. Las texturas se generan de forma procedimental en un canvas, por lo que la aplicación funciona sin conexión y no necesita archivos de imagen.
Funciones clave
- 01Tamaños, masas y elementos orbitales J2000 reales del Sol, los planetas, Plutón y las lunas principales.
- 02Alterna entre la escala real y una escala visual que mantiene visibles los cuerpos pequeños.
- 03Alterna entre órbitas keplerianas analíticas y una simulación de gravedad N-body en tiempo real.
- 04Recorrido guiado de 43 pasos con enlaces directos y texto en inglés o polaco.
- 05Texturas de planetas y lunas generadas de forma procedimental, compatibles con el uso sin conexión.
Casos de uso
- Enseñar mecánica orbital y las leyes de Newton a estudiantes.
- Explorar visualmente cómo funcionan los puntos de Lagrange, las mareas y la resonancia orbital.
- Usar el código de TypeScript y Three.js como referencia para una visualización científica en 3D.
Inicio rápido
- 1
Instala las dependencias
npm install - 2
Inicia el servidor de desarrollo en localhost:5173
npm run dev
Antes de usarlo
- Los valores del nodo orbital, el argumento y la fase de la Luna son aproximados; solo son reales el semieje mayor, la excentricidad, la inclinación y el período.
- La escala visual utiliza una transformación no lineal, por lo que, en ese modo, las elipses orbitales solo son aproximadamente elípticas.
- El modo N-body con las lunas activadas requiere un paso de tiempo más pequeño y puede perder precisión con multiplicadores de tiempo muy altos.
Temas
Preguntas frecuentes
- ¿Qué es Gravity?
- Un simulador interactivo del sistema solar con TypeScript y Three.js que muestra cómo la gravedad determina las órbitas, con un recorrido guiado y datos astronómicos reales. Gravity es un simulador del sistema solar que funciona en el navegador, desarrollado con TypeScript, Three.js y Vite. Usa datos astronómicos reales sobre el tamaño y la masa de los cuerpos, así como elementos orbitales J2000.0, para que los planetas, Plutón y las lunas principales sigan sus órbitas reales. Lo único que se escala es la representación visual, y una opción permite alternar entre la escala real y una escala visual que mantiene visibles al mismo tiempo el Sol y el diminuto Mercurio.
- ¿Gravity es gratuito? ¿Qué licencia tiene?
- Gravity es open source bajo la licencia GPL-3.0. Revisa los términos de la licencia antes de usarlo en productos comerciales.
- ¿Gravity sigue mantenido?
- Mantenimiento activo. El último commit de Gravity fue el 21 sept 2026.
- ¿Para qué puedo usar Gravity?
- Enseñar mecánica orbital y las leyes de Newton a estudiantes. Explorar visualmente cómo funcionan los puntos de Lagrange, las mareas y la resonancia orbital. Usar el código de TypeScript y Three.js como referencia para una visualización científica en 3D.
- ¿Cómo se instala Gravity?
- Instala las dependencias: npm install Inicia el servidor de desarrollo en localhost:5173: npm run dev
- ¿Dónde consigo Gravity?
- El código fuente y las instrucciones de instalación están en GitHub: https://github.com/qunabu/Gravity
Resumen generado por IA a partir del README del proyecto. Las estadísticas de GitHub se actualizan a diario.
Proyectos relacionados
Aplicación web interactiva que funciona sin conexión y reconstruye en el navegador el cielo nocturno local para cualquier lugar y momento.
Motor declarativo que genera y renderiza infografías SVG a partir de una sintaxis de texto, diseñado para la generación con IA y la salida en streaming.
Un renderizador pequeño y síncrono que convierte texto de diagramas Mermaid en SVG sin dependencias en tiempo de ejecución.
Motor de física de propósito general para simular con rapidez y precisión cuerpos articulados en contacto, muy utilizado en investigación de robótica y aprendizaje automático.
Biblioteca de C++ para simulación de cuerpos rígidos y detección de colisiones, optimizada para varios núcleos y destinada a juegos y aplicaciones de VR.