【发布时间】:2014-05-01 02:01:14
【问题描述】:
我正在做一个项目,我需要从 C++ 中的 .dwg 文件导入行数据,并且正在努力知道从哪里开始。我看过这个http://opendesign.com/files/guestdownloads/OpenDesign_Specification_for_.dwg_files.pdf,我认为这对我来说可能太硬核了,除非有人知道用代码简单地描述解码策略的方法吗?例如,大概每个操作都必须按位计算?
除此之外,我可能不得不依赖一些第三方库,但问题是:是否有任何此类(开源)库获得许可许可?我不能在这个项目中使用复制左代码。
为了澄清对 cmets 的回应,我正在寻找 permissive 许可库(请参阅 http://en.m.wikipedia.org/wiki/Permissive_free_software_licence)。这包括例如 MIT 和 BSD 许可证,但不包括 GPL(LGPL 可能会起作用,但前提是静态链接存在例外情况)。当然,公共领域也可以。 GPL 是强烈的左版版权,这意味着即使您不更改它,而是使用单独的原始代码链接到它,该代码必须也获得 GPL 许可。
【问题讨论】:
-
请更清楚您不能使用哪些类型的 copyleft。大多数 Copyleft 许可证都是开源的。我怀疑你的意思是“公共领域”。
-
DXF 格式是否符合您的需求?因为有些库可以处理这种更简单的格式。
-
Dwg 是理想的,但是是的,我认为 dxf 可能有用。快速搜索发现 dxflib,但它也是 GPL...
-
作为记录,我查看了 libdwg 并且缺乏文档是可悲的,make 命令也失败了,没有报告任何缺少的依赖项等。我正在测试 libredwg 的转换为 svg 测试程序(在成功构建之后尽管有一些可疑的“无事可做”报告和失败的“sudo make check”)并且它声称它不支持特定文件(他们注意到[libreplanet.org/wiki/LibreDWG])可能会发生(他们希望报告错误)。我不相信它们是被忽略的解决方案许可证偏好...