Convertendo .shp em .gpx usando o QGIS?

34

Gostaria de converter .shp em .gpx.

Usando o GIS, abro meu shapefile e tentei "salvar como" gpx, mas ocorre um erro de OGR:

falha na criação do campo ObjectId (erro OGR: o campo do nome 'ObjectId' não é suportado no esquema GPX. Use a opção de criação GPX_USE_EXTENSIONS para permitir o uso do elemento).

Como posso corrigir este erro?

ePascoal
fonte
Eu tentei isso em outro PC com o mesmo sistema operacional e funciona! Andre Joost está correto! Ainda não sei por que isso funciona aqui e não funciona no outro PC. Devo instalar o driver GPX? : | Obrigado André Joost!
ePascoal
em uma situação como essa, na qual o erro menciona um parâmetro ou configuração que você não conhece, verifique a página de formatos relacionados GDAL ou OGR para o driver que você está usando, por exemplo, GPX . Em alguns cenários, não convém aplicar cegamente uma opção, pois isso pode prejudicar seus dados. Case-em-ponto, você não deseja aplicar indiscriminadamente -skipfailuresem ogr2ogrsem pesquisar por que ela está falhando em primeiro lugar.
elrobis

Respostas:

30

Basta fazer o que foi solicitado: no Data sourcecampo, digite

GPX_USE_EXTENSIONS=YES

ou marque a opção "pular a criação de atributos" abaixo (ou o nome dele no seu idioma).

No Layercampo, você também pode inserir

FORCE_GPX_TRACK=YES

para obter faixas em vez de rotas.

AndreJ
fonte
Obrigado, ele realmente funciona, mas quando eu converter shp para gpx eu perdi meu campo de identificação. Todos os meus campos de gpx são nulos. Como posso corresponder meu campo "id" (arquivo shp) ao campo "nome" (arquivo gpx).
ePascoal
5
Receio que isso não seja possível na exportação. é possível com ogr2ogr.exe a partir do pacote gdal: ogr2ogr -f GPX -dsco GPX_USE_EXTENSIONS = NÃO shpexport.gpx D: \ caminho \ para \ seu \ test.shp -lco FORCE_GPX_TRACK = SIM -sql "SELECT ID AS name FROM nome do arquivo "
AndreJ
2
Você pode usar o plug-in do gerenciador de tabelas para renomear o campo de identificação no shapefile para "name" antes de exportar e alterá-lo posteriormente. Se necessário, você deve adicionar pyqgis.org/repo/contributed à lista de seus repositórios.
Andrej
11
Eu tentei renomear o campo id no shapefile para nomear antes de exportar, mas não funciona. Eu procuro um aplicativo que adicione um aplicativo python chamado PostGPS, mas não funciona. Tentei com ogr2ogr usando seu script também sem sucesso: / Estou fazendo algo errado. Existe alguma outra solução possível?
ePascoal
Estranho, funcionou aqui. Você deve definir "GPX_USE_EXTENSIONS = YES" no campo superior da caixa de diálogo Salvar como. Com a caixa de seleção, não funciona. Para o ogr2ogr, é necessário usar o nome do lay, não necessário o mesmo que o nome do shapefiles.
Andrej
1

Como alternativa, você pode tentar as seguintes etapas:

  1. Abra o seu arquivo SHP com QGIS
  2. Selecione sua camada SHP
  3. Camada> Salvar como ...> GPX
Michael Fayad
fonte
1

Um truque simples funcionou para nós. No arquivo csv principal, o primeiro campo (ID / rótulo) deve ser nomeado 'nome'. e importe esse arquivo e salve como .gpx

pooja
fonte
0

Você também pode usar o DNRGarmin do departamento de Recursos Naturais de Minnisota. É uma ferramenta gratuita e permite fazer muitas importações e exportações de dados de GPS

Ryan Garnett
fonte
0

Você pode forçar:

GPX_USE_EXTENSIONS=YES

Como indicado acima. No entanto, se você não entender ou gerenciar suas projeções, terá problemas adicionais. Você encontrará erros nos dados - imprecisão nos pontos ou trilhas se o seu CRS for diferente do que seus arquivos de forma são projetados ou de como seu espaço de trabalho é projetado; O WGS84 é necessário para unidades de GPS.

A melhor solução que encontrei é selecionar "Reprojetar camada" na sua caixa de ferramentas de processamento. Isso oferece a opção de converter em lote várias camadas, reprojetar os dados corretamente e salvar como um arquivo gpx.Reprojetar a camada em gpx

O único problema que não aprendi a resolver é como manter os rótulos. Espero que alguém saiba como ou tenha um truque para fazer isso - não parece ser uma opção. Eu tive que usar o desajeitado software Garmin BaseCamp para clicar e revisar os rótulos individualmente ou entrar no código gpx e digitar o código manualmente - ambos consomem muito tempo.

Mark Thompson
fonte