¿Convertir entre formato KML y shapefile (SHP)?

95

Mis usuarios me envían datos de puntos que se digitalizaron con Google Earth.

¿Cómo puedo convertir sus archivos KML en un shapefile?

    
pregunta TroutSlayer 23.07.2010 - 00:34

24 respuestas

127

Utilizando el código abierto ogr2ogr de GDAL / OGR :

ogr2ogr -f 'ESRI Shapefile' output.shp input.kml
    
respondido por el fmark 23.07.2010 - 04:54
30

ArcGIS 10 tiene una herramienta de GP llamada KML To Layer que convierte KML a una clase de entidad. Busca KML usando la nueva búsqueda. He usado esto para tomar las descargas de kml de derrame de petróleo de Google y convertirlas en SHP.

KML To Layer solo puede crear una clase de entidad de geodatabase por lo que debe ir seguido de un paso de Feature Class To Feature Class para convertirlo en un shapefile.

    
respondido por el jiriteach 31.07.2010 - 03:24
18

Use ogr2ogr, pero si no está interesado en una línea de comandos, intente ogr2gui : es realmente sencillo extremo delantero para ogr2ogr.

    
respondido por el om_henners 23.07.2010 - 07:45
10

Para usar los datos espaciales publicados como un archivo KML o KMZ en ArcGIS, primero debe convertir el KML a una clase de entidad (shapefile). La Universidad de Connecticut ha publicado un script para crear shapefiles desde KML llamado KML_to_Shp.tbx. Funciona bastante bien y puedes usarlo desde ArcToolbox. Debido a que KML siempre (debería) estar en coordenadas geográficas (WGS84), eventualmente deseará transformarlos a la zona UTM 15N NAD83 ...

Al igual que con todas las herramientas nuevas, revise la documentación antes de usar. Esto se puede encontrar en el sitio web del Centro para la Educación e Investigación del Uso de la Tierra de UCONN Una vez que lo agrega a su caja de herramientas y comprende sus limitaciones, la herramienta es muy sencilla de usar.

enlace

    
respondido por el TroutSlayer 23.07.2010 - 00:43
10

Si está interesado en las herramientas de línea de comandos, puede utilizar GDAL / OGR de OSGEO.

enlace

    
respondido por el jvangeld 23.07.2010 - 00:49
10

Otro producto comercial que merece ser mencionado es Global Mapper . Esto cae en la categoría de vista, conversión, re-proyecto casi cualquier dato geográfico que pueda imaginar. Utilizo la versión gratuita en gran medida en una clase que imparto y casi todos se alejan comentando cómo se trata de la navaja suiza de las herramientas SIG (aunque la versión gratuita no hace traducciones, expone todos los menús y las opciones). Bien vale la pena el costo en mi experiencia.

    
respondido por el Dennis 24.07.2010 - 17:17
10

Unir más opciones además de las otras respuestas ...

La aplicación fdo2fdo de SL-King, que utiliza las bibliotecas FDO de código abierto, le permite realizar KML Traducciones a SHP y viceversa. Incluye tanto una GUI (que expresa traducciones de formato a formato como traducciones de mapeo de esquemas más personalizadas) así como una herramienta de línea de comandos.

Para aplicaciones apropiadas, FME de Safe Software le brinda un control increíble sobre cómo asigna la información de origen a destino. Si tiene ArcGIS, puede acceder a este a través de la Extensión de Interoperabilidad de Datos ( lista de formatos ) a un costo adicional.

Si solo son características de puntos sin atributos, consideraría analizar el XML en algo que pueda importar fácilmente como un CSV; solo estás buscando los datos entre las etiquetas de coordenadas.

    
respondido por el JasonBirch 23.07.2010 - 02:00
9

Otra opción es usar XToolsPro, una extensión de terceros que funciona en ArcGIS. Entre sus muchas herramientas de conversión prácticas se encuentra la función "Importar datos desde KML".

    
respondido por el Chris Donohue 30.07.2010 - 17:01
9

FME publicó una versión beta para una herramienta en línea que maneja muchos tipos diferentes de conversión, incluido esto. enlace Este convertidor realmente debería ayudarle.

    
respondido por el Ruz 27.08.2010 - 18:24
8

También hay algunos otros productos comerciales. Arc2Earth viene a la mente. Tiene una buena integración con ArcGIS Desktop. enlace

    
respondido por el Jason 23.07.2010 - 05:15
8

QGIS se ha vuelto mucho más robusto para la conversión entre kml y shp. Simplemente use Guardar como en el menú del botón derecho en la capa. O abra cada uno de esos tipos de archivos desde el menú Agregar nueva capa, asegúrese de cambiar el tipo de archivo en el cuadro de diálogo.

    
respondido por el Willy 23.12.2012 - 00:57
6

También puede consultar FME desde Safe Software enlace

Hay una prueba de 14 días disponible. FME le permite incluso asignar los atributos de su archivo KML al formato ESRI SHP durante el proceso de conversión / migración de datos, además de la capacidad de filtrar los archivos de puntos KML según ciertos atributos o extensiones espaciales.

También existe la opción de realizar conversiones por lotes cuando tienes un gran conjunto de archivos KML de tus usuarios.

~ SRG

    
respondido por el SRG 30.07.2010 - 08:15
6

use OGR para el control de la línea de comandos, Google Earth Pro le dará una forma gráfica de conversión, al igual que una variedad de otras aplicaciones

    
respondido por el ManoMarks 30.07.2010 - 18:37
5

ET GeoWizards también tiene una opción de importación desde Google Earth, que convertirá archivos KML o KMZ a clase de entidad. > enlace

Si está buscando una opción de código abierto, veo que MapWindow se acaba de actualizar, y hay un par de complementos para convertir desde y hacia KML y shapefile.

    
respondido por el Don Meltz 31.07.2010 - 01:53
5

El código abierto MapWindow GIS tiene una extensión gratuita ( KML2Shapefile ) para convertir archivos KML / KMZ en shapefiles.

    
respondido por el Tim Beermann 29.07.2011 - 02:37
4

Si tiene la extensión de interoperabilidad, simplemente cargue ese archivo KML directamente en ArcMap y expórtelo a shp.

Aunque la respuesta opuesta a tu Q, en caso de que alguien haya venido aquí para hacer lo contrario, encuentro este script perfecto para ir desde SHP - > KML enlace

    
respondido por el Simon 30.07.2010 - 12:19
4

Si desea convertir sus archivos en línea, intente formatos de MyGeodata GIS y convertidor del sistema de coordenadas . Se basa en ogr2ogr (biblioteca gdal / ogr), por lo que casi todos los formatos GIS y sistemas de coordenadas conocidos son compatibles ...

    
respondido por el Tonny 03.02.2012 - 16:13
3

El convertidor de KML a Shapefile en línea de Zonum Solutions también funciona bien:

enlace

    
respondido por el Rayner 05.10.2012 - 14:29
3

Algunas de las opciones que no vi en ninguna de las respuestas para agregar recursos adicionales para convertir KML a SHP serían las siguientes:

MyGeodata Converter

  

El convertidor en línea del formato Keyhole Markup Language al formato ESRI Shapefile (KML to SHP) es una herramienta rápida y fácil de usar tanto para conversiones individuales como por lotes. Converter también es compatible con más de 90 formatos vectoriales y rásteres GIS / CAD y más de 3 000 sistemas de referencia de coordenadas.

Free Geography Tools cubre y proporciona un tutorial de Zonums Software herramienta

    
respondido por el whyzar 13.06.2017 - 20:29
2

Una ayuda buena y fácil que podría producir resultados más limpios es convertir KML a GPX primero (hay varios programas de código abierto que pueden hacerlo) y abrir los datos respectivos (GPX tiene 5 clases de información diferentes: Puntos de ruta , Trackpoints, Routepoints, Tracks and Routes) utilizando el ogr2ogr de GDAL / OGR en QGIS y guárdelo directamente en formato de archivo .SHP.

También es bastante fácil usar el proceso por lotes para una gran cantidad de datos (por ejemplo, mediante la combinación de capas vectoriales de SAGA) para producir un solo archivo de forma y también puede borrar los atributos vacíos antes de la final "Guardar como SHP ".

Preste especial atención al sistema de codificación si aparecen caracteres extraños en su resultado final ... puede elegir el adecuado en el momento en el que está agregando nuevos datos vectoriales a su mapa.

    
respondido por el Ricardo M. Nogueira Mendes 12.12.2017 - 20:43
0

Llego tarde a la fiesta, pero aquí hay algunas formas adicionales:

  1. Google Fusion Tables , puede convertir la información de puntos KML a WGS84 X y Y en un formato .csv, que luego puede usar en su software de análisis GIS preferido.

  2. Usando el paquete rgdal en R .:

    install.packages("rgdal")
    library(rgdal) #load package
    kmlfile=readOGR("yourkmlfilehere.kml") #load KML
    writeOGR(kmlfile,"yourshapepath",layer="shapename", driver="ESRI Shapefile") #save shape
    
respondido por el Richard N. Belcher 12.03.2018 - 07:07
0

Otro consejo: si desea convertir varios archivos KML en una carpeta / directorio a la vez en shapefile usando la línea de comandos, abra cmd en la carpeta y escriba esto:

para / R% f en (* .kml) do ogr2ogr -f "ESRI Shapefile" "% ~ dpnf.shp" "% f"

Nota: utilizará el nombre de KML como el nombre del archivo de forma, así que asegúrese de que sus archivos KML tengan los formatos de nombre adecuados para los archivos de forma. El archivo de forma se creará en el mismo directorio que el kml correspondiente. Los KML en los subdirectorios también se convertirán en shapefiles.

    
respondido por el Ifeoma Collins 20.04.2018 - 18:16
-1

Para convertir KML a formato de archivo Shp, puede usar la utilidad ogr2ogr. Primero necesita instalarlo en el sistema, si ya lo instaló use Escriba ogr2ogr en el terminal.

Ahora, para la conversión, el comando dado debe ejecutarse, es decir,

--- ogr2ogr -f 'ESRI Shapefile' Output_sahpefile.shp Input_KML.kml

Así es como ogr2ogr puede realizar las conversiones y, si no obtiene resultados, puede convertir Kml a shp mediante el método de codificación.

esto también se puede hacer usando PHP. Puede crear una función que definió este comando como una cadena y puede proporcionar esta cadena en el método shell_exec () para ejecutar. Shell_exec () ejecuta realmente el comando y devuelve el resultado como una cadena.

public function KML_to_shp($KMLfilepath,$output){
 $query="ogr2ogr -f 'ESRI Shapefile'  $output.gml  $KMLfilepath";
 shell_exec($query);
 }

aquí hay una publicación para convertir kml a shp usando la herramienta de línea de comandos ogr2ogr o usando el código php. Si bien, si utiliza la herramienta QGIS, puede consultar una de las publicaciones de mi blog aquí kml a shp convertir utilizando QGIS o seguir utilizando esta publicación.

    
respondido por el Himanshu Patel 24.04.2018 - 14:33
-2

En ArcGIS solo busca "kml TO LAYER" o "Layer to KML". esta herramienta te ayudará a convertir en shapefile y KML

    
respondido por el Naseem Ahmad 13.12.2018 - 06:27

Lea otras preguntas en las etiquetas