0

下午好,我正在尝试在 Python 脚本中使用 Paraview 的过滤器“Plot Over Line”。基本上,我想:

  • 打开文件“.vtu”;
  • 使用过滤器 PlotOverLine 作为速度;
  • 将数据保存在“.csv”文件中。

在互联网上,我找到了一种可能的方法,但如果使用 pvpython 运行它会出错(即使在命令前使用“简单”一词):

from paraview import simple
import csv

flow = GetActiveSource()

plotOverLine1 = PlotOverLine(Input=flow, Source='High Resolution Line Source')

passArrays1 = PassArrays(Input=plotOverLine1)
passArrays1.PointDataArrays = ['U']

plotOverLine1.Source.Point1 = [0, 0, 0]
plotOverLine1.Source.Point2 = [0, 0.4, 0]
writer = CreateWriter('data.csv')
writer.UpdatePipeline()
4

1 回答 1

0

首先,您可以在这里报告您的错误。

正如您所建议的,您的脚本无法按原样运行,您应该将导入更改为from paraview.simple import *.

此外,您的作者没有明确的输入。我建议使用CreateWriter(filename='path', input=myInput), 或者,对于一次性写入,SaveData(filename='path', input=myInput).

最后,生成此类脚本的一种方法是使用Tools / Start Trace菜单选项(使用默认配置)。然后在界面中执行操作。最后Tools / Stop Trace给你对应你的动作的python脚本。

于 2020-12-15T08:22:03.110 回答