मेरे पास एक रेल ऐप है जो आरजीओ 0.3.1 9 का उपयोग कर रहा है जो आरजीओ-एक्ट्रीकॉर्ड 0.4.5 मणि के साथ एक पोस्टजीआईएस 1.5 डेटाबेस से कनेक्ट प्रोजे 4 समर्थन के साथ है।आरजीओ प्रोजेक्टेड बफर पॉलीगॉन बहुत छोटा
मेरे ऐप में एक मॉडल नामक एक मॉडल है जिसमें भौगोलिक बिंदु, त्रिज्या और बहुभुज आकार शामिल है। जब कोई नया क्षेत्र सहेजने वाला होता है तो यह त्रिज्या और भौगोलिक बिंदु का उपयोग करके बहुभुज बनाने के लिए क्षेत्र के भू-भौतिकी के बफर फ़ंक्शन का उपयोग करता है।
यहाँ geofactory उस क्षेत्र मॉडल के लिए इस्तेमाल किया जा रहा है
GEOFACTORY = RGeo::Geographic.projected_factory(:buffer_resolution => 8, :projection_proj4 => '+proj=merc +a=6378137 +b=6378137 +lat_ts=0.0 +lon_0=0.0 +x_0=0.0 +y_0=0 +k=1.0 +units=m [email protected] +wktext +no_defs', :projection_srid => 3857)
projection_srid मैं उपयोग कर रहा हूँ समस्या यह है कि एप्पल और गूगल मैप्स के मर्केटर प्रक्षेपण 3857. है कि बफर है कि बनाया जा रहा एक ही आकार नहीं है जैसा कि मैं या तो सेब मानचित्र या Google मानचित्र में चित्रित कर रहा हूं। उदाहरण के लिए, यदि मैं निर्मित मैककिट फ़ंक्शन एमकेसीर्कल
[MKCircle circleWithCenterCoordinate:self.coordinate radius:50];
सर्कल इस तरह आकर्षित और ओवरले करेगा।
लेकिन अगर मैं निर्देशांक बफर समारोह है कि डेटाबेस में बहुभुज आकृति को बनाने और गूगल मैप्स मैं इस मिल पर उन्हें साजिश प्रपत्र बनाए गए ले।
आप देख सकते हैं, बहुभुज है कि एक ही प्रक्षेपण प्रणाली का उपयोग कर बनाया गया था छोटे की तुलना में यह होना चाहिए। परिभाषित त्रिज्या के आकार के आधार पर यह समस्या तेजी से नियंत्रण से बाहर हो जाती है। मैंने आरजीईओ में परिभाषित सरल_मेरेटर फैक्ट्री का उपयोग करने की भी कोशिश की है, जो एक ही परिणाम उत्पन्न करता है।
उम्मीद है कि किसी के पास कुछ अंतर्दृष्टि है क्यों, जब एक रेखांश, अक्षांश अनुमानित बिंदु buffered यह गलत तरीके से आकार का बहुभुज बनाता है।
संपादन के लिए धन्यवाद, मोबाइलऑवरलोर्ड। मैं भूल गया कि रुबी में एक सुरक्षित कार्य नहीं था। कोड को पोस्ट किए बिना मुझे यह पहले परीक्षण के बिना मिलता है ... :-) –