将2D图像转换为3D

时间:2015-06-10 21:00:58

标签: python r 3d

我试图通过围绕轴旋转2D图像(如圆圈到球体)将2D图像转换为3D。 目前我的问题是假设我在一个变量中有两个函数f(x)和g(x)。我希望绘制函数图并使用旋转来获取3D图。基于3D图,我将区分两者。

我认为一种方法可能是在旋转后以新的函数数学方式计算出精确的表达式,但对于不那么合理的函数来说,这在计算上是不可行的。 有人可以建议使用合适的软件来做到这一点吗?

1 个答案:

答案 0 :(得分:1)

您可以使用R中的rgl包(openGL接口)和turn3d函数

来执行此操作
## Define a function (ys must be positive, we are spinning about x-axis)
f <- function(x) 2*exp(-1/2*x) * (cos(pi*x) + sin(pi*x)) + 2
xs <- seq(0, 10, length=1000)
plot(xs, f(xs), type="l")

enter image description here

## Rotate about the x-axis
library(rgl)
res <- turn3d(xs, f(xs))
plot3d(res, alpha=.5)
snapshot3d("temp.png")

enter image description here