vtktriangle使用python从任意点计算法线

时间:2017-05-16 13:24:16

标签: python-2.7 vtk

我正在为VTK使用python包装。我希望我的脚本让用户选择三个任意点并返回一个带有正常信息的三角形。在VTK VTK Triangle引用中有vtkTriangle :: ComputeNormal(double v1 [3],double v2 [3],double v3 [3],double n [3])。 我检查了关于vtkTriangle的Cxx实现示例,但是,我不了解如何在Python中实现它。 n [3]代表正常吗?如果是这样,它应该作为输入参数?

@ g.stevo我明白了。但是,当我给出一个随机值时,ComputeNormal方法返回None。为了更清楚,您可以在下面找到相关代码的片段:

`p0 = trianglePolyData.GetPoints().GetPoint(0)
 p1 = trianglePolyData.GetPoints().GetPoint(1)
 p2 = trianglePolyData.GetPoints().GetPoint(2)
 print vtk.vtkTriangle().TriangleArea(p0,p1,p2)
 n=[0.0,0.0,0.0]
 print vtk.vtkTriangle().ComputeNormal(p0,p1,p2,n)`

1 个答案:

答案 0 :(得分:0)

您的代码正常运行。您要查找的结果是在数组n中。根据{{​​3}},函数ComputeNormal返回void。

试试这个:

n=[0.0,0.0,0.0]
vtk.vtkTriangle().ComputeNormal(p0,p1,p2,n)
print n