/Rubik

Primary LanguageJavaGNU General Public License v3.0GPL-3.0

Rubik

Si usted no está familiarizado con el Cubo de Rubik le recomendamos leer el siguiente enlace.

https://es.wikipedia.org/wiki/Cubo_de_Rubik

Donde se explica, entre otras cosas, el origen del cubo, su propósito, y la notación utilizada por los algoritmos para resolver el cubo.

Introducción

Esta aplicación le permitará al usuario simular la experiencia de resolver un cubo de Rubik de 3x3 mediante un programa de computadora. Para esto utlizaremos una interfaz gráfica, en la cual podra interactuar con el cubo de Rubik de las siguientes maneras:

  • Manual: partiendo de un cubo ordenado, el usuario podrá desordenarlo a su gusto para luego proceder a resolverlo.
  • Generado por la computadora: partiendo de un cubo ordenado, el usuario le pedirá a la aplicación que lo desordene para luego proceder a resolverlo.
  • Resolución automática: partiendo de un cubo desordenado, el usuario le pedirá a la aplicación que le muestre de forma gráfica los pasos necesarios para ordenar el cubo, pudiendo controlar la velocidad con la que se ejecuta cada paso.

Adicionalmente, existe un cuarto modo, Modo Reto, en donde el usuario recibe como desafío un cubo desordenado, generado por un servidor central, para que sea resuelto en el menor tiempo posible. El tiempo de resolución será registrado por la aplicación y enviado al servidor para que este mantenga un Leaderboard con los tiempos de todos los participantes del reto. Este Leaderboard mantendrá las estadísticas de todos los retos generados por el servidor.

El desarrollo de este proyecto estará basado en el código de la aplicación RubikFX desarrollado por José Pereda y descrito en su [blog] (http://jperedadnr.blogspot.com/2014/04/rubikfx-solving-rubiks-cube-with-javafx.html.)

Librerías

En el desarrollo de este proyecto se usaron las librerias adjuntas con su respectivo link de descarga.

Desarrolladores

  • Madelyne Velasco Mite
  • Andres Contreras Calle
  • Edison Pacalla Guamán