2012-10-04 38 views
7

के रूप में गोलाकार पर 2 डी ग्रिड पॉइंट्स (एक्स, वाई) मानचित्र कैसे करें मेरे पास 2 डी ग्रिड पॉइंट्स (एक्स, वाई) का एक सेट है जिसे मैं 3 डी के रूप में किसी क्षेत्र पर मानचित्र/प्रोजेक्ट करना चाहता हूं अंक (एक्स, वाई, जेड)।2 डी अंक (एक्स, वाई, जेड)

मुझे एहसास है कि ध्रुवों की ओर कुछ लापरवाही होगी क्योंकि पेट (वाई) बढ़ता है लेकिन मेरा ग्रिड पैच केवल भूमध्य रेखा के पास के क्षेत्र के एक हिस्से को कवर करेगा ताकि गंभीर वारिंग से बचा जा सके।

मुझे इसके लिए सही समीकरण खोजने में परेशानी हो रही है।

+0

मुझे यकीन नहीं है कि आप यहां क्या पूछ रहे हैं ... 2 डी 'x' और' y' क्या प्रतिनिधित्व करते हैं? क्या वे अक्षांश/देशांतर हैं, या क्षेत्र के कुछ फ्लैट आयताकार प्रक्षेपण पर समन्वयित हैं? आखिरी मामले में, आप किस प्रक्षेपण का उपयोग कर रहे हैं? –

उत्तर

16

मर्केटर प्रक्षेपण पर विकिपीडिया लेख से दूसरे शब्दों में बयान:

Given a "mapping sphere" of radius R, 
the Mercator projection (x,y) of a given latitude and longitude is: 
    x = R * longitude 
    y = R * log(tan((latitude + pi/2)/2)) 

and the inverse mapping of a given map location (x,y) is: 
    longitude = x/R 
    latitude = 2 * atan(exp(y/R)) - pi/2 

उलटा मानचित्रण का परिणाम से 3 डी निर्देशांक पाने के लिए:

Given longitude and latitude on a sphere of radius S, 
the 3D coordinates P = (P.x, P.y, P.z) are: 
    P.x = S * cos(latitude) * cos(longitude) 
    P.y = S * cos(latitude) * sin(longitude) 
    P.z = S * sin(latitude) 

(ध्यान दें कि "नक्शा त्रिज्या "और" 3 डी त्रिज्या "में निश्चित रूप से अलग-अलग मान होंगे, इसलिए मैंने विभिन्न चर नामों का उपयोग किया है।)

+0

मेरा अक्षांश 2 9 .665163 है। जब मैं y मान की गणना करने का प्रयास करता हूं, तो मुझे एक त्रुटि मिल रही है (पायथन में) क्योंकि 'tan ((अक्षांश + पीआई/2)/2)' -0.0970531183 है, और उस मान पर लॉग निष्पादित करने से "गणित डोमेन त्रुटि" "चूंकि मान नकारात्मक है। मैं क्या गलत कर रहा हूं? – Pikamander2

+0

'pi/2' जोड़ने से पहले, आपको अक्षांश से डिग्री से रेडियंस में कनवर्ट करने की आवश्यकता है। यह '+/- 90 डिग्री' की सीमा को '+/- pi/2 radians' की श्रेणी में परिवर्तित कर देगा, जो तब तक फ़ंक्शन रेंज को ओवरफ़्लो नहीं करेगा जब तक आप ध्रुवों पर न हों (जिस स्थिति में मर्केटर प्रक्षेपण वैसे भी एकवचन है। ..) – comingstorm

1

मुझे उम्मीद है कि आप किसी भी विश्व अनुमानों के विपरीत का उपयोग कर सकते हैं।

मर्केटर अन्य अनुमानों की तुलना में भूमध्य रेखा के चारों ओर बहुत अच्छा है।

फॉर्मूला विकी पेज पर हैं।
http://en.wikipedia.org/wiki/Mercator_projection

+0

धन्यवाद। मुझे एहसास है कि मैं यही चाहता हूं लेकिन मुझे क्षेत्र में 2 डी अंक (एक्स, वाई) से 3 डी अंक (एक्स, वाई, जेड) लेने के लिए समीकरणों को प्राप्त करने में समस्या हो रही है। – milkplus

+0

आह, वास्तविक सूत्र। यह एक गैर-तुच्छ गणितीय ऑपरेशन है, और आप http://math.stackexchange.com/ पर बेहतर भाग्य प्राप्त कर सकते हैं। एक बार फॉर्मूला प्राप्त करने के बाद, आप इसे प्रोग्रामिंग में मदद के लिए यहां वापस आ सकते हैं। इसके अलावा, http://wiki.openstreetmap.org/wiki/Mercator – kreativitea

1

मुझे लगता है कि क्षेत्र में आपका (एक्स, वाई) अक्षांश, देशांतर है।

यदि ऐसा है, तो http://tutorial.math.lamar.edu/Classes/CalcII/SphericalCoords.aspx देखें।

enter image description here

वहाँ:

फ़ाई = 90 डिग्री - अक्षांश

थीटा = देशांतर

रो = अपने गोलक की त्रिज्या।

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