注册 登录  
 加关注
   显示下一条  |  关闭
温馨提示!由于新浪微博认证机制调整,您的新浪微博帐号绑定已过期,请重新绑定!立即重新绑定新浪微博》  |  关闭

斗天堂

douzsh还活着

 
 
 

日志

 
 

pds->ISFF & DGN/DRV  

2009-07-16 08:56:36|  分类: 默认分类 |  标签: |举报 |字号 订阅

  下载LOFTER 我的照片书  |

这几天公司让研究dgn文件的解码工作,先把心得体会以及相应的工具文档总结下:

pds配管建模设置安装等的文档:pds.rar

dgn v7格式:ISFF.pdf

现在做个介绍:

pds是intergraph推出的应用软件,主要在配管、规划设计上使用,需要在安装了iis的server上以microstation为平台,sql或者oracle为数据库,后安装pds,由于我没有装过这个软件,我们的目的只是读取其管线的内容,在pds导出的文件中,dgn和drv两个格式的文件均为其导出,其中DGN储存图形信息,DRV储存属性数据,对于dgn文件补充说下,在2000年以前的dgn文件都遵循isff的标准,为intergraph所设定,但是在microstation v8出现后,新版本的dgn文件标准被bentley公司制定,这里,我们使用的是pds导出的dgn文件,均为v7版本,使用dgnlib可以解读dgn格式的信息,但是如下几点需要注意:

1、关于reference,在一个项目的模型之间往往互相引用,dgnlib是读不出来的,需要自己去做这段代码,仔细阅读了isff就可以了。

2、关于Quaternion,这个东西我看了很久,往往的四元数旋转矩阵的变换对dgn文件导出的并不适用,关于这块,我引用isff里头的一段话,需要好好实验才能得出结果。

Before the quaternions can be used, there are two issues to consider. First, the range of the rotation matrix values is -1 to 1. The quaternions are stored as 32-bit integers. They must be shifted to the right 31 times (or divided by 231). Second, the quaternions are stored in 2's Complement format. Negative values will yield incorrect results if treated as unsigned integers. In some instances, it may be necessary to solve for the 2's Complement of the negative number. Do not forget to add the negative sign to preserve the original value (ie, $F = $-1, NOT $F = $+1)!

2'S COMPLEMENT OF 32-BIT NUMBER:
NUMBER_2C=232-NUMBER  (http://dgnlib.maptools.org/dgn.html

3、关于属性drv文件,drv文件中的lbl与dgn文件中的<>Data相互对应,可以直接读取。

 

 以上小小心得,做个记录

 

  评论这张
 
阅读(479)| 评论(0)
推荐 转载

历史上的今天

评论

<#--最新日志,群博日志--> <#--推荐日志--> <#--引用记录--> <#--博主推荐--> <#--随机阅读--> <#--首页推荐--> <#--历史上的今天--> <#--被推荐日志--> <#--上一篇,下一篇--> <#-- 热度 --> <#-- 网易新闻广告 --> <#--右边模块结构--> <#--评论模块结构--> <#--引用模块结构--> <#--博主发起的投票-->
 
 
 
 
 
 
 
 
 
 
 
 
 
 

页脚

网易公司版权所有 ©1997-2017