vcg.edge.EEAdj

vcg.edge.EEAdjpython-vcg库中的一个类,用于表示三维几何中的边缘连接,该连接连接两个具有共同边缘的相邻面。这个类表示了边缘之间的邻接关系。

方法

add(e, idx)

将新的邻接边界添加到相邻列表中,同时还可以指定要添加的边界的索引。

参数:

  • e:边界对象
  • idx:边界索引

remove(v)

从相邻边界列表中删除指定边界。

参数:

  • v:要删除的边界对象

find(e)

查找指定的邻接边缘。

参数:

  • e:要查找的边缘对象

返回:

  • 找到的邻接边缘对象。如果未找到,则返回 None

neighbours()

获取所有邻接边界的列表。

返回:

  • 包含所有邻接边界对象的列表。

属性

neigh

包含相邻边界的列表。

indices

包含相邻边界的索引。

示例代码

import vcg

# 创建两个三角形面
f1 = vcg.Face(
    vcg.Vertex(0, 0, 0),
    vcg.Vertex(0, 1, 0),
    vcg.Vertex(1, 0, 0)
)
f2 = vcg.Face(
    vcg.Vertex(1, 0, 0),
    vcg.Vertex(0, 1, 0),
    vcg.Vertex(1, 1, 0)
)

# 在两个面之间插入一条边
e = f1.add_edge(f2)

# 获取边的邻接关系
adj = e.adj

# 添加第三个面并计算邻接关系
f3 = vcg.Face(
    vcg.Vertex(1, 1, 0),
    vcg.Vertex(0, 1, 0),
    vcg.Vertex(1, 0, 1)
)
f3.add_edge(f2)

# 将第三个面的边添加到邻接关系中
adj.add(e, 2)
print(adj.neigh)  # 输出 [f2, f1]