好吧,标题几乎说明了这一点。我希望能够在 Web GL 的表面上绘制曲线。例如,我想在球体表面画一条抛物线。
x = cos(theta)sin(phi); y = sin(theta)sin(phi); z = cos(phi)。
如果使 theta = theta(t) 和 phi = phi(t),则可以在曲面上绘制曲线。
我想形状上的线条是我需要的。任何人都知道这在 Web GL 中是否可行?
好吧,标题几乎说明了这一点。我希望能够在 Web GL 的表面上绘制曲线。例如,我想在球体表面画一条抛物线。
x = cos(theta)sin(phi); y = sin(theta)sin(phi); z = cos(phi)。
如果使 theta = theta(t) 和 phi = phi(t),则可以在曲面上绘制曲线。
我想形状上的线条是我需要的。任何人都知道这在 Web GL 中是否可行?
抛物线是平面上与一条线和一个点(称为焦点)具有相同距离的点的集合。这里的重点是球体上的“线”是什么意思。请记住,抛物线延伸到无穷大,但您不能在球体上这样做,除非您在其上定义一些特定的度量。
无论如何,您使用了球体的参数化,在 theta 和 phi 方面。那挺好的。如果要在曲面上定义曲线,则应在 theta 和 phi 之间绑定,例如
phi = theta ^ 2
会以某种方式绘制可以定义为“抛物线”的东西,即在球体上的投影,由参数化给出,它在平面上的表示。
您是否正在寻求有关如何在 WebGL 中执行此操作的帮助?在这种情况下,看看这个例子
您基本上会将位置加载到向量中,并使用带有 LINELOOP 的 drawArrays 或其他东西来绘制它...有关参数,请参阅此备忘单或谷歌 drawArrays 函数以获取更多信息:
http://www.nihilogic.dk/labs/webgl_cheat_sheet/WebGL_Cheat_Sheet.pdf
祝你好运!