DGNLib:阅读与写入DGN文件的C/C++库
需积分: 12 180 浏览量
更新于2024-09-10
收藏 111KB TXT 举报
"Intergraph Standard File Formats (Element Structure) 是一套由Intergraph公司用于MicroStation和Interactive Graphics Design System (IGDS)的文件格式。这个标准现在对公众开放,使得Intergraph的客户和第三方开发者能够创建自定义应用,读取和写入ISFF格式,而无需从Intergraph获得许可。ISFF包含了设计文件头、基本和复杂元素、元素表示、通用元素参数、层符号(Type10)、库单元头(Type1)、单元头(Type2)、线元素(Type3)、线串(Type4)、形状(Type6)、曲线(Type11)和B样条、极点元素(Type21)、文本节点头(Type7)、复杂链头(Type12)和复杂形状头(Type14)、椭圆元素(Type15)、弧元素(Type16)、文本元素(Type17)、3D表面头(Type18)和3D实体头(Type19)、点串元素(Type22)以及锥形元素等。
DGNLib是一个小型的C/C++库,专门用于读取和写入DGN文件。目前提供的是dgnlib-1.11.zip版本,包含源代码和dgndump示例程序。DGNLib并不支持所有的DGN元素,但大多数2D和3D元素被支持,如线条、线串、曲线、B样条、椭圆、弧和文本元素,同时可以提取颜色表和主坐标信息。对于一些较为复杂的元素,它仅以原始数据模式读取,但不进行解释。
DGNLib不支持Microstation V8的DGN文件,因为它们是不同的格式。OpenDWG联盟的DGNdirect库则支持DGN v8格式。DGNLib具有较好的可移植性,可以在Linux、MacOS和Windows上运行,但可能需要根据平台调整cpl_port.h和cpl_config.h文件。
在内存使用方面,DGNLib通常不会占用大量内存,因为每次只在内存中存储一个元素。如果文件被索引,每个元素会额外占用12字节的内存,但这不是必需的。
DGNLib不包含用于绘制DGN元素的代码,但它提供了一份文档,指导如何正确地根据DGNLib返回的结构来绘制元素。OGR层将这些绘图信息重新解释为OGR Feature Style格式,该格式被某些应用程序(如UMN MapServer)理解。
DGNLib使用MIT/X风格的开源许可证,这意味着它可以在商业和免费产品中自由使用,无须担心授权问题。源文件头部包含了完整的许可证文本。
在写入DGN文件方面,最新版本的DGNLib提供了初步的支持,包括2D和3D DGN文件的写入功能。
目前有详细的DGN Library API参考文档,但尚无教程式的使用指南。dgndump.c实用程序可以作为有限的示例。虽然初始项目已完成,但作者对修复错误和添加次要功能感兴趣,并欢迎改进。"
2023-10-10 上传
2023-07-25 上传
2023-09-17 上传
2024-03-08 上传
2023-04-16 上传
商域无疆
- 粉丝: 386
- 资源: 12
最新资源
- IEEE 14总线系统Simulink模型开发指南与案例研究
- STLinkV2.J16.S4固件更新与应用指南
- Java并发处理的实用示例分析
- Linux下简化部署与日志查看的Shell脚本工具
- Maven增量编译技术详解及应用示例
- MyEclipse 2021.5.24a最新版本发布
- Indore探索前端代码库使用指南与开发环境搭建
- 电子技术基础数字部分PPT课件第六版康华光
- MySQL 8.0.25版本可视化安装包详细介绍
- 易语言实现主流搜索引擎快速集成
- 使用asyncio-sse包装器实现服务器事件推送简易指南
- Java高级开发工程师面试要点总结
- R语言项目ClearningData-Proj1的数据处理
- VFP成本费用计算系统源码及论文全面解析
- Qt5与C++打造书籍管理系统教程
- React 应用入门:开发、测试及生产部署教程