{"id":28956043,"url":"https://github.com/j00nathan/solar-system-sim-pygame","last_synced_at":"2025-08-22T20:05:22.355Z","repository":{"id":300176148,"uuid":"991337832","full_name":"J00naTHan/solar-system-sim-pygame","owner":"J00naTHan","description":"A simple solar system simulation developed in Python using the Pygame library to render and animate the graphical components. This project was created as the final assignment for the Computer Graphics class","archived":false,"fork":false,"pushed_at":"2025-06-20T07:57:47.000Z","size":13,"stargazers_count":1,"open_issues_count":0,"forks_count":0,"subscribers_count":0,"default_branch":"main","last_synced_at":"2025-06-20T08:41:46.525Z","etag":null,"topics":["2d-graphics","pygame","python","simulation","solar-system"],"latest_commit_sha":null,"homepage":"","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"lgpl-2.1","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/J00naTHan.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null}},"created_at":"2025-05-27T13:27:02.000Z","updated_at":"2025-06-20T07:57:50.000Z","dependencies_parsed_at":"2025-06-20T08:41:48.065Z","dependency_job_id":"5452f3ff-ad4f-4285-865c-d8468eff6d8f","html_url":"https://github.com/J00naTHan/solar-system-sim-pygame","commit_stats":null,"previous_names":["j00nathan/solar-system-sim-pygame"],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/J00naTHan/solar-system-sim-pygame","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/J00naTHan%2Fsolar-system-sim-pygame","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/J00naTHan%2Fsolar-system-sim-pygame/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/J00naTHan%2Fsolar-system-sim-pygame/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/J00naTHan%2Fsolar-system-sim-pygame/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/J00naTHan","download_url":"https://codeload.github.com/J00naTHan/solar-system-sim-pygame/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/J00naTHan%2Fsolar-system-sim-pygame/sbom","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":261552385,"owners_count":23176148,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["2d-graphics","pygame","python","simulation","solar-system"],"created_at":"2025-06-23T20:30:57.166Z","updated_at":"2025-08-22T20:05:22.338Z","avatar_url":"https://github.com/J00naTHan.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":"# solar-system-sim-pygame\n\nUma simulação simples do sistema solar desenvolvida em Python com a biblioteca Pygame para renderizar e animar os componentes gráficos. Este projeto foi criado como trabalho final para a disciplina de Computação Gráfrica.\n\n## Funcionalidades\n\nA simulação conta com uma série de funcionalidades que a tornam uma experiência rica e interativa:\n\n* **Representação do Sistema Solar:** Simulação dos 8 planetas do sistema solar, cada um com sua própria velocidade orbital, tamanho e cor.\n* **Hierarquia Orbital:** Luas orbitam seus respectivos planetas, enquanto os planetas orbitam o Sol central, demonstrando um sistema de coordenadas aninhado.\n* **Luas Implementadas:**\n    * A Lua da Terra.\n    * Phobos e Deimos de Marte.\n    * As quatro luas galileanas de Júpiter: Io, Europa, Ganímedes e Calisto.\n* **HUD Interativa:** Ao passar o mouse sobre qualquer corpo celeste (Sol, planetas ou luas), uma caixa de informações (HUD) aparece, exibindo o nome e uma breve descrição do objeto.\n* **Controle de Velocidade Dinâmico:** O usuário pode acelerar ou desacelerar o tempo da simulação em tempo real, com um controle mais fino para velocidades mais lentas.\n* **Função de Pausa:** A simulação pode ser pausada e resumida a qualquer momento.\n* **Efeitos Visuais Avançados:**\n    * **Rastros Orbitais:** Planetas e luas deixam um rastro que se desvanece suavemente.\n    * **Anéis de Saturno:** Saturno é representado com um sistema de anéis inclinado.\n    * **Fundo Dinâmico:** O fundo é composto por centenas de estrelas que \"piscam\" sutilmente.\n    * **Brilho Interativo:** Corpos celestes apresentam um brilho sutil ao passar o mouse sobre eles.\n\n## Pré-requisitos\n\nPara executar este projeto, você precisará ter instalado:\n\n* Python 3.7 ou superior\n* Biblioteca Pygame\n\n## Instalação\n\n1.  Clone este repositório para a sua máquina local.\n2.  Navegue até o diretório do projeto pelo terminal.\n3.  Instale as dependências a partir do arquivo `requirements.txt`:\n\n    ```bash\n    pip install -r requirements.txt\n    ```\n\n## Como Executar\n\nApós a instalação das dependências, execute o arquivo `main.py` a partir da raiz do diretório do projeto:\n\n```bash\npython main.py\n```\n\n## Controles\n\n* **Seta para Cima:** Aumenta a velocidade da simulação.\n* **Seta para Baixo:** Diminui a velocidade da simulação.\n* **Barra de Espaço:** Pausa ou resume a simulação.\n* **Mouse:** Mova o cursor sobre os planetas, luas ou o Sol para exibir informações detalhadas.\n* **Fechar Janela:** Encerra a aplicação.\n\n---\n\n## Estrutura do Projeto\n\nO código é modularizado para garantir organização e legibilidade:\n\n* `main.py`: Ponto de entrada da aplicação. Gerencia o loop principal, os eventos do usuário e a renderização geral.\n* `celestial.py`: Contém as definições de classes para todos os corpos celestes (`Sun`, `Planet`, `Moon`).\n* `background.py`: Define a classe `StarBackground`, responsável por gerar e animar o fundo estrelado.","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fj00nathan%2Fsolar-system-sim-pygame","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fj00nathan%2Fsolar-system-sim-pygame","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fj00nathan%2Fsolar-system-sim-pygame/lists"}