【问题标题】:Dynamically creating a 3D object in Android在 Android 中动态创建 3D 对象
【发布时间】:2014-03-26 06:08:27
【问题描述】:

我的项目正处于艰难时刻,不知道如何进一步推进:
我已经使用 openCV 在照片中识别出一个对象,我想为其添加深度 - 目前与现实世界的测量无关。
我想增加深度,以便之后将构造的形状发送到 3D 打印机。
无论如何在使用opencv的Android中这样做吗?再一次,这不是 3D 重建 - 我有一张照片,我只想为对象提供深度,如下所示:

我想通过在自身上多次放置相同的 2D 形状来做到这一点,它会给出“深度”..
有什么建议?我应该使用哪些库?

【问题讨论】:

  • 大声笑,你想要 3D 重建而不做任何工作;)
  • 生成的 3D 对象是否总是立方体对象?
  • @RuiMarques 这将是一个金字塔/立方体/两者的组合......某种“对称”的东西,它只需要获得一些深度。 berak - 这不是我的错,这是 3D 重建中更容易的部分 :)

标签: android opencv opengl-es 3d printer-control-language


【解决方案1】:

这里有两个相互关联的方面:您如何表示您的 2D 图像,以及您打算如何将其挤压成 3D,然后,您计划如何为 3D 打印机写出您的 3D 模型。后者我想你会想要一个 STL 文件。

在直接从 Android/Java 编写 STL 文件方面似乎没有很多,但 http://www.printingin3d.eu/javascad 看起来很有希望。老实说,我没有使用过该库或进行任何 3D 打印,但我知道关于如何构建对象可能有一些规则,以确保在打印时可以正确“切片”。因此,这可能会影响您构建 2D 对象的方式。

回到挤压——你如何握住你的 2D 对象;它是一系列(x,y)点吗?如果是这样,那么一种方法是将多边形拆分为三角形(即创建一个网格),然后通过拉长 z 轴将它们转换为 3D 对象以获得一系列棱镜。然后,您可以将所有这些对象添加到一个集合中,并使用 javascad 将它们作为 STL 文件写出。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-12-17
    • 1970-01-01
    • 1970-01-01
    • 2012-09-07
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多