QGIS를 사용하여 .shp를 .gpx로 변환 하시겠습니까?


34

.shp를 .gpx로 변환하고 싶습니다.

GIS를 사용하여 shapefile을 열고 gpx로 "저장"하려고했지만 OGR 오류가 발생합니다.

ObjectId 필드 작성 실패 (OGR 오류 : GPX 스키마에서 'ObjectId'이름의 필드가 지원되지 않습니다. 요소 사용을 허용하려면 GPX_USE_EXTENSIONS 작성 옵션을 사용하십시오).

이 오류를 어떻게 해결할 수 있습니까?


나는 같은 OS를 가진 다른 PC에서 이것을 시도했고 작동합니다! Andre Joost가 맞다! 나는 이것이 왜 이것이 여기에서 작동하는지 모르고 다른 PC에서는 작동하지 않습니다. GPX 드라이버를 설치해야합니까 ?? : | 안드레 Joost 감사합니다!
ePascoal

오류가 익숙하지 않은 매개 변수 또는 설정을 언급하는 것과 같은 상황에서는 사용중인 드라이버 (예 : GPX)에 대한 관련 GDAL 또는 OGR 형식 페이지를 확인하십시오 . 일부 시나리오에서는 데이터를 손상시킬 수 있으므로 옵션을 맹목적으로 적용하고 싶지 않습니다. 케이스 인 점, 당신은 할 수 없습니다 함부로 적용 할 에 가 처음에 실패 왜 연구하지 않고. -skipfailuresogr2ogr
elrobis

답변:


30

들은대로하십시오 : Data source필드에

GPX_USE_EXTENSIONS=YES

또는 아래의 "속성 생성 건너 뛰기"(또는 언어로 명명 된 이름)를 확인하십시오.

에서 Layer필드, 당신은 또한 입력 할 수 있습니다

FORCE_GPX_TRACK=YES

경로 대신 트랙을 가져옵니다.


감사합니다. 실제로 작동하지만 shp를 gpx로 변환하면 ID 필드가 손실됩니다. 내 모든 gpx 필드가 null입니다. "id"필드 (shp 파일)를 "name"필드 (gpx 파일)에 어떻게 대응시킬 수 있습니까?
ePascoal

5
수출이 불가능한 것 같습니다. gdal 패키지의 ogr2ogr.exe로 가능합니다. ogr2ogr -f GPX -dsco GPX_USE_EXTENSIONS = NO shpexport.gpx D : \ path \ to \ your \ test.shp -lco FORCE_GPX_TRACK = YES -sql "SELECT id AS name FROM layername "
AndreJ

2
내보내기 전에 테이블 관리자 플러그인을 사용하여 shapefile의 id 필드 이름을 "name"으로 바꾸고 나중에 다시 변경할 수 있습니다. 필요한 경우 리포지토리 목록에 pyqgis.org/repo/contributed 를 추가 해야합니다.
AndreJ

1
내보내기 전에 shapefile에서 id 필드의 이름을 이름으로 바꾸려고했지만 작동하지 않습니다. PostGPS라는 Python 앱을 추가하는 응용 프로그램을 찾지 만 작동하지 않습니다. 나는 성공하지 않고 스크립트를 사용하여 ogr2ogr로 시도했다 : / 내가 뭔가 잘못하고있다. 다른 가능한 해결책이 있습니까?
ePascoal

이상 해요, 여기서 일 했어요 다른 이름으로 저장 대화 상자의 상단 필드에서 "GPX_USE_EXTENSIONS = YES"를 설정해야합니다. 확인란을 사용하면 작동하지 않습니다. ogr2ogr의 경우 shapefile 이름과 동일하지 않아도 레이어 이름을 사용해야합니다.
AndreJ

1

또는 다음 단계를 시도 할 수 있습니다.

  1. QGIS로 SHP 파일을여십시오
  2. SHP 레이어를 선택하십시오
  3. 레이어> 다른 이름으로 저장 ...> GPX

1

하나의 간단한 트릭이 우리를 위해 일했습니다. 기본 CSV 파일에서 첫 번째 필드 (ID / 레이블)의 이름은 'name'이어야합니다. 그런 다음 해당 파일을 가져 와서 .gpx로 저장하십시오.


0

Minnisota 자연 자원 국의 DNRGarmin을 사용할 수도 있습니다. 그것은 무료 도구이며 GPS 데이터에 대한 많은 가져 오기 및 내보내기를 수행 할 수 있습니다


0

당신은 강제로 할 수 있습니다 :

GPX_USE_EXTENSIONS=YES

위에 표시된대로. 그러나 예측을 이해하거나 관리하지 않으면 추가 문제가 발생할 수 있습니다. CRS가 셰이프 파일이 투영 된 것과 다르거 나 작업 공간이 투영되는 방식과 다른 경우 데이터 또는 오류에 오류가 있습니다. GPS 장치에는 WGS84가 필요합니다.

내가 찾은 가장 좋은 해결책은 처리 도구 상자에서 "계층 재생성"을 선택하는 것입니다. 이를 통해 여러 레이어를 일괄 변환하고 데이터를 올바르게 다시 투영하며 gpx 파일로 저장할 수 있습니다.레이어를 gpx로 재 투영

내가 해결하지 못한 유일한 문제는 레이블을 유지하는 방법입니다. 누군가가이를 수행하는 방법이나 트릭을 알고 있기를 바랍니다. 옵션이 아닌 것 같습니다. 나는 레이블을 개별적으로 클릭하여 수정하거나 gpx 코드로 이동하여 수동으로 코드를 입력하기 위해 어수선한 Garmin BaseCamp 소프트웨어를 사용해야했습니다. 둘 다 시간이 많이 걸립니다.

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.