## 🚀 Преглед
**CubeEye** е напредна Android апликација дизајнирана за решавање на Рубикови коцки 3x3. Таа користи компјутерски вид за скенирање на физичка коцка и обезбедува интерактивен, анимиран 3D водич за нејзино решавање со користење на речиси оптимални движења.
## ✨ Клучни карактеристики
### 📷 Паметен систем за скенирање
* **Детекција на бои во реално време:** Автоматски ги идентификува боите на лицата на коцката користејќи ја камерата преку прилагодениот `ColorAnalyzer`.
* **Водено скенирање:** Интуитивен преклоп на корисничкиот интерфејс ги води корисниците низ процесот на правилно снимање на сите 6 лица.
* **Логика за валидација:** Вградениот `CubeValidator` осигурува дека скенираната состојба е физички решлива пред да продолжи.
* **Рачна корекција:** Вклучува `ColorPickerDialog` што им овозможува на корисниците рачно да ги прилагодат боите ако условите на осветлување влијаат на автоматското откривање.
### 🧩 Интелигентен решавач
* **Алгоритам Кочиемба:** Го интегрира познатиот двофазен алгоритам (преку библиотеката *min2phase*) за да пронајде речиси оптимални решенија, честопати барајќи помалку од 20 движења.
* **Брзо локално пресметување:** Решава сложени преплетувања за секунди директно на уредот без потреба од мрежна конекција.
### 🎥 Интерактивен 3D водич
* **3D визуелизација:** Содржи целосно интерактивен 3D рендер (`Cube3DView`) кој прецизно ја имитира состојбата на вистинската коцка.
* **Чекор-по-чекор анимација:** Корисниците можат да репродуцираат, паузираат и пребаруваат низ движењата на решението со свое темпо.
## 🛠 Технички карактеристики
* **Модерен Android Stack:** Изграден целосно со користење на Kotlin и Jetpack Compose (Материјал 3).
* **Робусна архитектура:** Ги следи принципите на чиста архитектура, користејќи MVVM шеми, Hilt за инјектирање на зависности и Coroutines за асинхрони операции.
* **CameraX:** Имплементира стабилна и ефикасна основа на камерата за преглед во живо и анализа на слики.
* **SceneView:** Ја користи библиотеката SceneView за високо-перформансно 3D рендерирање.
## 🐛 Познати проблеми / задачи
* Оптимизирајте ги праговите за детекција на бои за подобро справување со екстремни услови на осветлување.
* Автоматизирајте ја интеграцијата на библиотеката „min2phase“ (моментално вклучена како рачни изворни датотеки).
Ажуриранa на
6 јан. 2026 г.