【问题标题】:Taking screeenshots from a 3d model从 3d 模型中截取屏幕截图
【发布时间】:2016-02-22 07:56:28
【问题描述】:

我正在构建一个执行两个步骤的应用程序: 1 - 导入 3d 彩色图像文件(例如 .3ds 文件),然后自动捕获屏幕截图,然后将形状旋转一个很小的角度(例如 1 度)并捕获另一个屏幕截图,依此类推,直到一个完整的旋转。我可以使用 MATLAB 和 .stl 文件 Taking images of 3D model using STLRead 做类似的事情,但 .stl 文件不携带 3ds 文件等颜色信息的问题。 2 - 然后将截取的屏幕截图进行径向排序(在圆形路径上均匀排序)并生成最终图像。

我可以使用我之前提到的任何其他程序来获得相同的结果。我不受 .3ds 文件扩展名的限制,可以使用任何 3d 图像文件并使用 c++ 而不是 MATLAB。 任何建议表示赞赏。 塞缪尔·法里德

【问题讨论】:

  • 将所有带有颜色信息的点坐标读取到一个Matrix中,然后用scatter3显示内容。然后您可以从视角旋转相机位置并将视图保存为框架。现在,您甚至可以使用这些帧集来制作电影。
  • 如何从 .3ds 文件中实现这一点? scatter3 是否会提供与 3ds max 相同的精度和视图?
  • 我不知道,因为我从未导入过 .3ds 文件。刚看到这个(mathworks.com/matlabcentral/fileexchange/3642-cad2matdemo-m)。 Scatter3 仅绘制点,您可能还需要一种绘制曲面的方法。如果您能提供一个简单的 .3ds 文件,我们可能会尝试。

标签: c++ matlab image-processing stl 3d


【解决方案1】:

这是一个非常广泛和通用的问题。它需要我们教你如何加载一个 .3ds 文件,这绝非易事,我一年前写的,它在 1800 多行代码中加载了基础知识。然后编写代码来显示带有颜色的模型,以及捕获图像的代码,以及旋转数学(简单的东西)。据我所知,3D 软件 (3D Studio Max) 曾经能够在内部为您执行此操作并将它们渲染为编号文件。可能要调查的东西。老实说,我相信这是您最好的选择。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2021-12-13
    • 2014-09-26
    • 2014-01-22
    • 1970-01-01
    • 1970-01-01
    • 2017-05-05
    • 1970-01-01
    • 2012-03-10
    相关资源
    最近更新 更多