首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >我怎么画一个半圆环?

我怎么画一个半圆环?
EN

Stack Overflow用户
提问于 2009-06-26 21:59:08
回答 2查看 4.8K关注 0票数 1

我从网上的教程中自学OpenGL游戏编程。我想画一个半圆环,这样它看起来就像一个入口。我该怎么做呢,有没有人知道其中的数学原理?大多数在线教程都展示了如何绘制完整的圆环。

EN

回答 2

Stack Overflow用户

发布于 2009-07-16 23:50:19

以下是适应OpenGL Redbook torus.c tutorial的答案

下面是他们绘制圆环的代码:

代码语言:javascript
运行
复制
static void torus(int numc, int numt)
{
   int i, j, k;
   double s, t, x, y, z, twopi;

   twopi = 2 * PI_;
   for (i = 0; i < numc; i++) {
      glBegin(GL_QUAD_STRIP);
      for (j = 0; j <= numt; j++) {
         for (k = 1; k >= 0; k--) {
            s = (i + k) % numc + 0.5;
            t = j % numt;

            x = (1+.1*cos(s*twopi/numc))*cos(t*twopi/numt);
            y = (1+.1*cos(s*twopi/numc))*sin(t*twopi/numt);
            z = .1 * sin(s * twopi / numc);
            glVertex3f(x, y, z);
         }
      }
      glEnd();
   }
}

它所做的是绘制一个旋转的体积。你可以使用同样的想法,除了中途停止这个循环(即for(i = 0; i < numc/2; i++) )

票数 3
EN

Stack Overflow用户

发布于 2009-07-06 15:08:55

适当地设置一个clip plane (0,0,1,0应该起作用,假设+Z是‘向上’),并绘制一个完整的圆环。

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/1051453

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档