मेरा यहां से नक्शा है । मैं मानचित्र पर पिक्सल में मनमाने ढंग से लोन / लाॅट पेयर को परिवर्तित करने में सक्षम होना चाहता हूं (रिवर्स रूपांतरण करने की क्षमता भी)। नक्शे .tfw फ़ाइल और प्रक्षेपण जानकारी के साथ आते हैं, यहाँ यह है:
0.02222222222222
0.00000000000000
0.00000000000000
-0.02222222222222
-180.00000000000000
90.00000000000000
और प्रक्षेपण जानकारी:
Projection: Plate Carree aka Geographic or "LatLong"
Earth ellipsoid: Sphere, radius 6370997 m
Datum: WGS84
Extent: 180 West to 180 East, 90 North to 90 South
Size: 16,200 height samples wide x 8,100 high
Resolution: 2.47 km/pixel
मैं कार्टोग्राफी से संबंधित सामानों के लिए पूरी तरह से नया हूं, और जहां तक मुझे लगा है कि मुझे सबसे पहले डब्ल्यूजीएस84 (लोन / लाॅट पेयर) से जियोग्राफिक प्रोजेक्शन (वे एक ही नहीं हैं?) में परिवर्तन करना चाहिए। यह मुझे लगता है कि वे समान हैं, वास्तव में, लेकिन ऊपर प्रक्षेपण जानकारी में त्रिज्या 6370997 है और spatialreference.com पृष्ठ से अलग है जो मुझे प्लेट कैरी प्रक्षेपण के लिए मिला था। वैसे भी, मैंने पाया DotSpatial.Projections पुस्तकालय मेरे लिए यह कर सकता है, निम्न कोड के साथ:
var kievCoordinates = new[] { 50.4546600, 30.5238000 };
var z = new[] { 1.0 };
var wgs84 = KnownCoordinateSystems.Geographic.World.WGS1984;
var dest = new ProjectionInfo();
dest.ParseEsriString(
"PROJCS[\"WGS 84 / Plate Carree (deprecated)\",GEOGCS[\"GCS_WGS_1984\",DATUM[\"D_WGS_1984\",SPHEROID[\"WGS_1984\",6378137,298.257223563]],PRIMEM[\"Greenwich\",0],UNIT[\"Degree\",0.017453292519943295]],PROJECTION[\"Equidistant_Cylindrical\"],PARAMETER[\"central_meridian\",0],PARAMETER[\"false_easting\",0],PARAMETER[\"false_northing\",0],UNIT[\"Meter\",1]]");
Reproject.ReprojectPoints(kievCoordinates, z, wgs84, dest, 0, 1);
और फिर मुझे विश्व फ़ाइल का उपयोग करके मानचित्र पर पिक्सल के परिणामस्वरूप निर्देशांक का अनुवाद करना होगा। मैं निम्नलिखित सूत्र से अवगत हूं:
लेकिन ऐसा लगता है कि विश्व फ़ाइल में डिग्री नहीं मीटर हैं और मुझे नहीं पता कि उनके साथ क्या करना है। आम तौर पर, क्या मैं सही चीजें कर रहा हूं? या अधिक आसान तरीका है, मेरा डेटा दिया गया है?