在 WebGL 中的曲面上绘制曲线

Drawing Curves on Surfaces in WebGL

本文关键字:绘制 曲线 曲面 WebGL      更新时间:2023-09-26

嗯,标题几乎说明了它。 我希望能够在Web GL的表面上绘制曲线。 例如,我想在球体的表面上画一条抛物线。

x = cos(theta)sin(phi); y = sin(

theta)sin(phi); z = cos(phi)。

如果使θ = theta(t)和phi = phi(t),则可以在表面上绘制曲线。

我想形状上的线条是我需要的。 有人知道这在Web GL中是否可行吗?

抛物线是平面上与直线和点(称为焦点)具有相同距离的点集。这里的重点是球体上的"线"是什么意思。请记住,抛物线延伸到无穷大,但你不能在球体上这样做,除非你在上面定义一些特定的度量。

无论如何,你使用了球体的参数化,在θ和phi上。很好。如果要在曲面上定义曲线,则应在θ和phi之间有一个绑定,例如

phi = theta ^ 2

将以某种方式绘制可以定义为"抛物线"的东西,即通过参数化给出的球体上投影其在平面上的表示。

您是否正在寻找有关如何在 WebGL 中执行此操作的帮助?在这种情况下,请看这个例子

http://dl.dropbox.com/u/17612367/OpenGL%20to%20WebGL/example%202.3.1%20-%20line%20graph/code/index.html

你基本上会把位置加载到一个向量中,然后使用带有 LINELOOP 或其他东西的 drawArray 来绘制它......请参阅此备忘单以获取参数或谷歌 drawArrays 函数以获取更多信息:

http://www.nihilogic.dk/labs/webgl_cheat_sheet/WebGL_Cheat_Sheet.pdf

祝你好运!