Создайте новую карту из файла формы и затем сохраните данные, используя точки или ArcGIS - PullRequest
0 голосов
/ 14 декабря 2018

Я создаю собственную карту из шейп-файла с помощью ArcGis .После этого, как я могу построить уже сохраненный latlng на пользовательской карте?И если обновленная пользовательская карта в шейп-файле будет обновлена, как я могу сохранить уже сохраненный файл на пользовательской карте?

1 Ответ

0 голосов
/ 14 декабря 2018

Во-первых, вот как вы можете использовать DotSpatial для добавления точки и атрибутов в существующий шейп-файл.

    [TestMethod]
    public void AddPoint()
    {
        Shapefile shp = Shapefile.OpenFile(@"D:\Data\Temp\CatPoints.shp");
        IFeature cat = shp.AddFeature(new Point((new Coordinate(-119, 39))));
        cat.DataRow["Name"] = "Leopard";
        cat.DataRow["Longitude"] = -119.0000;
        cat.DataRow["Latitude"] = 39.0000;
        shp.Save();
    }

Важно отметить, что документы карты (файлы .mxd) не хранятданные, поэтому обновление шейп-файла (.shp) автоматически обновит содержимое вашей карты.Если ваш вопрос касается того, как создать шейп-файл, используя значения долготы и широты, вот пошаговое руководство по созданию шейп-файла, а затем сохраните его как карту.Если у вас уже есть шейп-файл, вы можете перейти к шагу 5.

Предположим, у вас есть начальная широта и долгота в существующем источнике данных, таком как файл excel.

enter image description here

1) Добавьте данные, используя кнопку добавления данных, перейдя к файлу Excel и выбрав лист Excel.

enter image description here

2) Щелкните правой кнопкой мыши слой «Лист1 $» в оглавлении и выберите «Отобразить данные XY» ...

enter image description here

3) Долгота и широта должны заполняться автоматически как поля X и Y.Вы должны использовать кнопку редактирования и выбрать Географические системы координат -> Мир -> WGS1984 в качестве Системы координат для широты и долготы.(Убедитесь, что ваша долгота отрицательная, если вы находитесь в западном полушарии, например в Соединенных Штатах.).Нажмите Ok.

4) Щелкните правой кнопкой мыши по вновь созданному слою Sheet1 $ Events и выберите Data-> Export Data ..., чтобы экспортировать этот слой как шейп-файл.Оставьте выбранный параметр «Все функции», а затем укажите имя, которое заканчивается на «.shp».Это важно.Если вы сохраните файл в персональной базе геоданных или в файловой базе геоданных, DotSpatial не сможет обновить ваш контент позже.Нажмите ОККогда он спросит, хотите ли вы добавить вновь созданный шейп-файл на карту, выберите «Да».

Create Shapefile

5) Затем вы можете добавить базовую карту кфон, используя функцию Файл-> Добавить данные-> Добавить базовую карту.Нажмите на тип базовой карты, которую вы хотите добавить.

Add BaseData

6) Чтобы добавить любые другие существующие шейп-файлы (или, если у вас уже был существующийшейп-файл, который вы хотите использовать для создания карты), используйте кнопку добавления данных, которая является кнопкой в ​​виде кружка плюс над изометрическим видом желтого квадрата.

Add Shapefile

7) Сохраните свою карту.Это важная часть.Любые ваши слои могут быть сохранены в ArcGIS как документ «Карта».Это не хранит сами данные, а просто указывает на шейп-файл.Поэтому, когда вы вносите изменения в шейп-файл в DotSpatial, эти изменения появятся на вашей карте.

enter image description here

enter image description here

8) Я не уверен, будет ли ArcGIS автоматически получать изменения в SHP, если она уже открыта в пользовательском интерфейсе.Возможно, вам придется закрыть карту и снова открыть ее в ArcGIS, чтобы увидеть ваши новые точки.

...