답변:
오픈 소스 사용 ogr2ogr
에서 GDAL / OGR를 :
ogr2ogr -f 'ESRI Shapefile' output.shp input.kml
ArcGIS 10에는 KML을 피쳐 클래스로 변환하는 KML To Layer 라는 GP 도구 가 있습니다. 새로운 검색을 사용하여 KML을 검색하십시오. 나는 이것을 사용하여 Google에서 기름 유출 kml 피드를 가져 와서 SHP로 변환했습니다.
KML To Layer는 지오 데이터베이스 피처 클래스 만 생성 할 수 있으므로 형상 클래스로 변환하려면 피처 클래스를 피처 클래스로 변환해야합니다.
ogr2ogr을 사용하십시오. 그러나 명령 행에 관심이 없으면 ogr2ogr 의 정말 간단한 프론트 엔드 인 ogr2gui를 사용해보십시오.
ArcGIS에서 KML 또는 KMZ 파일로 게시 된 공간 데이터를 사용하려면 먼저 KML을 피쳐 클래스 (shapefile)로 변환해야합니다. 코네티컷 대학교는 KML에서 KML_to_Shp.tbx라는 shapefile을 작성하는 스크립트를 공개했습니다. 꽤 잘 작동하며 ArcToolbox에서 사용할 수 있습니다. KML은 항상 지리적 좌표 (WGS84) 여야하므로 결국 UTM Zone 15N NAD83으로 변환해야합니다.
모든 새 도구와 마찬가지로 사용하기 전에 설명서를 검토하십시오. 이것은 UCONN의 토지 사용 교육 및 연구 센터 웹 사이트에서 찾을 수 있습니다. 도구 상자에 도구 상자를 추가하고 제한 사항을 이해하면 도구를 사용하는 것이 매우 간단합니다.
명령 행 도구에 관심이있는 경우 OSGEO의 GDAL / OGR을 사용할 수 있습니다.
언급해야 할 또 하나의 상용 제품은 Global Mapper 입니다. 이것은 당신이 상상할 수있는 거의 모든 지리 데이터에 대한 관점, 변환, 재 투영 범주에 속합니다. 나는 내가 가르치는 수업에서 무료 버전을 많이 사용하고 거의 모든 사람들이 이것이 GIS 도구의 스위스 군용 칼에 대해 논평합니다 (무료 버전은 번역을하지 않지만 모든 메뉴와 옵션을 제공합니다). 내 경험에 많은 비용이 들었습니다.
다른 답변 외에도 추가 옵션이 있습니다 ...
오픈 소스 FDO 라이브러리를 사용하는 SL-King의 fdo2fdo 응용 프로그램 을 사용하면 KML을 SHP로 변환하고 그 반대로 변환 할 수 있습니다. 여기에는 명령 줄 도구뿐만 아니라 GUI (형식-형식 변환 및보다 사용자 정의 된 스키마 매핑 변환을 표현하는 GUI)가 포함됩니다.
적절한 응용 프로그램의 경우 Safe Software의 FME를 사용하면 소스 정보를 대상에 매핑하는 방법을 놀랍게 제어 할 수 있습니다. ArcGIS가있는 경우 추가 비용 으로 Data Interoperability Extension ( 형식 목록)을 통해 액세스 할 수 있습니다 .
속성이없는 포인트 기능 인 경우 XML과 같이 쉽게 CSV로 가져올 수있는 것으로 구문 분석하는 것이 좋습니다. 좌표 태그 사이의 데이터를 찾고 있습니다.
FME는이를 포함하여 다양한 유형의 전환을 처리하는 온라인 도구의 베타 버전을 게시했습니다. http://fmeserver.com/userweb/sharper/Portal/EasyTranslator/index.html 이 변환기는 정말 당신을 도울 것입니다.
다른 상용 제품도 있습니다. Arc2Earth가 떠 오릅니다. ArcGIS Desktop과 꽤 잘 통합되었습니다. http://www.arc2earth.com
Safe Software에서 FME를 볼 수도 있습니다 http://www.safe.com .
14 일의 평가판이 있습니다. FME를 사용하면 특정 속성 또는 공간 범위에 따라 KML 포인트 파일을 필터링하는 기능 외에도 데이터 변환 / 마이그레이션 프로세스 중에 KML 파일의 속성을 ESRI SHP 형식으로 매핑 할 수도 있습니다.
사용자로부터 많은 KML 파일 세트가있는 경우 일괄 변환을 수행하는 옵션도 있습니다.
~ SRG
명령 줄 제어에 OGR을 사용하면 Google 어스 프로는 다양한 다른 앱과 마찬가지로 변환하는 그래픽 방식을 제공합니다.
ET GeoWizards에는 KML 또는 KMZ 파일을 피쳐 클래스로 변환하는 Google 어스에서 가져 오기 옵션도 있습니다. > http://www.ian-ko.com/ET_GeoWizards/gw_MainFeatures.htm
오픈 소스 옵션을 찾고 있다면 MapWindow 가 방금 업데이트되었으며 KML 및 shapefile과의 변환을위한 몇 가지 플러그인이 있습니다.
Open Source MapWindow GIS 에는 KML / KMZ 파일을 shapefile로 변환하기위한 무료 확장자 ( KML2Shapefile )가 있습니다.
interop 확장이있는 경우 해당 KML을 ArcMap에 바로로드하고 shp로 내 보냅니다.
Q에 대한 반대 대답이지만 누군가가 그 반대의 경우를 위해 여기에 왔을 경우이 스크립트는 SHP-> KML http://arcscripts.esri.com/details.asp?dbid=14273 에서 완벽하게 작동합니다.
온라인에서 파일을 변환하려면 MyGeodata GIS 형식 및 좌표계 변환기를 사용해보십시오 . 그것은 ogr2ogr (gdal / ogr 라이브러리)를 기반으로하므로 거의 모든 알려진 GIS 형식과 좌표계가 지원됩니다 ...
Zonum Solutions의 온라인 KML-Shapefile 변환기도 다음과 같이 잘 작동합니다.
KML을 SHP로 변환하기위한 추가 리소스를 추가하기위한 응답에서 보지 못한 몇 가지 옵션은 다음과 같습니다.
Keyhole Markup Language 형식을 ESRI Shapefile 형식 (KML to SHP)으로 온라인 변환하는 도구는 개별 및 일괄 변환에 빠르고 사용하기 쉬운 도구입니다. 또한 변환기는 90 개 이상의 기타 벡터 및 래스터 GIS / CAD 형식과 3 000 개 이상의 좌표 참조 시스템을 지원합니다.
무료 지리 도구 는 Zonums 소프트웨어 도구를 다루고 제공합니다.
보다 깨끗한 결과를 얻을 수있는 좋고 쉬운 도움은 KML을 GPX로 먼저 변환하고 (수행 할 수있는 여러 가지 오픈 소스 소프트웨어가 있음) 각 데이터를 여는 것입니다 (GPX에는 5 가지 정보 클래스가 있습니다 : 웨이 포인트, 트랙 포인트, QGIS에서 GDAL / OGR의 ogr2ogr을 사용하여 .SHP 파일 형식으로 직접 저장하십시오.
원하는 경우 단일 데이터 파일을 생성하기 위해 대량의 데이터에 대해 일괄 처리 (예 : SAGA의 병합 벡터 레이어 사용)를 사용하는 것이 매우 쉽고 최종 "SHP로 저장"전에 빈 속성을 지울 수도 있습니다.
이상한 결과가 최종 결과에 나타날 경우 목록 체계에 특별한주의를 기울이십시오. 새 벡터 데이터를지도에 추가하는 순간에 적절한 문자를 선택할 수 있습니다.
나는 파티에 늦었지만 몇 가지 추가 방법이 있습니다.
Google Fusion Tables 는 KML 포인트 정보를 .csv 형식의 WGS84 X 및 Y로 변환 한 다음 원하는 GIS 분석 소프트웨어에서 사용할 수 있습니다.
R에서 rgdal 패키지 사용 :
install.packages("rgdal")
library(rgdal) #load package
kmlfile=readOGR("yourkmlfilehere.kml") #load KML
writeOGR(kmlfile,"yourshapepath",layer="shapename", driver="ESRI Shapefile") #save shape
KML을 Shp 파일 형식으로 변환하려면 ogr2ogr 유틸리티를 사용할 수 있습니다. 먼저 시스템에 설치해야합니다. 이미 설치 한 경우 터미널에 ogr2ogr 유형을 사용하십시오.
이제 변환을 위해 주어진 명령을 실행해야합니다.
--- ogr2ogr -f 'ESRI Shapefile' Output_sahpefile.shp Input_KML.kml
이것은 ogr2ogr로 변환을 수행하는 방법이며 결과를 얻지 못하면 코딩 방법으로 Kml을 shp로 변환 할 수 있습니다.
PHP를 사용하여 수행 할 수도 있습니다. 이 명령을 문자열로 정의한 함수를 작성하고이 문자열을 shell_exec () 메소드에 제공하여 실행할 수 있습니다. Shell_exec ()는 실제로 명령을 실행하고 출력을 문자열로 반환합니다.
public function KML_to_shp($KMLfilepath,$output){
$query="ogr2ogr -f 'ESRI Shapefile' $output.gml $KMLfilepath";
shell_exec($query);
}
다음은 명령 행 도구 ogr2ogr 또는 PHP 코드를 사용 하여 kml을 shp로 변환 하는 게시물 입니다. QGIS 도구를 사용하는 경우 QGIS를 사용 하여 변환 하거나 다른 게시물을 계속 사용 하려면 내 블로그 게시물 중 하나를 살펴보십시오 .