ग्राफिक्स प्रोग्रामर उन वर्तनियों को कैसे प्रस्तुत करते हैं जो छवि को नहीं बदलते हैं?


10

तो, शीर्षक थोड़ा अजीब है। मैं कुछ पृष्ठभूमि दूंगा, और फिर अपना प्रश्न पूछूंगा।

पृष्ठभूमि : मैं एक वेब जीआईएस एप्लिकेशन डेवलपर के रूप में काम करता हूं , लेकिन अपने खाली समय में मैं मानचित्र रेंडरिंग और डेटा इंटरचेंज प्रारूपों में सुधार के साथ खेल रहा हूं। मैं केवल 2 डी स्पेस में काम करता हूं।

एक दिलचस्प मुद्दा यह है कि जब आप एक बहुभुज को एक छोटे पैमाने पर (ज़ूम आउट तरीके से) प्रस्तुत कर रहे होते हैं, तो कई कोने अनुप्रेषित होते हैं। एक चरम मामला यह होगा कि आपके पास 500,000 कोने के साथ एक बहुभुज है जो केवल एक पिक्सेल लेता है। यदि आप इस डेटा को ब्राउज़र में भेज रहे हैं, तो यह उन वर्टीकल के ~ 499,999 को छोड़ देने में मदद करेगा। एक तरीका है कि हम एक सर्वर पर एक छवि प्रदान करके और इसे पीएनजी: वॉइला के रूप में भेजते हैं, यह एक बिंदु है। कभी-कभी, हालांकि, हम उस ब्राउज़र को भेजे गए डेटा चाहते हैं जहां इसे एसवीजी (या कैनवास, या वेबलॉग) के साथ प्रदान किया जा सकता है ताकि यह इंटरैक्टिव हो सके।

समस्या : यह पता चला है कि, आधुनिक भौगोलिक डेटा सेटों का उपयोग करते हुए, एसवीजी के रेंडरिंग क्षमताओं को ओवरलोड करना बहुत आसान है। उन सीमाओं के साथ सामना करने के प्रयास में, मैं यह जानने की कोशिश कर रहा हूं कि किसी दिए गए पैमाने और नक्शे की सीमा के लिए डेटा सेट को नेत्रहीन रूप से कैसे कम किया जाए (और, यदि आवश्यक हो, तो ज्ञात मानचित्र पिक्सेल चौड़ाई और ऊंचाई के लिए)।

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


1
"Topologically सुसंगत डगलस-पुकर" के लिए Google और आपको कुछ लेखों के सार के लिए कुछ लिंक मिलेंगे। दुर्भाग्य से, आपको मेरे द्वारा देखे गए पूर्ण लेखों के लिए भुगतान करना होगा।
डॉक ब्राउन

@DocBrown धन्यवाद! क्वेस्टिया को एक नि: शुल्क परीक्षण भी लगता है।
canisrufus

जवाबों:


3

तुम जो खोज रहे हो, वह है 2d level of detail algorithms

यदि आप उन हाइलाइट किए गए शब्दों को खोजते हैं तो Google पर इसके बारे में बहुत कुछ प्रलेखित है।

स्टैकओवरफ़्लो पर इस प्रश्न के बारे में जानकारी है जिसे आप विस्तार प्रतिपादन के 2D स्तर पर देख रहे हैं।


बहुत प्रासंगिक शब्दावली के लिए +1। ऐसा लगता है कि मैं वास्तव में एक स्तर के विस्तार के दृष्टिकोण का उपयोग कर रहा हूं, लेकिन एक बहुभुज सरलीकरण एल्गोरिथ्म की आवश्यकता है जो मेरी आवश्यकताओं के अनुरूप हो। 3 डी वालों के लिए एक साफ अवलोकन मिला। मुझे विश्वास है कि मैंने वास्तव में एक उपयुक्त सरलीकरण रणनीति बनाई है, हालांकि मुझे इसे कोड करने का समय नहीं है।
canisrufus
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.