วิธีการปฏิเสธข้อมูลเชิงพื้นที่โดยใช้ห้องสมุดฟรี


13

ฉันจะใช้ไลบรารีฟรีเพื่อแปลงข้อมูลเชิงพื้นที่ได้อย่างไร

ตัวอย่างเช่นฉันต้องการเปลี่ยนการฉายภาพของ Shapefile ภายในรหัสของแอปพลิเคชันเว็บ C # ของฉัน ฉันจะทำอย่างไร


แปลงเป็น CW เพราะนี่เป็นคำถาม "รายการ X" จริงๆ
whuber

2
ช้าไปหน่อยขณะที่ม้า CW ออกจากประตูไปแล้ว แต่ถ้าผู้ตอบให้ความสำคัญกับ "ฉันจะทำยังไงดีล่ะ?" ส่วนหนึ่งของ Q มันจะไม่ใช่แค่ "รายชื่อ X"
แมตต์วิลคี

ลองทำคำถามนี้ดีกับคำตอบที่ดี
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 และ shapelib แม้ว่าทั้งสองจะเป็นโครงการ C แต่ได้ทำการผูก C # ไว้แล้ว (หรือคุณสามารถเรียกใช้ p / ร้องขอได้)

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.