## 🚀 ઝાંખી
**CubeEye** એ એક અદ્યતન Android એપ્લિકેશન છે જે 3x3 રુબિક્સ ક્યુબ્સ ઉકેલવા માટે રચાયેલ છે. તે ભૌતિક ક્યુબને સ્કેન કરવા માટે કમ્પ્યુટર વિઝનનો ઉપયોગ કરે છે અને નજીકના શ્રેષ્ઠ ચાલનો ઉપયોગ કરીને તેને ઉકેલવા માટે એક ઇન્ટરેક્ટિવ, એનિમેટેડ 3D માર્ગદર્શિકા પ્રદાન કરે છે.
## ✨ મુખ્ય સુવિધાઓ
### 📷 સ્માર્ટ સ્કેનિંગ સિસ્ટમ
* **રીઅલ-ટાઇમ કલર ડિટેક્શન:** કસ્ટમ `કલર એનાલિઝર` દ્વારા કેમેરાનો ઉપયોગ કરીને ક્યુબ ફેસ કલર્સને આપમેળે ઓળખે છે.
* **માર્ગદર્શિત સ્કેનિંગ:** એક સાહજિક UI ઓવરલે વપરાશકર્તાઓને બધા 6 ફેસને યોગ્ય રીતે કેપ્ચર કરવાની પ્રક્રિયામાં માર્ગદર્શન આપે છે.
* **માન્યતા તર્ક:** બિલ્ટ-ઇન `CubeValidator` ખાતરી કરે છે કે સ્કેન કરેલી સ્થિતિ આગળ વધતા પહેલા ભૌતિક રીતે ઉકેલી શકાય છે.
* **મેન્યુઅલ કરેક્શન:** એક `ColorPickerDialog` શામેલ છે જે વપરાશકર્તાઓને મેન્યુઅલી રંગોને સમાયોજિત કરવાની મંજૂરી આપે છે જો પ્રકાશની સ્થિતિ સ્વચાલિત શોધને અસર કરે છે.
### 🧩 બુદ્ધિશાળી સોલ્વર
* **કોસિમ્બા અલ્ગોરિધમ:** પ્રખ્યાત ટુ-ફેઝ અલ્ગોરિધમ (*મિનિમ2ફેઝ* લાઇબ્રેરી દ્વારા) ને એકીકૃત કરે છે જેથી નજીકના શ્રેષ્ઠ ઉકેલો શોધી શકાય, ઘણીવાર 20 થી ઓછા ચાલની જરૂર પડે છે.
* **ઝડપી સ્થાનિક ગણતરી:** નેટવર્ક કનેક્શનની જરૂર વગર ઉપકરણ પર સીધા જ સેકન્ડોમાં જટિલ સ્ક્રૅમ્બલ્સ ઉકેલે છે.
### 🎥 ઇન્ટરેક્ટિવ 3D માર્ગદર્શિકા
* **3D વિઝ્યુલાઇઝેશન:** સંપૂર્ણ ઇન્ટરેક્ટિવ 3D રેન્ડર (`Cube3DView`) દર્શાવે છે જે વાસ્તવિક ક્યુબની સ્થિતિનું સચોટ અનુકરણ કરે છે.
* **સ્ટેપ-બાય-સ્ટેપ એનિમેશન:** વપરાશકર્તાઓ પોતાની ગતિએ સોલ્યુશન મૂવ્સ ચલાવી શકે છે, થોભાવી શકે છે અને સ્ક્રબ કરી શકે છે.
## 🛠 ટેકનિકલ હાઇલાઇટ્સ
* **આધુનિક એન્ડ્રોઇડ સ્ટેક:** કોટલિન અને જેટપેક કમ્પોઝ (મટીરીયલ 3) નો ઉપયોગ કરીને સંપૂર્ણપણે બનાવવામાં આવ્યું છે.
* **મજબૂત આર્કિટેક્ચર:** સ્વચ્છ આર્કિટેક્ચર સિદ્ધાંતોનું પાલન કરે છે, MVVM પેટર્ન, ડિપેન્ડન્સી ઇન્જેક્શન માટે Hilt અને અસુમેળ કામગીરી માટે Coroutines નો ઉપયોગ કરે છે.
* **CameraX:** લાઇવ પ્રીવ્યૂ અને ઇમેજ વિશ્લેષણ માટે સ્થિર અને કાર્યક્ષમ કેમેરા ફાઉન્ડેશન લાગુ કરે છે.
* **SceneView:** ઉચ્ચ-પ્રદર્શન 3D રેન્ડરિંગ માટે SceneView લાઇબ્રેરીનો ઉપયોગ કરે છે.
## 🐛 જાણીતા મુદ્દાઓ / TODO
* આત્યંતિક પ્રકાશ પરિસ્થિતિઓને વધુ સારી રીતે હેન્ડલ કરવા માટે રંગ શોધ થ્રેશોલ્ડને ઑપ્ટિમાઇઝ કરો.
* "min2phase" લાઇબ્રેરી (હાલમાં મેન્યુઅલ સોર્સ ફાઇલો તરીકે શામેલ છે) ના એકીકરણને સ્વચાલિત કરો.
આ રોજ અપડેટ કર્યું
6 જાન્યુ, 2026