## 🚀 सिंहावलोकन
**CubeEye** एक उन्नत एन्ड्रोइड अनुप्रयोग हो जुन 3x3 रुबिक्स क्यूबहरू समाधान गर्न डिजाइन गरिएको हो। यसले भौतिक क्यूब स्क्यान गर्न कम्प्युटर भिजनको प्रयोग गर्दछ र लगभग-इष्टतम चालहरू प्रयोग गरेर यसलाई समाधान गर्न अन्तरक्रियात्मक, एनिमेटेड 3D गाइड प्रदान गर्दछ।
## ✨ मुख्य सुविधाहरू
### 📷 स्मार्ट स्क्यानिङ प्रणाली
* **वास्तविक-समय रङ पत्ता लगाउने:** अनुकूलन `रङविश्लेषक` मार्फत क्यामेरा प्रयोग गरेर क्यूब अनुहारका रङहरू स्वचालित रूपमा पहिचान गर्दछ।
* **निर्देशित स्क्यानिङ:** एक सहज UI ओभरलेले प्रयोगकर्ताहरूलाई सबै 6 अनुहारहरू सही रूपमा खिच्ने प्रक्रिया मार्फत मार्गदर्शन गर्दछ।
* **प्रमाणीकरण तर्क:** निर्मित `CubeValidator` ले अगाडि बढ्नु अघि स्क्यान गरिएको अवस्था भौतिक रूपमा समाधान गर्न सकिने सुनिश्चित गर्दछ।
* * **म्यानुअल सुधार:** प्रकाश अवस्थाले स्वचालित पत्ता लगाउने असर गर्छ भने प्रयोगकर्ताहरूलाई म्यानुअल रूपमा रङहरू समायोजन गर्न अनुमति दिने `ColorPickerDialog` समावेश गर्दछ।
### 🧩 बुद्धिमान समाधानकर्ता
* **कोसिम्बा एल्गोरिथ्म:** लगभग-इष्टतम समाधानहरू फेला पार्न प्रसिद्ध दुई-चरण एल्गोरिथ्म (*min2phase* पुस्तकालय मार्फत) एकीकृत गर्दछ, जसलाई प्रायः २० भन्दा कम चालहरू आवश्यक पर्दछ।
* **द्रुत स्थानीय गणना:** नेटवर्क जडानको आवश्यकता बिना नै उपकरणमा सिधै सेकेन्डमा जटिल स्क्र्याम्बलहरू समाधान गर्दछ।
### 🎥 अन्तरक्रियात्मक 3D गाइड
* **3D भिजुअलाइजेशन:** पूर्ण रूपमा अन्तरक्रियात्मक 3D रेन्डर (`Cube3DView`) सुविधा दिन्छ जसले वास्तविक घनको अवस्थाको सही नक्कल गर्दछ।
* **चरण-दर-चरण एनिमेसन:** प्रयोगकर्ताहरूले आफ्नै गतिमा समाधान चालहरू प्ले गर्न, पज गर्न र स्क्रब गर्न सक्छन्।
## 🛠 प्राविधिक हाइलाइटहरू
* **आधुनिक एन्ड्रोइड स्ट्याक:** कोटलिन र जेटप्याक कम्पोज (मटेरियल ३) प्रयोग गरेर पूर्ण रूपमा निर्मित।
* **बलियो वास्तुकला:** सफा वास्तुकला सिद्धान्तहरू पालना गर्दछ, MVVM ढाँचाहरू, निर्भरता इंजेक्शनको लागि Hilt, र एसिन्क्रोनस सञ्चालनहरूको लागि Coroutines प्रयोग गर्दछ।
* **CameraX:** प्रत्यक्ष पूर्वावलोकन र छवि विश्लेषणको लागि स्थिर र कुशल क्यामेरा फाउन्डेसन लागू गर्दछ।
* **SceneView:** उच्च-प्रदर्शन 3D रेन्डरिङको लागि SceneView पुस्तकालय प्रयोग गर्दछ।
## 🐛 ज्ञात समस्याहरू / TODOs
* चरम प्रकाश अवस्थाहरूलाई राम्रोसँग ह्यान्डल गर्न रङ पत्ता लगाउने थ्रेसहोल्डहरू अनुकूलन गर्नुहोस्।
* "min2phase" पुस्तकालयको एकीकरण स्वचालित गर्नुहोस् (हाल म्यानुअल स्रोत फाइलहरूको रूपमा समावेश गरिएको)।
मा अपडेट गरिएको
२०२६ जनवरी ६