2012-08-02 9 views
5

दो प्रकार के सतह जाल मॉडल हैं, एक गोलाकार या घन जैसे बंद जाल और दूसरा एक खुला जाल मॉडल है जिसका मतलब है कि मॉडल की सतह बंद लूप में नहीं है। यह कहीं खोखले पाइप की तरह खुला है। एसपी जो मैं चाहता हूं वह है कि मैं खुले जाल मॉडल के सीमा शिखर का पता लगाना चाहता हूं। बंद लूप जाल में कोई सीमा नहीं है लेकिन खुले जाल में हमें कुछ चिकनाई, उपविभाग, आदि संचालन के लिए सीमा शिखर का पता लगाना होगा। कृपया, मुझे बताएं कि मैं सीमा शिखर का चयन/पहचान कैसे कर सकता हूं? ऐसा करने का सबसे अच्छा तरीका क्या है? त्रिकोण के किनारों की तुलना करके ? मुझे कुछ विचार दो?खुले जाल 3 डी मॉडल के सीमा शिखर का पता लगाने के लिए कैसे?

धन्यवाद।

उत्तर

10

मान लें कि आप एक कई गुना जाल है, तो जाल की सीमा उन किनारों जो केवल एक बहुभुज से संबंधित हैं। किनारों पर नहीं हैं जो किनारे दो बहुभुज से संबंधित होंगे। सीमा शिखर सीमाएं हैं जो सीमा किनारों से संबंधित हैं।

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

दूसरा दृष्टिकोण यह है कि आपके जाल डेटा संरचना प्रत्येक किनारे की जांच करें क्योंकि वे जाल में जोड़े जाते हैं, या बहुभुज विशेष किनारों से जुड़े होते हैं। इस तरह, जाल डेटा संरचना आपके लिए अप-टू-डेट सीमा किनारों की एक सूची रख सकती है, ताकि जब आपको किनारों की आवश्यकता हो तो आपको उन्हें हर बार नहीं ढूंढना पड़ेगा। यह सीमा किनारों को निर्धारित करने के ऊपरी हिस्से को बहुत कम कर देगा, हालांकि किनारों और बहुभुजों को डालने से थोड़ा अधिक महंगा होगा। आपके जाल डेटा संरचना में थोड़ा और मेमोरी भी होगी।

+0

धन्यवाद। मुझे आपकी बात समझ में आ गई। मैं क्या सोच रहा था कि किनारों की गिनती करने के लिए एक और तरीका हो सकता है। – furqan

+1

मैं देखता हूँ! मैंने दूसरी विधि जोड़ दी है जो सीमा किनारों को कैशिंग करने के बारे में बात करती है। शायद यह मदद करता है? – River

+0

हाँ यह वास्तव में अच्छा है .. मैंने इस पर नहीं सोचा था। मैं त्रिकोण जोड़ रहा हूं और पूरे जाल को अद्यतन कर रहा हूं, फिर मैं किनारों की जानकारी को अपडेट क्यों नहीं करता .. मैंने इसकी गणना करने की कोशिश की, यह वास्तव में एक स्मृति महंगी विधि है। लेकिन मैं निश्चित रूप से कोशिश करूँगा। – furqan

5

मान लीजिए कि आपका जाल एक 2 डी (या 2.5 डी) नियमित, अच्छी तरह से निर्मित त्रिभुज है। आप यहां सूचीबद्ध कुछ गुणों का उपयोग कर सकते हैं: http://graphics.stanford.edu/courses/cs468-10-fall/LectureSlides/02_Basics.pdf

पृष्ठ 9 घटनाओं के किनारों की संख्या के रूप में एक चरम की डिग्री (या वैलेंस) को परिभाषित करता है। जैसा कि दिखाया गया है, सभी सीमा 4 घटनाओं के किनारों को जोड़ती है। "आंतरिक" शिखर में 5 घटना किनारों हैं।

पृष्ठ 17 एक सीमा किनारे को परिभाषित करता है जो कि एक ही चेहरे के निकट है।

आप पृष्ठ 22 सहायक पर चर्चा मिल सकती है (बंद 2-कई गुना त्रिकोण meshes)

+0

यह प्रस्तुति मेरे लिए वास्तव में सहायक है। धन्यवाद। मैंने इस एल्गोरिदम को कार्यान्वित किया है और यह ठीक काम करता है। धन्यवाद। – furqan

+0

सुनने के लिए बहुत बढ़िया! क्या आप इसे अपने उत्तर के रूप में स्वीकार कर सकते हैं? – Throwback1986

+0

क्यों नहीं, लेकिन मुझे यह नहीं पता था कि कहां स्वीकार करना है .. यह मजाकिया लेकिन सचमुच मैंने उस बटन को खोजने की कोशिश की ... – furqan

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