我正在使用QGLWidget绘制3-D对象,程序的输入是形状的面孔。

这意味着当我想绘制一个立方体时,我得到了6个元素的列表,每个元素代表一个面,每个面包含4个点,每个点包含(x,y,z)。

绘制完成了,但是我正在尝试实现横截面功能,到目前为止,横截面之后的结果形状是空心物体,如何获得横截面结果,就好像形状没有被挖空一样?

最佳答案

OpenGL不知道“对象”。它不知道“实心”或“空心”。 OpenGL所知道的只是点,线和三角形。如果要使对象显示为实体,则必须计算切掉的对象的几何形状,从而生成一个新的网格,将其用作绘图的输入数据。

切掉过程是称为“ bool 几何运算”的一组操作的一部分,“ bool 几何运算”也被称为“构造实体几何”。如果您使用Google进行搜索,则会发现大量信息。

08-16 10:34