如何使用Python绑定在ITK中创建网格对象?

时间:2011-09-28 13:54:11

标签: python itk

我正在尝试在Python中创建一个Mesh对象。我正在使用从以下web page安装的python绑定。就c ++代码而言,我们可以按照以下方式执行此操作

      MeshType::Pointer mesh = MeshType::New();

即使是ITK,我也很陌生。不知道如何创建它。在c ++文档中Mesh的构造函数中,它表示一个必要的参数,即TPixelType。也无法找到它。

有人可以用这个来帮助我。

由于

1 个答案:

答案 0 :(得分:2)

如果我是你,我会看一下ITK 4.0附带的Python绑定。您可以通过启用cmake中的选项WRAP_ITK_PYTHON来访问它们。

有一次,你在打开python绑定的情况下编译ITK,你可以创建2个开箱即用的网格类型:

import itk
meshType2D = itk.Mesh.D2Q.New()
meshType3D = itk.Mesh.D3Q.New()

或者您可以按如下方式显式实例化您的类:

import itk
meshType2D = itk.Mesh[itk.D, 2, itk.QuadEdgeMeshTraits.D2BBFF]
meshType3D = itk.Mesh[itk.D, 3, itk.QuadEdgeMeshTraits.D3BBFF]

这将为您提供具有默认网格特征的双重类型像素值的2维和3维网格。至于ITK中的像素类型,它们相当于基本的C ++变量类型:double,float,unsigned int等。这些基本类型包含在python中,可以在ITK名称空间中找到:itk.D,itk.F ,itk.UI等。