मैं एक डायल पर काम कर रहा हूं जो एक सर्कल के चारों ओर घूमता है।
इस डायल में आपको एक सर्कल में किसी भी बिंदु पर क्लिक के रूप में एक ही कोण के साथ सर्कल के एक बिंदु को समायोजित करने के लिए आपको कहीं भी मूसमव करने देना चाहिए। उदाहरण के लिए, ऊपर दिए गए डायल से यदि आप नीचे गुलाबी रंग में दिखाए गए स्थान पर क्लिक करते हैं तो मैं डायल को उस बिंदु से ऊपर ले जाऊंगा लेकिन वृत्त पर।
मुझे पता है कि एक त्रिज्या और एक कोण (त्रिज्या में) पर दिए गए बिंदु पर एक बिंदु की स्थिति कैसे प्राप्त करें। यह सूत्र है :
x = Cos(angle) * radius + CenterX;
y = Sin(angle) * radius + CenterY;
हालांकि, मैं इसके विपरीत कुछ करने की तलाश कर रहा हूं - मुझे एक क्लिक बिंदु मिला है, जिसे मैं एक सर्कल में एक बिंदु में बदलना चाहता हूं (जहां नियंत्रण घुंडी चला जाता है)। मैं इस बिंदु (और एक दी गई त्रिज्या) का उपयोग करने की कोशिश कर रहा हूं ताकि इसके लिए रेडियन में कोण का पता लगाया जा सके, ताकि मैं उसी कोण पर सर्कल पर नियंत्रण घुंडी को रख सकूं।
वहाँ एक आसान सूत्र है जो मैं इसे पूरा करने के लिए उपयोग कर सकता हूं?
atan
के लिए कम है arctan
, और atan2
यह केवल एक फ़ंक्शन है जो व्यक्तिगत तर्कों को स्वीकार करता है, और आपके लिए विभाजन करता है।