किसी वस्तु को वृत्ताकार पथ में ले जाना


26

मैं एक वस्तु (डॉट) को एक गोलाकार रास्ते में स्थानांतरित करना चाहता हूं। इसे पूरा करने के लिए मुझे X और Y निर्देशांक को कैसे बदलना चाहिए?

जवाबों:


54

आप साधारण गणित का उपयोग करके ऐसा कर सकते हैं:

X := originX + cos(angle)*radius;
Y := originY + sin(angle)*radius;

(ओरिक्सएक्स, ओरिजी) आपके सर्कल का केंद्र है। त्रिज्या इसकी त्रिज्या है। बस।

यह काम करता है क्योंकि साइन और कोज़ाइन गणितीय रूप से यूनिट सर्कल से संबंधित हैं

यूनिट सर्कल में साइन और कोसाइन का संबंध
इमेज क्रेडिट: लुकासवीबी (खुद का काम) [पब्लिक डोमेन], विकिमीडिया कॉमन्स के माध्यम से । (70% तक कम हो गया।)


क्या होगा अगर यह एक अंडाकार है? यानी कोई सेट त्रिज्या नहीं।
परीक्षा

2
@test: यदि अंडाकार X या Y उन्मुख है, तो आप अतिरिक्त कारक द्वारा संबंधित अक्ष स्थिति को गुणा कर सकते हैं। यदि आपको अधिक विवरण की आवश्यकता है, तो आपको एक अलग प्रश्न पूछना चाहिए।
Kromster का कहना है कि

@Anko: मुझे नहीं लगता कि एनीमेशन इसे बेहतर बताता है, लेकिन इसे उन लोगों के लिए रहने दें, जिन्हें इसकी आवश्यकता है। सीडब्ल्यू में परिवर्तित।
क्रॉम्स्टर का कहना है कि मोनिका

@ क्रॉस्टर 3 डी अंतरिक्ष में एक ही परिणाम प्राप्त करने के बारे में क्या?
टॉमस

14

आप क्रॉम द्वारा चिह्नित पैरामीट्रिक समीकरण का उपयोग कर सकते हैं। यह समझने के लिए कि हमने इस सूत्र का उपयोग क्यों किया, आपको यह समझना होगा कि समीकरण क्या है। यह समीकरण सर्कल के पैरामीट्रिक समीकरण से लिया गया है

सर्कल को ध्यान में रखते हुए मूल (O) पर केंद्र के साथ खींचा गया है जैसा कि नीचे चित्र में दिखाया गया है वृत्त

यदि हम वृत्त की परिधि पर एक बिंदु "p" लेते हैं, तो एक त्रिज्या r है।

ओपी (उत्पत्ति से पी) द्वारा किए गए कोण को θ होने दें। X- अक्ष से p की दूरी y होने दें। y- अक्ष से p की दूरी x हो

उपरोक्त मान्यताओं का उपयोग करके हम त्रिकोण को नीचे दिखाए गए अनुसार बनाते हैं: त्रिकोण

अब हम जानते हैं कि cos / = base / hypotenuse और sin p = perpendicular / hypotenuse

जो हमें cos gives = x / r और sin = y / r देता है

:: x = r * cos θ और y = r * sin cos

लेकिन यदि वृत्त मूल पर नहीं है और (a, b) पर है तो हम कह सकते हैं कि वृत्त का केंद्र स्थानांतरित है

x अक्ष
b में एक इकाई y अक्ष में इकाइयाँ
तो ऐसे वृत्त के लिए हम x और y अक्ष पर बदलाव जोड़कर पैरामीट्रिक समीकरण को बदल सकते हैं जिससे हमें निम्नलिखित समीकरण मिलेंगे:

x = a + (r * cos θ)
y = b + (r * sin θ)


जहां a और b x हैं, वृत्त के केंद्र के y सह-निर्देशांक हैं।

इसलिए हमने त्रिज्या r के साथ वृत्त की परिधि पर बिंदु के सह-निर्देश x और y को पाया


2
धन्यवाद, इस समस्या के लिए वास्तव में अच्छा और संक्षिप्त जवाब, अंगूठे पर
अली। गढ़त

5

एक और चाल है, जहाँ आप पाप (x + a) और cos (x + a) फॉर्मूले का उपयोग करते हैं, और यह आपको sin (a) और cos (a) की गणना करने की अनुमति देता है - एक कोण जिससे आप चलना चाहते हैं अपनी वर्तमान स्थिति से - केवल एक बार और प्रत्येक चरण पर केवल गुणा और परिवर्धन करें।

sin (x + a) = sin (x) * cos (a) + cos (x) * sin (a), iirc।

बेशक, यह निरंतर कोणीय वेग मानता है।

हालांकि सीमित अंकगणितीय परिशुद्धता से सावधान रहें। मैंने पिछले "सर्कुलर" मोशन में देखा है कि इस तरह से लागू किया गया है कि समय के साथ-साथ समय-समय पर गोल चक्कर के परिणामस्वरूप एक सर्पिल खींचा जाएगा। प्रत्येक क्रांति के बाद (x0, y0) की स्थिति को रीसेट करना आवश्यक हो सकता है।

हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.