2012-03-26 5 views
30

में सर्किल परिधि पर यादृच्छिक बिंदु कैसे उत्पन्न कर सकता हूं, मैं एक ऐसा फ़ंक्शन लिखने की कोशिश कर रहा हूं जो किसी दिए गए परिधि के आसपास यादृच्छिक रूप से एक (x, y) समन्वय को वापस कर देगा, इसलिए यदि मेरे पास कोई बिंदु है (0 , 0) (div का केंद्र होने के नाते) मैं एक ऐसा फ़ंक्शन कैसे लिख सकता हूं जो किसी मंडली के बाहरी किनारे के बीच दिखाई देने वाली अन्य इकाइयों को यादृच्छिक रूप से रखता हो।मैं जावास्क्रिप्ट

मुझे केवल समीकरण की आवश्यकता है, मुझे पता है कि केंद्र से दूरी को परिधि किनारे तक दूरी प्राप्त करने के साथ कुछ करने के लिए बस कुछ नहीं है, इसका अनुमान नहीं है कि इसकी गणना कैसे करें और इसे यादृच्छिक बनाएं ताकि यह अच्छा लगे।

var angle = Math.random()*Math.PI*2; 

फिर

x = Math.cos(angle)*radius; 
y = Math.sin(angle)*radius; 

डन:

+3

अपनी हाई स्कूल त्रिकोणमिति पाठ्य पुस्तक खोदकर शुरू करें। साइन के कानून पर अनुभाग की तलाश करें। आप बहुत सारे सही त्रिकोणों के साथ काम करेंगे। – gilly3

+1

इस इंस्टेंट ने समीकरण के केवल एक हिस्से के लिए Googleिंग के थक गए और परीक्षण और त्रुटि से इसे समझने के लिए होमवर्क किया। – Mouseroot

उत्तर

72

बस एक यादृच्छिक कोण मिलता है।

+3

हाँ कार्य करता है: http://jsfiddle.net/hNgxP/ +1, बहुत अच्छा। मैंने सोचा जितना आसान – gilly3

+0

हाँ यह वास्तव में काम करता है कि मैं इसे कैसे चाहता था और यहां तक ​​कि इसे मेरे लिए भी तोड़ देता है: डी – Mouseroot

+0

कोण किस प्रकार का मूल्य है? क्या यह रेडियंस है? – knownasilya

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