我使用SketchUp C ++ API编写代码,该API适用于SketchUp 8文件。 Trimble已将其替换为C API,SketchUp 2013导出的文件只有较新的C API才能打开。
解决方案是将代码移植到新的C API。但是,由于其他原因,我有点紧张,所以我很想知道其中一个临时解决方案是否已经可用,即是否有人已实施其中一个:
a)C API中以SketchUp 8格式保存的函数。这将让我创建一个小的二进制文件,打开SKP 2013文件,将其另存为SKP 8,并继续使用C ++代码更长时间,因为它只读取SKP 8文件。 ruby API不支持此“另存为SKP 8”电话。
b)使用较新的C API解析SKP结构的代码,然后使用不推荐的C ++ API重新创建它,然后可能以SketchUp 8格式保存。有没有人实现过这个?这可以作为现有C ++代码的适当前端,直到它可以正确移植。我意识到编写本文所需的工作主要是简单地移植到更新的API所需的工作,但如果有人已经实现了这一点,那将是有用的。
感谢您的帮助。
答案 0 :(得分:3)
要回答A部分:不,新的SketchUp API不允许您在保存时选择SketchUp版本。目前无法通过API执行此操作。
对于B部分,我不知道有谁做过这个,虽然这是一个有趣的想法。这项工作很重要,因为你必须映射从C API到C ++ API的所有内容,但是你可以有效地从SU2013转换为SU8。
请务必阅读SketchUp 2013 SDK中的迁移指南文档,该文档说明如何移植任何SU8导入程序和导出程序,而无需移植到C API。
另外,您应该知道的一件事是我们最近使用SkpReader版本更新了SDK,该版本实际上将读取SU2013 SKP文件。这可能会为您解决问题。
祝你好运,
保