有什么方法在OpenGL中呈现多个实体切割平面吗?
用实心的“切割平面”,我指的是一个平面,它把网格的一部分剪掉,然后用实心的颜色填充这个洞。这给人的印象是网格是坚实的,而不仅仅是一个外壳。
使用单个切割平面呈现这一点的经典方法是拒绝平面不可见侧的样本,然后使用模板缓冲区来计算剩余网格中的前面和后面的数量。
但是,我不知道如何将算法扩展到多个切割平面上。例如,就像这个案例:
e
___
/ \
| A |
| |
----------- a
| C |
| |
----------- b
| B |
| |
我正在尝试将一个无向树划分为两个子树,每个子树都是连接的。我的理解是,这可以使用中描述的Fiedler向量来完成。然而,当我按照这个过程进行操作时,得到的子树是不相连的。
我用来实现二等分的代码如下所示,没有二等分的树被定义为。
import networkx as nx
from itertools import compress
g = nx.from_dict_of_dicts(broken_g)
def split_graph(graph):
"""Split a graph into two pieces using the Fiedler vec