【问题标题】:Is it possible to model polar coordinates in WebGL是否可以在 WebGL 中建模极坐标
【发布时间】:2012-12-06 22:26:17
【问题描述】:

我想将一组坐标转换为极坐标(最简单的部分),然后在极坐标 3D 网格上对其进行建模。是否可以使用 WebGL 或仅支持笛卡尔坐标?

【问题讨论】:

    标签: webgl cad polar-coordinates


    【解决方案1】:

    您可以在着色器中实现任何类型的坐标变换。但是,有一个重要的限制:

    如果您绘制两个相连的顶点(即一条直线,或三角形的边),结果将始终是屏幕上的一条直线 - 在其他情况下是不可能的OpenGL。

    笛卡尔极坐标变换将直线变为曲线。这意味着,如果您想转换一个直边形状并获得“正确”的弯曲结果,您必须使用一系列紧密间隔的顶点来绘制它——只要您需要产生平滑曲率的“分辨率”就可以了想。这通常不难编程,但需要注意。

    【讨论】:

    • 在 GL 中还有其他的绘图方式。见research.microsoft.com/en-us/um/people/cloop/loopblinn05.pdf
    • 我不仅要输入极坐标,还要使用它们进行变换。我会省略平移转换,并从本质上重新定义转换矩阵。这可能吗?
    • 除非我误解了你想要什么:是的。这一切都只是算术,并且对于您可以在着色器中执行哪种算术没有任何限制。
    • 非常适合旋转,它的所有矩阵乘法。我想将变换矩阵从旋转笛卡尔坐标的变换矩阵变为旋转极坐标的变换矩阵
    • 完全不需要使用矩阵。
    【解决方案2】:

    您可以在 webgl 中使用着色器,这样您就可以将输入作为极坐标提供,并让 webgl 在内部将它们转换为笛卡尔坐标。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2013-04-10
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2023-03-30
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多