Tento článek poskytuje informace o tom, jak převést KML na SHP pomocí C# sdílením kroků k přizpůsobení prostředí a následným definováním požadovaného postupu pro napsání této aplikace. Získáte sadu příkazů krok za krokem, které zvýrazní všechny požadované třídy, jmenné prostory a metody potřebné pro převod. Nakonec je sdílen spustitelný ukázkový kód pro transformaci KML na SHP pomocí C#, který lze spustit v MS Windows s podporou .NET nebo Linux a macOS s podporou .NET Core.
Kroky k převodu KML na SHP pomocí C#
- Vytvořte vývojové prostředí pro instalaci Aspose.GIS for .NET ze správce balíčků NuGet
- Chcete-li proces přizpůsobit, deklarujte proměnnou typu ConversionOptions
- Zkontrolujte, zda typ cílové vrstvy podporuje konkrétní prostorový referenční systém
- Nastavte požadovanou vlastnost prostorového referenčního systému v objektu třídy ConversionOptions
- Pomocí VectorLayer. Metoda Convert převede zdrojový KML na SHP s vybranými možnostmi
Tyto jasné kroky pomáhají při zápisu KML do Shapefile konvertoru pomocí C# tím, že představí prostředky, které je třeba nainstalovat pro spuštění ukázkového kódu. Tento proces lze dokončit bez jakéhokoli přizpůsobení, avšak pro lepší pochopení je zavedena třída ConversionOptions, kterou lze použít k nastavení různých parametrů. V posledním kroku je představena vlastní metoda, která provádí převod spolu s volitelným parametrem s požadovanými vlastnostmi.
Kód pro změnu KML na SHP pomocí C#
Poslední řádek kódu můžete použít pouze s prvními čtyřmi parametry, ale pokud chcete cílové vrstvě přiřadit konkrétní prostorový referenční systém, pouze pak můžete použít objekt třídy ConversionOptions. Třída ConversionOptions obsahuje také další vlastnosti, jako je AttributeConverter, DestinationDriverOptions, DestinationSpatialReferenceSystem a SourceDriverOptions, které lze v případě potřeby nakonfigurovat. Tento ukázkový kód ukazuje úplný převodník KML na Shapefile pomocí C#, který lze použít tak, jak je.
Naučili jsme se zde psát KML na SHP převodník pomocí C#, ale pokud chcete převést Shapefile na Geojson, můžete se podívat na článek na jak převést SHP na Geojson v C#.