Skip to content
DavimmoPublic

About

Cubo Blind Folded

Resources

Stars

0 stars

Watchers

1 watching

Forks

Latest commit

 

History

47 Commits

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 

Repository files navigation

CuboBF

Este projeto implementa um simulador de Cubo Mágico (Rubik's Cube) em Python, com uma interface gráfica 3D interativa construída com a biblioteca ursina. O projeto inclui a lógica completa para manipulação do cubo, detecção de estados e uma visualização dinâmica que permite ao usuário interagir com o cubo.

Funcionalidades

  • Simulação Completa do Cubo Mágico: Representação lógica de um Cubo Mágico 3x3x3, incluindo cubinhos de centro, meio e quina.
  • Rotações Detalhadas: Implementação de todas as rotações padrão do Cubo Mágico (R, L, U, D, F, B), rotações de camadas centrais (M, S, E) e rotações de camadas duplas (Rw, Lw, Uw, Dw, Fw, Bw), além de rotações de todo o cubo (X, Y, Z).
  • Interface Gráfica 3D Interativa: Visualização do cubo em 3D com a biblioteca ursina, permitindo rotações animadas e interação do usuário.
  • Detecção de Estado: Funções para verificar se o cubo está resolvido ou se partes específicas (meios, quinas) estão corretas.
  • Embaralhamento e Resolução (Potencial): Inclui uma função para embaralhar o cubo aleatoriamente e a integração com a biblioteca kociemba (embora a lógica de resolução completa não esteja explicitamente detalhada nos snippets fornecidos, a importação sugere essa capacidade).
  • Execução de Comandos Sequenciais: Capacidade de executar uma sequência de movimentos do cubo a partir de uma string de comandos.

Tecnologias Utilizadas

  • Python 3
  • NumPy: Para manipulação eficiente de coordenadas e matrizes de rotação dos cubinhos.
  • Ursina Engine: Biblioteca de jogos em Python para a criação da interface gráfica 3D e interações visuais.
  • Kociemba: Biblioteca para algoritmos de resolução do Cubo Mágico (importada, mas o uso completo não está detalhado nos snippets).

Estrutura do Projeto

  • cubo.py: Contém a lógica principal do Cubo Mágico, incluindo a definição dos cubinhos, suas coordenadas, adesivos e todas as funções de rotação e verificação de estado.
  • Interface do cubo.py: Implementa a interface gráfica 3D usando ursina, visualiza o cubo, gerencia as animações de rotação e processa a entrada do usuário.

Como Usar

Para executar este projeto, siga os passos abaixo:

  1. Clone o repositório:

    git clone https://github.com/Davimmo/CuboBF.git
    cd CuboBF
  2. Instale as dependências:

    Certifique-se de ter o pip instalado. Em seguida, instale as bibliotecas necessárias:

    pip install numpy ursina kociemba
  3. Execute a interface gráfica:

    Para iniciar a simulação do Cubo Mágico com a interface 3D, execute o arquivo Interface do cubo.py:

    python "Interface do cubo.py"

    Você pode interagir com o cubo usando as teclas definidas no código (u, i, o, j, k, l para rotações de face, alt + [tecla] para rotações de camada dupla, etc.).

Contribuição

Contribuições são bem-vindas! Sinta-se à vontade para abrir issues ou pull requests para melhorias, correções de bugs ou novas funcionalidades.

Autor

Davimmo

About

Cubo Blind Folded

Resources

Stars

0 stars

Watchers

1 watching

Forks

Releases

Packages

Contributors

Languages