2013-07-22 7 views
7

से स्वतंत्र स्क्रीन पर लिनक्स ड्रा यह किसी और चीज़ की तुलना में एक शब्दावली प्रश्न है।विंडोज मैनेजर

परिचय

मैं चेहरा नज़र रखने वाली जानकारी प्राप्त करने के लिए प्वाइंट बादल लाइब्रेरी का उपयोग कर रहा हूँ। इस डेटा का उपयोग करके मैं ट्रैक करना चाहता हूं कि स्क्रीन पर उपयोगकर्ता कहां से सामना कर रहा है। ये कोई समस्या नहीं है।

समस्या

उपयोगकर्ता के प्रतिक्रिया देने के लिए, मैं, स्क्रीन पर एक लाल वृत्त के रूप में उपयोगकर्ता के चेहरे-दिशा के आकलन आकर्षित करने के लिए मूल रूप से के रूप में देखा here (वे सिर्फ एक छोटे से विंडो बनाने) चाहते हैं । मैं इस सर्कल को स्क्रीन पर हर जगह जाने में सक्षम होना चाहता हूं और मैं हमेशा यह दिखाना चाहता हूं। मैं नहीं चाहता कि इसे एक और सक्रिय विंडो से ढंका जाए। अगर यह खिड़की के साथ बातचीत को बाधित करता है, तो मैं इसके साथ ठीक हूं।

मेरी समस्या यह है कि मुझे नहीं पता कि कहां से शुरू करना है।

मैं सिर्फ कर्सर को नियंत्रित कर सकता हूं, लेकिन यह आदर्श तब कम है, क्योंकि मैं चेहरे का पता लगाने के दौरान भी कर्सर को स्थानांतरित करने में सक्षम होना चाहता हूं।

मुझे लगता है कि मुझे ओपनजीएल का उपयोग करने की आवश्यकता है, लेकिन मैंने देखा है कि सभी उदाहरण एक्स विंडोज़ के अंदर हैं। उदाहरण के लिए, मुझे संकेत मिला कि here संकेत मिलने के बाद here, मुझे एक अच्छी स्थायी विंडो दें, लेकिन खिड़की अभी भी मेरे सभी माउस क्लिक को कैप्चर करती है। मैं ओपनजीएल के साथ स्क्रीन पर कुछ कैसे आकर्षित करूं जो एक्स-विंडो स्वतंत्र है?

क्या मैं इसे गलत दिशा से पूरी तरह से देख रहा हूं? यदि हां, तो मुझे क्या करना चाहिए?

मैं किसी भी उत्तर को स्वीकार करूंगा जो मुझे एक प्रारंभिक बिंदु देता है।

मंच

मैं Ubuntu 12.04 उपयोग कर रहा हूँ एकता डेस्कटॉप के साथ।

+0

यह आपको शुरू हो सकता है: http://stackoverflow.com/questions/9363491/how-to-make-transparent-window-on-linux –

+0

मैंने इसे पढ़ा और कोड चलाया, लेकिन ऐसा लगता है कि खिड़की की तरह अगर मैं एक और विंडो सक्रिय करता हूं तब भी छुपाया जा सकता है। – Seanny123

+3

ओपनजीएल का उपयोग करने के लिए आप _need_ नहीं करते हैं, हालांकि यह एक अच्छा विचार होगा (प्रदर्शन कारणों से, और शायद यह ड्राइंग के लिए आसान होगा)। अब, वास्तविक प्रश्न के लिए, मैं "समग्र" X.org एक्सटेंशन (http://www.x.org/archive/X11R7.5/doc/compositeproto/compositeproto.txt) में देखने की अनुशंसा करता हूं।आपको कहीं भी शुरू करना चाहिए =) – MiJyn

उत्तर

2

एक नियमित विंडो बनाएं। विंडो को हमेशा शीर्ष पर रखने के लिए डब्ल्यूएम को सजावट चींटी छोड़ने के लिए कहें। एक परिपत्र आउटपुट क्षेत्र और एक खाली इनपुट क्षेत्र को अलग से सेट करने के लिए XFixesSetWindowShapeRegion() का उपयोग करें। आपको काम करने के लिए एक कंपोजिटिंग विंडो मैनेजर XFixes एक्सटेंशन की आवश्यकता है।

आप अपनी खिड़की अर्ध-पारदर्शी भी बना सकते हैं (इसे एक कंपोजिटिंग विंडो मैनेजर की आवश्यकता है)।

gtk जैसे आधुनिक टूलकिट को ऊपर दिए गए सभी को करने के लिए एपीआई का उपयोग करना आसान होना चाहिए।

किसी भी स्तर पर कोई ओपनजीएल की आवश्यकता नहीं है।

+0

क्या यह विंडो अभी भी किसी भी माउस क्लिक को निष्पादित करेगी? – Seanny123

+0

नहीं, यह नहीं होगा, खाली इनपुट आकार इसका ख्याल रखता है। असल में यह किसी भी माउस इनपुट प्राप्त नहीं होगा। यद्यपि कुंजीपटल इनपुट के बारे में निश्चित नहीं है। –

+0

@ एनएम .: आकार विस्तार को काम करने के लिए एक कंपोजिटिंग डब्ल्यूएम की आवश्यकता नहीं है। आकार लगभग हमेशा के लिए रहा है, कंपोजिटिंग के बारे में भी पहले ही सुनवाई की गई थी। – datenwolf

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