RE: [Portugal] Off-topic: microstation *.top e catálogos *.cat

Duarte Carreira DCarreira at edia.pt
Mon Nov 22 04:59:19 EST 2010


Luís,

Eu também tentei com o ogr. Alguns elementos têm as linkages identificadas e outros não. Não cheguei a perceber porquê. Há um problema do ogr (ou dgnlib) como elementos de dupla precisão, que mudam um pouco a ordem dos bytes do dgn e baralhavam o ogr, e não sei como este problema está actualmente.

E mesmo os valores apresentados não me parecem correctos, ou é necessário combiná-los de alguma forma que não descobri. Por exemplo, o valor do IGP nunca aparece, nem em hex nem em dec.

Se tivermos algum sucesso a replicar este problema podemos enviar para o Frank W.

Podes enviar-me o dgndump compilado?

Duarte

De: Luis Miguel [mailto:lmikegeo  yahoo.com]
Enviada: sábado, 20 de Novembro de 2010 22:24
Para: portugal  lists.osgeo.org
Assunto: Re: [Portugal] Off-topic: microstation *.top e catálogos *.cat


Na sequência deste assunto, aproveitei para seguir a pista da dgnlib<http://dgnlib.maptools.org/>. Esta lê mesmo "user data linkages"
Depois de compilar o dgndump.c contra a dgnlib obtive resultados do género:
-------------------------------------
Element:Line String  Level:21 id:29
  offset=7738  size=98 bytes
  graphic_group:0   color:0 weight:0 style:0
  properties=3584,ATTRIBUTES,MODIFIED,NEW
  (1110.290000,-160198.930000,0.000000)
  (985.480000,-160315.660000,0.000000)
  (882.280000,-160408.570000,0.000000)
Attributes (24 bytes):
Type=0x1995
  0x0310951903020103
Type=0x1995
  0x0310951901100303
Type=0x1995
  0x0310951902110101

----------

Estes três últimos atributos correspondem às "user data linkages". Note-se a assinatura do IPCC ("0x1995")

Curiosamente, o mesmo não se passa com a OGR. Para a mesma feature:

ogrinfo -al -fid 29 --config DGN_LINK_FORMAT "STRING" teste.dgn

-------
OGRFeature(elements):29
  Type (Integer) = 4
  Level (Integer) = 21
  GraphicGroup (Integer) = 0
  ColorIndex (Integer) = 0
  Weight (Integer) = 0
  Style (Integer) = 0
  EntityNum (Integer) = (null)
  MSLink (Integer) = (null)
  Text (String) = (null)
  Style = PEN(id:"ogr-pen-0",c:#fcfcfc)
  LINESTRING (1110.29 -160198.92999999999 0,985.48000000000002 -160315.66 0,882.27999999999997 -160408.57000000001 0)
-----------------------------------

Fui ver o código  http://trac.osgeo.org/gdal/browser/trunk/gdal/ogr/ogrsf_frmts/dgn/ogrdgnlayer.cpp
e aparentemente só lê MSLink e EntityNum (ver chamada da função "DGNGetLinkage")

Alguém tentou seguir este caminho (OGR ou DGNLib)?

Cumps

Luis Tavares

-------------- próxima parte ----------
Um anexo em HTML foi limpo...
URL: http://lists.osgeo.org/pipermail/portugal/attachments/20101122/fe2c689d/attachment.html


More information about the Portugal mailing list