surfacemesh.py 文件源码

python
阅读 36 收藏 0 点赞 0 评论 0

项目:hexmachina 作者: dnkrtz 项目源码 文件源码
def compute_normals(self):
        """Compute vertex and face normals of the triangular mesh."""

        # Compute face normals, easy as cake.
        for fi, face in enumerate(self.faces):
            self.face_normals[fi] = np.cross(self.vertices[face[2]] - self.vertices[face[0]],
                                             self.vertices[face[1]] - self.vertices[face[0]])

        # Next, compute the vertex normals.
        for fi, face in enumerate(self.faces):
            self.vertex_normals[face[0]] += self.face_normals[fi]
            self.vertex_normals[face[1]] += self.face_normals[fi]
            self.vertex_normals[face[2]] += self.face_normals[fi]

        # Normalize all vectors
        for i, f_norm in enumerate(self.face_normals):
            self.face_normals[i] = normalize(f_norm)
        for i, v_norm in enumerate(self.vertex_normals):
            self.vertex_normals[i] = normalize(v_norm)
评论列表
文章目录


问题


面经


文章

微信
公众号

扫码关注公众号