android - 在 Android 中动态创建 3D 对象

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

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

give depth to a 2D shape

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

最佳答案

这里有两个相互关联的方面:您如何表示 2D 图像,因此您打算如何将其拉伸(stretch)成 3D,然后,您打算如何为 3D 打印机写出您的 3D 模型。后者我想你会想要一个 STL 文件。

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

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

关于android - 在 Android 中动态创建 3D 对象,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21990137/

相关文章:

安卓 : how to browse page in the same activity à la iPhone

android - 添加语言到android模拟器

c++ - OpenCV detectMultiScale() 参数的推荐值

c++ - Mat.Depth() Opencv

android - 将Java版本从8升级到11以使用jenkins构建apk

javascript - 屏幕变化时的 React-navigation 调用功能

python - 如何在 django api 中获取图像的响应,在 base64 中编码后?

c - 如何为 GLSL 中的不同结构成员定义不同的限定符?

c++ - 为什么在 OpenGL ES 2.0 中不需要 push/pop 矩阵等价?

ios - OpenGL ES 渲染三角形网格 - iPhone 中的黑点和模拟器中的完美图像