从 Visual C++ 导出 U3D/PDF3D

2024-01-26

我被要求解决用 Visual C++ 编写的 CAD 应用程序在尝试将绘图导出为 PDF3D 时出现的内存使用问题。

导出特征对于简单模型或仅复杂模型的一部分表现良好,但对于整个复杂模型则不然。

我们使用 U3D sourceforge 项目来创建 U3D 对象;将其插入 PDF 后。有问题的是对象创建部分。

U3D sourceforge 项目是一个用 C++ 构建的库,也可在 C++ 中使用,该库自 2007 年以来就已消亡,文档质量很差,并且其示例集合还远远不够!在项目的TODO列表中还说明它有内存问题!

所以我被要求从两个方面来解决这个问题:

  1. 维护U3D代码。

  2. 更改应用程序与 U3D 库交互的方式。

他们还说 2. 边更好,因为它在我们的控制之下。

当我试图解决这个问题时,我得到了两个结论:

  1. 我强烈怀疑 U3D 方法 EncodeX 是造成内存误用的原因。

  2. 我尝试对应用程序与库交互的方式进行很多小更改(更改压缩参数、标志等),每次结果都是内存过度分配。

所以问题是:是否值得继续使用这个库?它的代码读起来并不愉快......或者也许出于相同目的查看其他库可能是个好主意? 我没有探索它们,但我正在认真考虑切换到 VCGlib 或 libharu...如果您知道这很好,请提出其他建议。

其他替代方案是:使用 Visual Technologies PDF3D 导出​​器,其成本不可接受,或者开发我自己的 U3D 导出​​器实现,其缺点是 U3D 功能集非常有限,而且它可能会“没有为预期的最后期限做好准备。 因此,将这些选项视为禁止的。

我真的需要帮助来决定什么是最好的。

提前致谢, 塞尔吉奥


一些评论: VCGlib - 不相关,MeshLab 依赖 VCGlib 来实现核心功能,但对于 U3D 导出​​命令行工具,使用从文本格式转换为 U3D 的工具,该工具来自 sf U3D 库。 libharu - 可以将 3D 模型嵌入到其 PDF 输出中,而不是创建模型(U3D 或 PRC 文件)。

另一种选择是输出另一种 Adob​​e 3D PDF 格式 PRC。 Acrobat SDK 具有伪代码形式的格式描述。 基于该 PRC 输出在 Asymptote 工具中实现。 如果您有兴趣,可以在 sourceforge 上找到它,并在 Asymptote 论坛上提问。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

从 Visual C++ 导出 U3D/PDF3D 的相关文章

  • 是否可以使用“pandoc”将 .tex 文件编译为 PDF?

    是否可以使用 pandoc 编译 tex 文件 我目前正在使用 MacVim 在 MultiMarkdown 中记课堂笔记 这样 当我回到家时 我就可以mmd2tex并使用 TexShop 将 tex 文件编译为 PDF 它效果很好 但这个
  • 查找可以为 C# 中的数组分配多少内存

    我正在做一些需要初始化大数组的计算 数组的最大大小决定了我能解决的问题的最大大小 有没有一种方法可以以编程方式确定有多少内存可供使用 例如可能的最大字节数组 Thanks 嗯 依赖单个大数组会带来一系列相关问题 内存碎片 连续块 最大对象大
  • C++串口问题

    我在 Visual Studio 上使用 C 连接到任何串行端口 想要与 Arduino 交换 时遇到问题 我正在使用串行类 http www arduino cc playground Interfacing CPPWindows在 Ar
  • 新显卡上的 nvoglv32.dll 中的绘制调用崩溃

    几天前 由于一些硬件更改 我设置了计算机并安装了新的 Windows 8 副本 其中 我将显卡从 Radeon HD 7870 更改为 Nvidia GTX 660 再次设置 Visual Studio 11 后 我从 Github 下载了
  • JSON 解析器从大型 JSON 文件中逐条读取

    我有一个巨大的 JSON 文件 1GB 它基本上是以下格式的对象数组 x y p q x1 y1 p1 q1 我想解析这个文件 这样所有的数据都不会加载到内存中 基本上我想获取例如 数组中的前 1000 个对象进行内存处理 然后将接下来的
  • 从图像创建 PDF 时设置文档名称

    我使用以下代码从 jpg 图像创建 pdf im new Imagick im gt readImage image jpg im gt setImageFormat pdf im gt writeImage images pdf imag
  • 如何使用 microsoft Visual C++ 编写调用 JNI 的代码 [关闭]

    很难说出这里问的是什么 这个问题是含糊的 模糊的 不完整的 过于宽泛的或修辞性的 无法以目前的形式得到合理的回答 如需帮助澄清此问题以便重新打开 访问帮助中心 help reopen questions 我如何编写C代码microsoft
  • 如何将tchar指针转换为char指针

    我想将 tchar 转换为 char 这可能吗 如果是的话该怎么做 我使用unicode设置 A TCHAR要么是一个普通的char or a wchar t取决于您的项目的设置 如果是后者 您需要使用WideCharToMultiByte
  • 如何在 Visual C++ 中读取版本资源

    我在 C 项目的资源中有一个版本资源 其中包含版本号 版权和构建详细信息 有没有一种简单的方法可以在运行时访问它来填充我的帮助 关于对话框 因为我目前正在维护此信息的单独常量值 理想情况下 该解决方案应适用于 Windows CE mobi
  • 在 Swift 中从 UIScrollView 创建 PDF 文件

    我想从 UIScrollView 的内容创建一个 PDF 文件 func createPdfFromView aView UIView saveToDocumentsWithFileName fileName String let pdfD
  • 文本挖掘 pdf 文件/词频问题

    我正在尝试挖掘一篇具有丰富 pdf 编码和图表的文章的 pdf 我注意到 当我挖掘一些 pdf 文档时 我得到的高频词是 phi taeoe toe sigma gamma 等 它与某些 pdf 文档配合良好 但与其他文档配合使用时却得到这
  • 旋转 Markdown 的表格 pdf 输出

    我想将 pdf 上的表格输出旋转 90 度 我正在使用 Markdown 生成报告并kable循环显示表格 如果可以的话我想继续使用kable因为还有很多其他依赖于它的东西我没有包含在这个 MWE 中 这是一个简单的例子 使用iris数据集
  • 指针和内存范围

    我已经用 C 语言编程有一段时间了 但对 C 语言还是很陌生 有时我对 C 处理内存的方式感到困惑 考虑以下有效的 C 代码片段 const char string void where is this pointer variable l
  • 对于多重继承,使用隐式转换而不是 QueryInterface() 是否合法?

    假设我有一个类实现两个或多个 COM 接口 正如here https stackoverflow com questions 1742848 why exactly do i need an explicit upcast when imp
  • 使用 PHP/linux 将文件合并为单个 PDF

    我正在研究如何将多个 PDF 合并为一个 PDF 我正在寻找一个图书馆可靠且坚固尽可能 最好有一个库可以保留书签 鬼脚本 http pages cs wisc edu ghost 可以在保存书签的位置进行连接 但我遇到了麻烦 在一种情况下它
  • MFC 中标题栏上的关闭按钮

    在基于 Vc 6 0 对话框的 MFC 应用程序中 我不希望我的用户通过按窗口本身右上角的按钮 X 以及 Alt F4 来关闭窗口 我想显示一个消息框 你真的想关闭应用程序吗 如果用户单击 确定 按钮 则应用程序必须关闭 否则 如果用户单击
  • 如何在iOS中查找文本段范围

    如何在 iOS 中找到文本段 又名代码段 范围 意思是 文本段的起始地址和结束地址是多少 I found 这个有趣的帖子 http www pschweitzer fr p 12但它适用于 Android 但不适用于 iOS 经过一些挖掘和
  • 如何将pdf页面设置设置为打印属性对话框?

    大家好 我想知道如何设置 pdf 页面设置到打印属性对话框 例如 如果我的 PDF 页面设置为横向 则布局会自动显示横向而不是纵向 如果我的 PDF 页面设置为纵向 则布局会自动显示纵向 我在这个主题上做了很多研发 但没有找到任何满意的链接
  • 将文本从文本文件添加到 PDF 文件[重复]

    这个问题在这里已经有答案了 这是我的代码 using FileStream msReport new FileStream pdfPath FileMode Create step 1 using Document pdfDoc new D
  • IE 中的 Google 文档查看器

    我到处寻找解决方案 但找不到 我在用着谷歌文档查看器 https drive googleblog com 2009 09 view online files using google docs html查看 PDF 文件 这是一个很棒的工

随机推荐