2010-02-10 12 views
6

मैं क्यूटी/सी ++ का उपयोग कर रहा हूं और एक बड़े और जटिल QGraphicsScene को आकर्षित करने की कोशिश कर रहा हूं। एक बार जब मैं बहुत सारी वस्तुओं को जोड़ता हूं, तो पैनिंग और ज़ूमिंग अपूर्ण रूप से धीमी हो जाती है। (बिल्कुल, कोई आश्चर्य नहीं)। मैंने डिवाइस समन्वय कैशिंग के साथ खेला है (एक बिंदु पर पैनिंग में मदद करता है) और न्यूनतम व्यूपोर्ट अपडेट और इसी तरह, लेकिन आखिर में बहुत सारी ऑब्जेक्ट्स हैं। मैं जो करना चाहता हूं वह यूआई को किसी भी तरह से नियंत्रित करने से असीमित रूप से आइटम खींचता है। दूसरे शब्दों में, जैसे कि Google मानचित्र करता है, मैं पैन करना और ज़ूम करना चाहता हूं और ड्राइंग को जितना तेज़ कर सकता हूं उतना तेज़ी से पकड़ना चाहता हूं, लेकिन वस्तुओं को चित्रित करने से पहले पैन करने में सक्षम होना चाहिए।मैं क्यूटी में Google मानचित्र जैसी टाइल स्क्रॉलिंग को कैसे कार्यान्वित कर सकता हूं?

एक विधि मैं कोशिश कर रहा हूँ दो QGraphicsScenes तैयार करना है। एक में वास्तविक वस्तुएं हैं लेकिन QGraphicsView से जुड़ी नहीं है। अन्य QGraphicsScene QGraphicsView से जुड़ा हुआ है, लेकिन इसमें कुछ टाइल वाले QPixmaps हैं जो स्क्रीन को कवर करने के लिए आकार में हैं। योजना किसी भी टाइल पिक्समैप को अपडेट करने के लिए अतिरिक्त CPU चक्रों का उपयोग करना है, जिसकी आवश्यकता है। ऐसा लगता है कि यह मुझे प्रतिपादन पर आवश्यक नियंत्रण देगा (इसलिए मुझे पूरे दृश्य दृश्य को फिर से प्रस्तुत करने के दौरान ब्लॉक करना नहीं है)। विचार? क्या किसी ने इसे लागू किया है?

उत्तर

3

यहां एक नज़र डालें: Generating content in threads

ऐसा लगता है कि यह वही है जो आप करने की कोशिश कर रहे हैं। बड़ी मात्रा में डेटा लोड करने के लिए टाइल तंत्र बहुत आम तरीके हैं। पोस्ट किए गए लिंक के अलावा, मैंने QGraphicsView का उपयोग करके एक साधारण उदाहरण नहीं देखा है।

40000 Chips बड़ी मात्रा में डेटा प्रबंधित करने के बारे में कुछ चीजें भी दिखाता है।

+0

मैंने "40000 चिप्स" देखा है - उस उदाहरण की मेरी समझ यह है कि यह एक अच्छा "विस्तार का स्तर" कार्यान्वयन तकनीक करता है, जहां प्रत्येक चिप के लिए QGraphicsScene में केवल एक आइटम होता है, लेकिन पेंट() यदि ज़ूम विभिन्न थ्रेसहोल्ड से ऊपर है तो चिप अतिरिक्त विवरण खींचता है। आपके द्वारा ऑफ़र किया गया लिंक बहुत प्रासंगिक लगता है। जैसे ही मुझे मौका मिलता है, मैं विस्तार से इसे आज़माउंगा ... धन्यवाद! –

संबंधित मुद्दे

 संबंधित मुद्दे