arquivos .dgn do IBGE

500 views
Skip to first unread message

Andrè Luíz de Carvalho Bossan

unread,
Mar 13, 2013, 6:36:23 PM3/13/13
to qgisb...@googlegroups.com
Caros,

Já trouxe essa questão para o debate, mas aqui vai: alguém testou algum procedimento para corrigir os arquivos .dgn do IBGE, referentes às cartas planimétricas (vetoriais)?

Esses arquivos estão na escala errada e na posição errada. Na verdade a posição em metros está exatamente 1000 vezes menor, coerentemente com o tamanho do desenho. Assim, se a posição do ponto limite superior esquerdo for 300x1000 corresponderia na verdade a 300000x1000000, na grade utm.

Anteriormente resolvi a geometria exportando o .dgn para dxf e fazendo as correções num  CAD. O problema é que se perde muita informação no processo, pois as ligações com as tabelas ficam prejudicadas, quando não eliminadas.

Existe um meio de resolver isso usando apenas o Qgis?

Andrè Bossan
Geógrafo e professor de geografia
Cubatão - SP

Diego Moreira

unread,
Mar 13, 2013, 9:30:51 PM3/13/13
to qgisb...@googlegroups.com
Andrè,

Faz quase 10 anos que não mexo com DGN então posso falar alguma besteira.

O DGN tem algumas configurações MASTER_UNIT, SUB_UNIT e SUB_UNIT_PER_UNIT, no caso do IBGE a MASTER_UNIT é o K(Qu)ilometro e a SUB_UNIT (ACHO) m logo a SUB_UNIT_PER_UNIT 1000.
Um outro detalhe é que a OGR, biblioteca utilizada pelo qgis para ler o DGN, considera que o arquivo DGN não possui SRS e ela tbm não lê todos os elementos do DGN (incompatibilidade sintática), isso significa que haverá perdas.

http://www.gdal.org/ogr/drv_dgn.html

Mas enfim, quais o problemas e como resolvê-los:
Utilizei o seguinte arquivo para teste ftp://geoftp.ibge.gov.br/mapeamento_sistematico/topograficos/escala_250mil/vetor/cacu434/vetor/04434hd.zip
  1. Possíveis Problemas:
    1. As configurações do DGN estão erradas:
      1. Tentei sobrescrever as configurações do DGN com o seguinte comando no terminal, (ogr2ogr -dsco UOR_PER_SUB_UNIT=1000 -dsco SUB_UNITS_PER_MASTER_UNIT=1000 -dsco MASTER_UNIT_NAME=km -dsco SUB_UNIT_NAME=m 04434hd_out.dgn 04434hd.dgn), NÃO FUNCIONOU.
    2. O QGIS/OGR ignora estas informações da configuração do DGN além da falta de um SRS:
      1. Definir um SRS personalizado com as unidades em Km,  (+proj=utm +zone=24 +south +ellps=WGS84 +datum=WGS84 +to_meter=1000 +no_defs) (É preciso colocar o datum, elipsoide e a zona corretos), atribui esse novo SRS ao layer. Habilitei a conversão on-the-fly e utilizei a projeção utm UTM/WGS84 24S  com as unidades em metro. FUNCIONOU!!!

Essa opção, embora tenha funcionado não considero ideal.

Então seguem mais duas.

  1. Converter o arquivo DGN para shape, já "ajeitando" o SRS
    1. ogr2ogr -where "OGR_GEOMETRY='Linestring'" -f "ESRI Shapefile" -s_srs '+proj=utm +zone=24 +south +ellps=WGS84 +datum=WGS84 +to_meter=1000 +no_defs'  -t_srs '+proj=utm +zone=24 +south +ellps=WGS84 +datum=WGS84 +units=m +no_defs' 04434hd_LINE.shp 04434hd.dgn 
    2. ogr2ogr -where "OGR_GEOMETRY='Point'" -f "ESRI Shapefile" -s_srs '+proj=utm +zone=24 +south +ellps=WGS84 +datum=WGS84 +to_meter=1000 +no_defs'  -t_srs '+proj=utm +zone=24 +south +ellps=WGS84 +datum=WGS84 +units=m +no_defs' 04434hd_POINT.shp 04434hd.dgn
    3. ogr2ogr -where "OGR_GEOMETRY='Polygon'" -f "ESRI Shapefile" -s_srs '+proj=utm +zone=24 +south +ellps=WGS84 +datum=WGS84 +to_meter=1000 +no_defs'  -t_srs '+proj=utm +zone=24 +south +ellps=WGS84 +datum=WGS84 +units=m +no_defs' 04434hd_POLYGON.shp 04434hd.dgn
  2. Só ajeitar o SRS.
    1. ogr2ogr  -f "DGN" -s_srs '+proj=utm +zone=24 +south +ellps=WGS84 +datum=WGS84 +to_meter=1000 +no_defs'  -t_srs '+proj=utm +zone=24 +south +ellps=WGS84 +datum=WGS84 +units=m +no_defs' 04434hd_out.shp 04434hd.dgn

Em todos os dois casos haverá perdas de informação por conta das limitações da OGR, como falado no início.

Enfim, espero ter ajudado e não falado besteiras.

Abraços,

Diego Moreira Carvalho
Geógrafo - CREA: DF19935/D
Rhumb Tecnologia


--
--
---
Você recebeu esta mensagem do Grupo "QGISBrasil"
Para postar neste grupo, envie um e-mail para qgisb...@googlegroups.com
Para cancelar a sua inscrição neste grupo, envie um e-mail paragisbrasi...@googlegroups.com
Para ver mais opções, visite este grupo em
http://groups.google.com/group/qgisbrasil?hl=pt?hl=pt-BR
 
---
Você está recebendo esta mensagem porque se inscreveu no grupo "qgisbrasil" dos Grupos do Google.
Para cancelar a inscrição neste grupo e parar de receber seus e-mails, envie um e-mail para qgisbrasil+...@googlegroups.com.
Para obter mais opções, acesse https://groups.google.com/groups/opt_out.
 
 

Hebert Guilherme de Azevedo

unread,
Mar 14, 2013, 9:03:15 AM3/14/13
to qgisb...@googlegroups.com
Um modo de resolver isso é usar o v.transform do GRASS pelo sextante e
aplicar a multiplicação por 1000 no x e y scale. Este processo pode
ser feito em lote.

Em 13/03/13, Diego Moreira<morei...@gmail.com> escreveu:
> Andrè,
>
> Faz quase 10 anos que não mexo com DGN então posso falar alguma besteira.
>
> O DGN tem algumas configurações MASTER_UNIT, SUB_UNIT e SUB_UNIT_PER_UNIT,
> no caso do IBGE a MASTER_UNIT é o K(Qu)ilometro e a SUB_UNIT (ACHO) m logo
> a SUB_UNIT_PER_UNIT 1000.
> Um outro detalhe é que a OGR, biblioteca utilizada pelo qgis para ler o
> DGN, considera que o arquivo DGN não possui SRS e ela tbm não lê todos os
> elementos do DGN (incompatibilidade sintática), isso significa que haverá
> perdas.
>
> http://www.gdal.org/ogr/drv_dgn.html
>
> Mas enfim, quais o problemas e como resolvê-los:
> Utilizei o seguinte arquivo para teste
> ftp://geoftp.ibge.gov.br/mapeamento_sistematico/topograficos/escala_250mil/vetor/cacu434/vetor/04434hd.zip
>
> 1. Possíveis Problemas:
> 1. As configurações do DGN estão erradas:
> 1. Tentei sobrescrever as configurações do DGN com o seguinte
> comando no terminal, (*ogr2ogr -dsco UOR_PER_SUB_UNIT=1000 -dsco
> SUB_UNITS_PER_MASTER_UNIT=1000 -dsco MASTER_UNIT_NAME=km -dsco
> SUB_UNIT_NAME=m 04434hd_out.dgn 04434hd.dgn*), NÃO FUNCIONOU.
> 2. O QGIS/OGR ignora estas informações da configuração do DGN além da
> falta de um SRS:
> 1. Definir um SRS personalizado com as unidades em Km,
> (*+proj=utm
> +zone=24 +south +ellps=WGS84 +datum=WGS84 +to_meter=1000
> +no_defs*)
> (É preciso colocar o datum, elipsoide e a zona corretos),
> atribui esse novo
> SRS ao layer. Habilitei a conversão on-the-fly e utilizei a
> projeção utm
> UTM/WGS84 24S com as unidades em metro.* FUNCIONOU!!!*
>
> Essa opção, embora tenha funcionado não considero ideal.
>
> Então seguem mais duas.
>
> 1. Converter o arquivo DGN para shape, já "ajeitando" o SRS
> 1. ogr2ogr -where "OGR_GEOMETRY='Linestring'" -f "ESRI Shapefile"
> -s_srs '+proj=utm +zone=24 +south +ellps=WGS84 +datum=WGS84
> +to_meter=1000
> +no_defs' -t_srs '+proj=utm +zone=24 +south +ellps=WGS84
> +datum=WGS84
> +units=m +no_defs' 04434hd_LINE.shp 04434hd.dgn
> 2. ogr2ogr -where "OGR_GEOMETRY='Point'" -f "ESRI Shapefile" -s_srs
> '+proj=utm +zone=24 +south +ellps=WGS84 +datum=WGS84 +to_meter=1000
> +no_defs' -t_srs '+proj=utm +zone=24 +south +ellps=WGS84
> +datum=WGS84
> +units=m +no_defs' 04434hd_POINT.shp 04434hd.dgn
> 3. ogr2ogr -where "OGR_GEOMETRY='Polygon'" -f "ESRI Shapefile" -s_srs
> '+proj=utm +zone=24 +south +ellps=WGS84 +datum=WGS84 +to_meter=1000
> +no_defs' -t_srs '+proj=utm +zone=24 +south +ellps=WGS84
> +datum=WGS84
> +units=m +no_defs' 04434hd_POLYGON.shp 04434hd.dgn
> 2. Só ajeitar o SRS.
> 1. ogr2ogr -f "DGN" -s_srs '+proj=utm +zone=24 +south +ellps=WGS84
--
Hebert Guilherme de Azevedo
(21) 7573-5705 - Claro
(31) 7531-2575 - Tim

Skype: hebert.guilherme.de.azevedo

lattes: http://lattes.cnpq.br/6582724988395217

Andrè Luíz de Carvalho Bossan

unread,
Mar 15, 2013, 9:30:12 PM3/15/13
to qgisb...@googlegroups.com
Obrigado, amigos!

Vou tentar os dois procedimentos, já que preciso acertar a projeção também.

Quero destacar porém que minhas preocupações principais são com a posição correta e com o tamanho do mapa (escala).

Andrè.

Andrè Bossan
Geógrafo e professor de geografia
Cubatão - SP


Andrè Luíz de Carvalho Bossan

unread,
Mar 19, 2013, 7:16:59 PM3/19/13
to qgisb...@googlegroups.com
Herbert, 

Uma pergunta: Por que não usar o Qgis ao invés do Grass? Aliás, acho tão estranha essa simbiose entre os dois programas!

Andrè Bossan

Andrè Bossan
Geógrafo e professor de geografia
Cubatão - SP


Hebert Guilherme de Azevedo

unread,
Mar 19, 2013, 10:08:49 PM3/19/13
to qgisb...@googlegroups.com
André,

pelo complemento Sextante algumas funções do GRASS estão habilitadas
sendo de fácil uso. A função a qual me referi, até onde conheço, não
tem equivalente nativa no QGIS. Experimente usar as funções que o
sextante habilita no QGIS, potencializa e muito o uso.

Em 19/03/13, Andrè Luíz de Carvalho Bossan<andrep...@gmail.com> escreveu:

Marcos Vinicius Sanches Abreu

unread,
Mar 19, 2013, 8:28:03 PM3/19/13
to qgisb...@googlegroups.com
Olha, os DGN do IBGE estão representando coordenadas em km... Penso que dê para criar um projeto com o Datum do DGN, configurado em km e abrir o arquivo... Aí, basta salva-lo como shp, considerando o SRC de saída com o Datum que vc quer e em metros... Isso era o que eu fazia no ArcGIS. Ainda não precisei realizar tal procedimento no QGIS.
O que faz parecer que o dgn está fora de escala e em outra posição é exatamente o fato de ele não possuir um SRC. Assim, ele é posicionado na tela com os valores de coordenadas originais, que em km é mil vezes menor... por consequência, a escala parece ser diferente. Caso ele tivesse a capacidade de ter associado um SRC, a projeção OTF daria conta de posiciona-lo corretamente.

Andrè Luíz de Carvalho Bossan

unread,
Mar 20, 2013, 8:38:50 PM3/20/13
to qgisb...@googlegroups.com
Marcos. 

Informação muito interessante! Vou tentar o procedimento, mas confesso que parte disso eu não entendi muito bem. Depois de tentar eu volto.


Andrè Bossan
Geógrafo e professor de geografia
Cubatão - SP


Andrè Luíz de Carvalho Bossan

unread,
Mar 24, 2013, 2:49:44 PM3/24/13
to qgisb...@googlegroups.com
Ao exportar o arquivo transformando projeção e datum ocorreu esse erro:
(vou ainda testar o arquivo exportado, se couber no projeto do Spring é porque está nas coordenadas corretas)
Imagem inline 1

Andrè Bossan
Geógrafo e professor de geografia
Cubatão - SP


image.png

Andrè Luíz de Carvalho Bossan

unread,
Mar 24, 2013, 3:07:53 PM3/24/13
to qgisb...@googlegroups.com
Infelizmente nem mesmo o Qgis abre os arquivos gerados, ou melhor, algo foi criado, mas não pode ser visualizado e está na escala 1:11.

Andrè Bossan
Geógrafo e professor de geografia
Cubatão - SP


image.png

Diego Moreira

unread,
Mar 24, 2013, 3:14:41 PM3/24/13
to qgisb...@googlegroups.com
Vc testou o procedimento que apresentei utilizando os utilitário ogr2ogr?


Diego Moreira Carvalho
Geógrafo - CREA: DF19935/D
Rhumb Tecnologia


image.png

Andrè Luíz de Carvalho Bossan

unread,
Mar 24, 2013, 3:26:15 PM3/24/13
to qgisb...@googlegroups.com
Não! Vou testar.
Eu fiz apenas a exportação direta aplicando o src pretendido.


Andrè Bossan
Geógrafo e professor de geografia
Cubatão - SP


image.png

Andrè Luíz de Carvalho Bossan

unread,
Mar 24, 2013, 4:31:42 PM3/24/13
to qgisb...@googlegroups.com
Temos um problema extra, o Qgis não lê integralmente os arquivos dgn, por isso a camada referente a hidrografia aparece como ponto quando é, na verdade, linha.
 

Andrè Bossan
Geógrafo e professor de geografia
Cubatão - SP


image.png

Andrè Luíz de Carvalho Bossan

unread,
Mar 28, 2013, 9:07:49 PM3/28/13
to qgisb...@googlegroups.com
Hebert,

Consegui resolver o problema usando o "transform" do sextante, mas foi feito via gvSIG, por conta do problema relatado anteriormente. Tive que salvar com shp antes de aplicar o transform, mas funcionou com precisão. Bastou ampliar em 1000 vezes.



Andrè Bossan
Geógrafo e professor de geografia
Cubatão - SP


image.png
Reply all
Reply to author
Forward
0 new messages