परिवर्तनों के बारे में इतना पढ़ने के बाद, यह मेरे ऐप के लिए एक ट्रैकबॉल लागू करने का समय है। मैं समझता हूं कि मुझे माउस से क्लिक की गई उत्पत्ति के लिए एक वेक्टर बनाना होगा और फिर मूल से दूसरे स्थान पर जहां माउस को छोड़ा गया है।
मेरा सवाल यह है कि क्या मुझे विश्व-कॉर्ड्स में x (x, y) पिक्सेल कोर्ड्स को ट्रांसफ़ॉर्म करना है या क्या मुझे इमेज स्पेस में सब कुछ करना चाहिए (इमेज स्पेस को पिक्सल में मापा गया दृश्य का 2 डी प्रोजेक्शन माना जाता है)?
संपादित करें
रिची सैमस का जवाब बहुत अच्छा है। हालांकि, मुझे लगता है कि मैं थोड़ा अलग दृष्टिकोण का पालन कर रहा हूं, कृपया मुझे सही करें अगर मैं गलत हूं या मैं कुछ गलत समझ रहा हूं।
अपने आवेदन में मैं एक है SimplePerspectiveCamera
वर्ग को मिलने वाले position
कैमरे के, position of the target
हम पर, देख रहे हैं up
वेक्टर, fovy
, aspectRatio
, near
और far
दूरी।
उन लोगों के साथ मैं अपना व्यू और प्रोजेक्शन मैट्रीस बनाता हूं। अब, यदि मैं ज़ूम इन / आउट करना चाहता हूं तो मैं देखने के क्षेत्र को अपडेट करता हूं और अपने प्रोजेक्शन मैट्रिक्स को अपडेट करता हूं। यदि मैं पैन करना चाहता हूं तो मैं कैमरे की स्थिति को स्थानांतरित करता हूं और माउस द्वारा निर्मित डेल्टा को देखता हूं।
अंत में, घुमाव के लिए मैं कोण-अक्ष परिवर्तन या चतुर्धातुक का उपयोग कर सकता हूं। इसके लिए, मैं पिक्सेल-कोर्ड्स को बचाता हूँ जहाँ माउस को दबाया गया था और फिर जब माउस चलता है तो मैं पिक्सेल-कॉर्ड को भी बचाता हूँ।
Coords की प्रत्येक जोड़ी के लिए मैं जेड मूल्य की गणना कर सकते हैं एक क्षेत्र के लिए सूत्र को देखते हुए, यानी, sqrt (1-x ^ 2-y ^ 2), तो वैक्टर कि से जाने के लिए गणना target
करने के लिए PointMousePressed
और से target
करने के लिए PointMouseMoved
, पार उत्पाद कर रोटेशन की धुरी पाने के लिए और नए कैमरे की स्थिति की गणना करने के लिए किसी भी विधि का उपयोग करें।
हालांकि, मेरा सबसे बड़ा संदेह यह है कि पिक्सेल-कॉर्ड में x (y, z) मान दिए गए हैं, और जब मैं उपयोग कर रहा हूं तो वैक्टर की गणना करते हुए target
जो विश्व-कॉर्ड में एक बिंदु है। क्या मैं जो कोशिश कर रहा हूं, उसके परिणाम को प्रभावित करने वाली समन्वित प्रणाली का यह मिश्रण नहीं है?
z
त्रिज्या के एक क्षेत्र के मूल्य की गणना करने के लिए (x, y) का उपयोग कर सकता हूं r
, हालांकि मुझे यकीन नहीं है कि अगर यह क्षेत्र विश्व-अंतरिक्ष या छवि-अंतरिक्ष में रहता है और इसके क्या निहितार्थ हैं। शायद मैं समस्या को खत्म कर रहा हूं।