कैसे मुक्त पुस्तकालयों का उपयोग कर स्थानिक डेटा को पुन: उत्पन्न करने के लिए?


13

मैं स्थानिक डेटा को बदलने के लिए मुफ्त पुस्तकालयों का उपयोग कैसे कर सकता हूं?

उदाहरण के लिए, मैं अपने सी # वेब एप्लिकेशन के कोड के भीतर शेपफाइल के प्रक्षेपण को बदलना चाहता हूं। मैं उसको कैसे करू?


सीडब्ल्यू में परिवर्तित हो गया क्योंकि यह वास्तव में "एक्स की सूची" प्रश्न है।
whuber

2
थोड़ा देर से अब चूंकि सीडब्ल्यू घोड़ा पहले ही गेट से बाहर है, लेकिन अगर उत्तरदाताओं ने "मैं ऐसा कैसे करूं?" पर अधिक ध्यान दिया। क्यू का हिस्सा यह सिर्फ "एक्स की सूची" नहीं होगा।
मैट विल्की

आइए, इसे महान उत्तरों के साथ एक महान प्रश्न बनाने की कोशिश करें।
UnderDark

जवाबों:


10

आप DotSpatial.Projections लाइब्रेरी आज़मा सकते हैं ।

वेबसाइट सूचियों एक उदाहरण "भौगोलिक से परिवर्तित एक अनुमानित निर्देशांक प्रणाली के लिए निर्देशांक प्रणाली" :

using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;
using DotSpatial.Projections;

namespace WindowsFormsApplication1
{
  public partial class Form1 : Form
  {
    public Form1()
    {
        InitializeComponent();
    }

    private void button1_Click(object sender, EventArgs e)
    {
        //Sets up a array to contain the x and y coordinates
        double[] xy = new double[2];
        xy[0] = 0;
        xy[1] = 0;
        //An array for the z coordinate
        double[] z = new double[1];
        z[0] = 1;
        //Defines the starting coordiante system
        ProjectionInfo pStart = KnownCoordinateSystems.Geographic.World.WGS1984;
        //Defines the ending coordiante system
        ProjectionInfo pEnd = KnownCoordinateSystems.Projected.NorthAmerica.USAContiguousLambertConformalConic;
        //Calls the reproject function that will transform the input location to the output locaiton
        Reproject.ReprojectPoints(xy, z, pStart, pEnd, 0, 1);
        Interaction.MsgBox("The points have been reporjected.");
    }
  }
}



2

मैं थोड़ा आश्चर्यचकित था कि किसी ने भी proj.4 का उल्लेख नहीं किया है। हालांकि दोनों सी प्रोजेक्ट हैं, सी # बाइंडिंग बनाई गई है (या आप बस उन्हें पी / इनवॉइस कर सकते हैं)।

हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.