## 🚀 Übersicht
**CubeEye** ist eine fortschrittliche Android-App zum Lösen von 3x3-Zauberwürfeln. Sie nutzt Computer Vision, um einen physischen Würfel zu scannen und bietet eine interaktive, animierte 3D-Anleitung für die Lösung mit nahezu optimalen Zügen.
## ✨ Hauptfunktionen
### 📷 Intelligentes Scansystem
* **Farberkennung in Echtzeit:** Die Farben der Würfelflächen werden automatisch mithilfe der Kamera und des benutzerdefinierten `ColorAnalyzer` erkannt.
* **Geführtes Scannen:** Eine intuitive Benutzeroberfläche führt Sie durch den Scanvorgang und hilft Ihnen, alle 6 Flächen korrekt zu erfassen.
* **Validierungslogik:** Der integrierte `CubeValidator` stellt sicher, dass der gescannte Zustand physikalisch lösbar ist, bevor der Scanvorgang fortgesetzt wird.
* **Manuelle Korrektur:** Über einen `ColorPickerDialog` können Sie die Farben manuell anpassen, falls die Lichtverhältnisse die automatische Erkennung beeinträchtigen.
### 🧩 Intelligenter Löser
* **Kociemba-Algorithmus:** Integriert den bekannten Zwei-Phasen-Algorithmus (über die *min2phase*-Bibliothek), um nahezu optimale Lösungen zu finden, die oft weniger als 20 Züge benötigen.
* **Schnelle lokale Berechnung:** Löst komplexe Würfelrätsel in Sekundenschnelle direkt auf dem Gerät, ohne Netzwerkverbindung.
### 🎥 Interaktive 3D-Anleitung
* **3D-Visualisierung:** Bietet eine vollständig interaktive 3D-Darstellung (`Cube3DView`), die den Zustand des Würfels präzise nachbildet.
* **Schritt-für-Schritt-Animation:** Benutzer können die Lösungszüge in ihrem eigenen Tempo abspielen, pausieren und durchblättern.
## 🛠 Technische Highlights
* **Moderner Android-Stack:** Komplett mit Kotlin und Jetpack Compose (Material 3) entwickelt.
* **Robuste Architektur:** Folgt den Prinzipien der Clean Architecture und nutzt MVVM-Muster, Hilt für Dependency Injection und Coroutinen für asynchrone Operationen.
* **CameraX:** Implementiert eine stabile und effiziente Kamerabasis für Live-Vorschau und Bildanalyse.
* **SceneView:** Nutzt die SceneView-Bibliothek für leistungsstarkes 3D-Rendering.
## 🐛 Bekannte Probleme / Aufgaben
* Farberkennungsschwellenwerte optimieren, um extreme Lichtverhältnisse besser zu bewältigen.
* Integration der Bibliothek „min2phase“ automatisieren (derzeit als manuelle Quelldateien eingebunden).
Aktualisiert am
06.01.2026