## 🚀 Përmbledhje
**CubeEye** është një aplikacion i avancuar Android i projektuar për të zgjidhur Kubet e Rubikut 3x3. Ai shfrytëzon vizionin kompjuterik për të skanuar një kub fizik dhe ofron një udhëzues 3D interaktiv dhe të animuar për ta zgjidhur atë duke përdorur lëvizje pothuajse optimale.
## ✨ Karakteristikat Kryesore
### 📷 Sistem Skanimi Inteligjent
* **Zbulimi i Ngjyrave në Kohë Reale:** Identifikon automatikisht ngjyrat e fytyrës së kubit duke përdorur kamerën përmes `ColorAnalyzer`-it të personalizuar.
* **Skanim i Udhëzuar:** Një mbivendosje intuitive e ndërfaqes së përdoruesit udhëzon përdoruesit përmes procesit të kapjes së saktë të të 6 fytyrave.
* **Logjika e Validimit:** `CubeValidator` i integruar siguron që gjendja e skanuar të jetë e zgjidhshme fizikisht përpara se të vazhdohet.
* **Korrigjimi Manual:** Përfshin një `ColorPickerDialog` që u lejon përdoruesve të rregullojnë manualisht ngjyrat nëse kushtet e ndriçimit ndikojnë në zbulimin automatik.
### 🧩 Zgjidhës Inteligjent
* **Algoritmi Kociemba:** Integron Algoritmin e famshëm Dy-Fazor (nëpërmjet bibliotekës *min2phase*) për të gjetur zgjidhje pothuajse optimale, shpesh që kërkojnë më pak se 20 lëvizje.
* **Llogaritje e Shpejtë Lokale:** Zgjidh probleme komplekse në sekonda direkt në pajisje pa pasur nevojë për lidhje rrjeti.
### 🎥 Udhëzues Interaktiv 3D
* **Vizualizim 3D:** Paraqet një renderim 3D plotësisht interaktiv (`Cube3DView`) që imiton me saktësi gjendjen e kubit të vërtetë.
* **Animacion Hap pas Hapi:** Përdoruesit mund të luajnë, ndalojnë dhe shfletojnë lëvizjet e zgjidhjes me ritmin e tyre.
## 🛠 Pikat Kryesore Teknike
* **Stack Modern Android:** Ndërtuar tërësisht duke përdorur Kotlin dhe Jetpack Compose (Materiali 3).
* **Arkitekturë e Fortë:** Ndjek parimet e Arkitekturës së Pastër, duke përdorur modelet MVVM, Hilt për injeksion varësie dhe Coroutines për operacione asinkrone.
* **CameraX:** Implementon një themel të qëndrueshëm dhe efikas të kamerës për pamje paraprake të drejtpërdrejtë dhe analizë të imazhit.
* **SceneView:** Përdor bibliotekën SceneView për renderim 3D me performancë të lartë.
## 🐛 Probleme të Njohura / Detyra për t'u Kryer
* Optimizoni pragjet e zbulimit të ngjyrave për të trajtuar më mirë kushtet ekstreme të ndriçimit.
* Automatizoni integrimin e bibliotekës "min2phase" (aktualisht të përfshira si skedarë burimorë manualë).