2009-07-22 15 views
6

मैं 2 डी में निम्नलिखित ज्यामितीय मुद्दा है:2 डी ज्यामिति: यदि एक बिंदु एक कोण के अंदर है, इसकी जांच करने

मैं एक बिंदु जहाँ से मैं एक अनंत कोण (2 डी-कोन) जो एक द्वारा दिया जाता है डाली है दिशा और एक कोण। (बिंदु और दिशा एक वेक्टर के रूप में होती है और प्रत्येक पक्ष के कोण के आधे भाग 2 डी-शंकु होते हैं)

अब मैं यह जांचना चाहता हूं कि 2 डी में एक और बिंदु इस शंकु के बाहर या बाहर है या नहीं।

यह कैसे प्राप्त किया जा सकता है? धन्यवाद!

+1

किस भाषा में? – erenon

+0

एक शंकु 3 डी नहीं है? –

+1

भाषा कोई फर्क नहीं पड़ता; मुझे विश्वास है कि ओपी एल्गोरिदम है जिसे ओपी ढूंढ रहा है। –

उत्तर

9

शंकु के केंद्र से क्वेरी बिंदु पर वेक्टर की गणना करें। वेक्टर को लम्बाई 1 के सामान्यीकृत करें, शंकु का केंद्र वेक्टर लें और इसके साथ-साथ 1.
की लंबाई को सामान्य करें। अब वैक्टर के बीच डॉट उत्पाद लें। दो सामान्यीकृत वैक्टरों के बीच डॉट उत्पाद उनके बीच कोण का कोसिनस है। डॉट उत्पाद के आर्ककोस (acos) को ले जाएं और आपको कोण मिल जाएगा। इस कोण को शंकु के कोण (अपने विवरण में आधा कोण) से तुलना करें। यदि यह कम है, तो प्रश्न में बिंदु शंकु के अंदर है।

यह 2 डी और 3 डी में काम करता है।

+0

धन्यवाद, असल में यही वह है जो मैंने हर समय किया था, लेकिन मुझे नहीं लगता कि यह खत्म हो गया है, क्योंकि मुझे नहीं पता था कि बिंदु की वास्तविक स्थिति को ध्यान में रखा गया है। अब यह समझ में आता है। धन्यवाद! – clamp

1

दिशा के आर्कट का उपयोग करके दिशा के कोण की गणना करें। चेक किए गए बिंदु से मूल सार। इसके कोण की गणना करें (फिर एक सामान्यीकृत वेक्टर के आर्कट के माध्यम से), और जांचें कि यह कोण सीमाओं के भीतर है या नहीं।

1

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

1

वेक्टर को बिंदु के बिंदु से निर्दिष्ट बिंदु तक एक कोण ए को सामान्य के साथ केंद्र के माध्यम से चलाता है। यदि कोण ए शंकु के आधे कोण से कम है तो यह बाहर के अंदर और बाहर स्थित है।

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