6

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

alt text http://cl.ly/3228b0e7ea32b172e960/content

किसी भी मदद के लिए धन्यवाद! दोबारा, यदि संभव हो तो मैं पिक्सेल के बजाय इस ज्यामितीय रूप से ऐसा करूंगा।

उत्तर

5

आप केविन लिंडसे के जावास्क्रिप्ट ज्यामिति पुस्तकालय पर एक नजर है करने के लिए चाहते हो सकता है यह शायद सभी interesection एल्गोरिदम आप देख रहे हैं शामिल हैं: http://www.kevlindev.com/geometry/index.htm

+0

बहुत बढ़िया! धन्यवाद! – devongovett

0

यह जानने के बिना कि आपके ग्राफिक्स पथ को कैसे परिभाषित किया गया है, एक ठोस एल्गोरिदम के साथ आपके प्रश्न का उत्तर देना असंभव है। सीधे लाइन सेगमेंट के लिए this book on algorithms में एक समाधान है।

+0

असल में, मैं सभी के लिए उपयोग कर सकते है कैनवास ड्राइंग कमांड और उनके तर्क। उदाहरण के लिए, यदि एपीआई को लाइन के साथ बुलाया गया था, तो एक चाल के लिए, फिर एक चाप में मेरे पास वह सारी जानकारी है। एपीआई को प्रत्येक कॉल एक सरणी में संग्रहीत किया जाता है। मेरे पास पथ परिभाषा है, मैं सिर्फ यह जानना चाहता हूं कि रेखा पथ को कैसे छेड़छाड़ करती है। – devongovett

+0

@devongovett: मेरा सुझाव यह है कि आप उस जानकारी को प्रश्न में जोड़ते हैं। –

+0

तो आपकी समस्या जावास्क्रिप्ट कैनवास ड्राइंग कमांड और सीधी रेखा द्वारा परिभाषित लाइनों के बीच छेड़छाड़ को ढूंढना है। –

0

यदि आपके पास सब कुछ के लिए समीकरण हैं, तो आप इसे (सिद्धांत रूप में) कर सकते हैं। व्यवहार में, यह इतना आसान नहीं है (विशेष रूप से सामान्य मामले में नहीं)। This discussion लाइनों और बेजियर वक्रों को छेड़छाड़ करने पर कुछ अच्छी सलाह है।

0

आप एक लाइन और एक "पट्टी" एक्स (टी), वाई (टी) जो दोनों एक्स (टी) और y (टी) के लिए सबसे अधिक 4-वें डिग्री बहुपद पर होना चाहिए एक दूसरे को काटना चाहते हैं। आप समीकरणों को हल करना चाहते हैं, लेकिन आपको सभी मानकों को जानने की आवश्यकता है। यदि समाधान किसी भी सीमा से बाहर है (लाइन सेगमेंट और स्पलीन सेगमेंट शुरू और अंत है) - इसे छोड़ दें। संबंधित प्रश्न: -

The intersection point between a spline and a line

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