vcg.face.VertexRef表示面的一个顶点。
idx: int
,表示该顶点在vcg.mesh.Mesh.vertices
数组中的索引。该类继承自Python内置的tuple
类,因此除了__init__()
方法外,还包含一些内置方法。
__init__(self, idx: int)
,构造函数,创建一个表示面上某个顶点的对象。idx
参数为该顶点在vcg.mesh.Mesh.vertices
数组中的索引。__getitem__(self, index: int)
,获取该对象中某个元素的值。index
为元素的索引,取值为0或1。__eq__(self, other: vcg.face.VertexRef)
,比较两个对象是否相等,即两个对象idx
属性是否相等。import vcg
# 构造一个含有3个顶点的三角形
mesh = vcg.Mesh()
vertices = mesh.vertices
vertices.append(vcg.Point3f(-1, -1, 0))
vertices.append(vcg.Point3f(1, -1, 0))
vertices.append(vcg.Point3f(0, 1, 0))
face = mesh.faces.add([0, 1, 2])
# 访问三角形的某个顶点
v0 = face[0] # v0为一个vcg.face.VertexRef对象
print(v0.idx) # 输出该顶点在vertices数组中的索引
# 比较两个顶点是否相等
v1 = face[1]
v2 = face[2]
print(v0 == v1) # 输出False
print(v1 == v2) # 输出False
print(v1 == vcg.face.VertexRef(1)) # 输出True