## š Oorsig
**CubeEye** is 'n gevorderde Android-toepassing wat ontwerp is om 3x3 Rubik's Cubes op te los. Dit gebruik rekenaarvisie om 'n fisiese kubus te skandeer en bied 'n interaktiewe, geanimeerde 3D-gids om dit op te los met behulp van byna optimale bewegings.
## ⨠Belangrike kenmerke
### š· Slim skanderingstelsel
* **Intydse kleuropsporing:** Identifiseer outomaties kubusgesigkleure met behulp van die kamera via die persoonlike `ColorAnalyzer`.
* **Begeleide skandering:** 'n IntuĆÆtiewe gebruikerskoppelvlak-oorleg lei gebruikers deur die proses om al 6 gesigte korrek vas te lĆŖ.
* **Valideringslogika:** Die ingeboude `CubeValidator` verseker dat die geskandeerde toestand fisies oplosbaar is voordat voortgegaan word.
* **Handmatige regstelling:** Sluit 'n `ColorPickerDialog` in wat gebruikers toelaat om kleure handmatig aan te pas as ligtoestande outomatiese opsporing beĆÆnvloed.
### š§© Intelligente Oplosser
* **Kociemba Algoritme:** Integreer die bekende Tweefase-algoritme (via die *min2phase*-biblioteek) om byna optimale oplossings te vind, wat dikwels minder as 20 bewegings vereis.
* **Vinnige Plaaslike Berekening:** Los komplekse deurmekaar probleme binne sekondes direk op die toestel op sonder om 'n netwerkverbinding te benodig.
### š„ Interaktiewe 3D-gids
* **3D-visualisering:** Beskik oor 'n volledig interaktiewe 3D-weergawe (`Cube3DView`) wat die werklike kubus se toestand akkuraat naboots.
* **Stap-vir-Stap Animasie:** Gebruikers kan die oplossingsbewegings teen hul eie pas speel, pouseer en deurblaai.
## š Tegniese Hoogtepunte
* **Moderne Android-stapel:** Geheel gebou met Kotlin en Jetpack Compose (Materiaal 3).
* **Robuuste Argitektuur:** Volg Skoon Argitektuurbeginsels, deur gebruik te maak van MVVM-patrone, Hilt vir afhanklikheidsinspuiting, en Coroutines vir asinchrone bewerkings.
* **CameraX:** Implementeer 'n stabiele en doeltreffende kamera-fondament vir regstreekse voorskou en beeldanalise.
* **SceneView:** Gebruik die SceneView-biblioteek vir hoƫprestasie 3D-weergawes.
## š Bekende Probleme / TODO's
* Optimaliseer kleuropsporingsdrempels om uiterste ligtoestande beter te hanteer.
* Outomatiseer die integrasie van die "min2phase"-biblioteek (tans ingesluit as handmatige bronlĆŖers).
Opgedateer op
06 Jan. 2026