如何在opengl中渲染横截面

时间:2015-01-21 04:50:31

标签: opengl clipping

我试图使用OpenGL获取模型的横截面。具体来说,我想将横截面视图投影到2D平面上。 (例如,如果我要切割一个零厚度和一些有限长度的管道,从上到下垂直,我的输出应该是2D视图中的圆圈。)

我理解glClipPlane()有效,但我的理解是该函数沿着平面切割模型,而不是投影切片。有没有办法在OpenGL中实现我想要的东西?

1 个答案:

答案 0 :(得分:3)

glClipPlane的作用是什么,它只是丢弃在其后面渲染的任何像素。

没有开箱即用的方法来填充模型的“内部”,因为没有办法知道应该在哪里,特别是如果你还记得,OpenGL只是一个渲染猴子交易用三角汤。模型组合是一种更高级别的抽象,需要由您的应用程序处理。

您需要自己构建覆盖横截面的多边形。要做到这一点,您可能需要一些提供3D布尔操作和曲面重建的库。

应该有一些体积3D渲染API,类似于基于体素的等等,但是使用它们可能会更加令人头疼。