首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >查看汽缸的内部

查看汽缸的内部
EN

Stack Overflow用户
提问于 2012-07-11 08:20:00
回答 2查看 1K关注 0票数 0

如果我画一个顶部有一个gluCylindergluDisk。没有选择启用,我得到了想要的汽缸盖效果。但是,如果我启用了剔除,磁盘(也称为盖子)消失了。,为什么?,这是主要问题。此外,有了裁剪功能,气缸的背面也不会被画出来。我知道为什么会发生这种情况,但我仍然希望看到缸内画出。守则是:

代码语言:javascript
复制
    glPushMatrix()
    quadratic = gluNewQuadric()
    gluQuadricNormals(quadratic, GLU_SMOOTH)
    gluQuadricTexture(quadratic, GL_TRUE)
    glRotatef(90, 1, 0, 0)
    glTranslate(0, 0, -3*sz)
    gluCylinder(quadratic, 0.75*sz, 0.75*sz, 3.0*sz, 32, 32)
    gluDisk(quadratic, 0.0, 0.75*sz, 32, 32)
    glPopMatrix()
EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2012-07-11 09:53:21

你的磁盘朝向错误的方向(错误的绕组)。因此,它被剔除了。您可以尝试使用gluQuadricOrientation来逆转它的方向,这应该是可行的。有关更多信息,请参阅OpenGL规范中的gluDiskglCullFace

票数 4
EN

Stack Overflow用户

发布于 2012-07-11 09:57:16

圆盘只是一个没有任何厚度的平面。因此,一边是前面,另一个是回来,并与剔除启用,其中一个被剔除。你可能只是看到了被淘汰的一方。如果这不是你想看到的一面,只需旋转磁盘。没有比这更好的了。所以把它包装成一个:

代码语言:javascript
复制
glPushMatrix();
glRotatef(180.0f, 0.0f, 1.0f, 0.0f);
gluDisk(quadratic, 0.0, 0.75*sz, 32, 32);
glPopMatrix();

或者,就像kroneml建议的那样,改变它的三角形的方向。自己决定哪一个在你的情况下在概念上更正确。

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

https://stackoverflow.com/questions/11428408

复制
相关文章

相似问题

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