Создайте новую карту из файла формы и затем сохраните данные, используя точки или ArcGIS
Я создаю пользовательскую карту из шейп- файла с помощью ArcGis. После этого, как я могу построить уже сохраненный latlng на пользовательской карте? И если обновленная пользовательская карта в шейп-файле будет обновлена, как я могу сохранить уже сохраненный файл на пользовательской карте?
1 ответ
Во-первых, вот как вы можете использовать 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();
}
Важно отметить, что документы Map (файлы.mxd) не хранят данные, поэтому обновление шейп-файла (.shp) автоматически обновит содержимое вашей карты. Если ваш вопрос касается того, как создать шейп-файл, используя значения долготы и широты, вот пошаговое руководство по созданию шейп-файла, а затем сохраните его как карту. Если у вас уже есть существующий шейп-файл, вы можете перейти к шагу 5.
Предположим, у вас есть начальная широта и долгота в существующем источнике данных, таком как файл Excel.
1) Добавьте данные, используя кнопку добавления данных, перейдя к файлу Excel и выбрав лист Excel.
2) Щелкните правой кнопкой мыши слой "Sheet1$" в оглавлении и выберите "Показать данные XY"...
3) Долгота и широта должны заполняться автоматически как поля X и Y. Вы должны использовать кнопку редактирования и выбрать Географические системы координат -> Мир -> WGS1984 в качестве Системы координат для широты и долготы. (Убедитесь, что ваша долгота отрицательная, если вы находитесь в западном полушарии, например в Соединенных Штатах.). Нажмите ОК.
4) Щелкните правой кнопкой мыши по вновь созданному слою Sheet1$ Events и выберите "Данные-> Экспорт данных...", чтобы экспортировать этот слой в виде шейп-файла. Оставьте выбранный параметр "Все функции", а затем укажите имя, которое заканчивается на ".shp". Это важно. Если вы сохраните файл в персональной базе геоданных или в файловой базе геоданных, DotSpatial не сможет обновить ваш контент позже. Нажмите ОК Когда появится вопрос, хотите ли вы добавить вновь созданный шейп-файл на карту, выберите "Да".
5) Затем вы можете добавить базовую карту к фону, используя функцию Файл-> Добавить данные-> Добавить базовую карту. Нажмите на тип базовой карты, которую вы хотите добавить.
6) Чтобы добавить любые другие существующие шейп-файлы (или, если у вас уже был существующий шейп-файл, который вы хотите использовать для создания карты), используйте кнопку "Добавить данные", которая является кнопкой "плюс" в кружке над изометрическим видом желтого квадрата.
7) Сохраните свою карту. Это важная часть. Любые ваши слои могут быть сохранены в ArcGIS как документ "Карта". Это не хранит сами данные, а просто указывает на шейп-файл. Поэтому, когда вы вносите изменения в шейп-файл в DotSpatial, эти изменения появятся на вашей карте.
8) Я не уверен, что ArcGIS автоматически получит изменения в SHP, если он уже открыт в пользовательском интерфейсе. Возможно, вам придется закрыть карту и снова открыть ее в ArcGIS, чтобы увидеть ваши новые точки.