
Objetivo de esta entrada
Publicamos el código fuente que usamos para la app del cubo 3×3. El código solo se carga cuando abres un archivo.
Herramientas utilizadas
- Qt6 (Core, Gui, Widgets, OpenGL, Network) y OpenGL: el cubo 3D y la pantalla de importación de fotos
- Búsqueda en dos fases de Kociemba: se incluye tal cual el código en C de muodov/kociemba. Es GPL-2.0.
- Qwen3-VL-8B-Instruct (transformers, MPS de Mac): el servidor de escaneo con VLM. Se conecta a la app por TCP.
Estructura de carpetas
- src/CubeModel: estado del cubo, giros y clasificación de colores
- src/CubeWidget, MainWindow: pantalla OpenGL y giro con el ratón, botones de mezclar, anterior, siguiente y oráculo
- src/CubePhotoReconstructor: lectura de las 54 casillas a partir de dos fotos, comprobación de reglas y corrección automática
- src/PhotoImportDialog: importación de fotos, escaneo normal y con VLM, y el anillo de seis colores que aparece al pulsar una casilla
- src/KociembaSolver, Oracle, BeginnerSolver, MoveSolver: resolución. Se usan en el orden Kociemba → búsqueda corta → método por capas para principiantes.
- src/TcpCubeVlmClient, vlm_server: cliente y servidor del escaneo con VLM
- tools/face_scan_cli.py: herramienta de línea de comandos con la que se comprobaban los colores cara a cara
- third_party/ckociemba: código en C de Kociemba
La compilación se hace con cmake, como indica el README. No se incluyen los resultados de compilación, los entornos virtuales, los archivos de tablas de Kociemba (cache) ni las fotos de prueba. Los 82 programas de prueba se omitieron porque tienen las rutas de las fotos de prueba escritas en el código.
Código fuente completo
42 archivos · 11.309 líneas — abre una carpeta y haz clic en un archivo para cargar su código.
Raíz del proyecto
CMakeLists.txt
Cargando el código…
README.md
Cargando el código…
src/
src/BeginnerSolver.cpp
Cargando el código…
src/BeginnerSolver.h
Cargando el código…
src/CubeModel.cpp
Cargando el código…
src/CubeModel.h
Cargando el código…
src/CubePhotoReconstructor.cpp
Cargando el código…
src/CubePhotoReconstructor.h
Cargando el código…
src/CubeWidget.cpp
Cargando el código…
src/CubeWidget.h
Cargando el código…
src/KociembaSolver.cpp
Cargando el código…
src/KociembaSolver.h
Cargando el código…
src/main.cpp
Cargando el código…
src/MainWindow.cpp
Cargando el código…
src/MainWindow.h
Cargando el código…
src/MoveSolver.cpp
Cargando el código…
src/MoveSolver.h
Cargando el código…
src/Oracle.cpp
Cargando el código…
src/Oracle.h
Cargando el código…
src/PhotoImportDialog.cpp
Cargando el código…
src/PhotoImportDialog.h
Cargando el código…
src/TcpCubeVlmClient.cpp
Cargando el código…
src/TcpCubeVlmClient.h
Cargando el código…
third_party/
third_party/ckociemba/coordcube.c
Cargando el código…
third_party/ckociemba/cubiecube.c
Cargando el código…
third_party/ckociemba/facecube.c
Cargando el código…
third_party/ckociemba/include/color.h
Cargando el código…
third_party/ckociemba/include/coordcube.h
Cargando el código…
third_party/ckociemba/include/corner.h
Cargando el código…
third_party/ckociemba/include/cubiecube.h
Cargando el código…
third_party/ckociemba/include/edge.h
Cargando el código…
third_party/ckociemba/include/facecube.h
Cargando el código…
third_party/ckociemba/include/facelet.h
Cargando el código…
third_party/ckociemba/include/prunetable_helpers.h
Cargando el código…
third_party/ckociemba/include/search.h
Cargando el código…
third_party/ckociemba/prunetable_helpers.c
Cargando el código…
third_party/ckociemba/README.md
Cargando el código…
third_party/ckociemba/search.c
Cargando el código…
tools/
tools/face_scan_cli.py
Cargando el código…
vlm_server/
vlm_server/cube_vlm_server.py
Cargando el código…
vlm_server/README.md
Cargando el código…
vlm_server/requirements.txt
Cargando el código…
COMMENTS · CHAPTER 04
El código fuente completo y las herramientas utilizadas 0 comentarios
Todavía no hay comentarios. Deja una pregunta o algo que quieras añadir.
Para publicar un comentario, empieza con Google y registra un apodo y un correo.
Empezar con Google