Paraview python 中的 SaveData 未保存文件
SaveData in Paraview python is not saving the file
我用了一个stl文件,用Paraview分割了stl。我在 paraview 中使用 python trace 跟踪方法。
现在,我用python中的代码来运行了。它 运行 非常完美,但它不会根据需要保存分割后的网格。根据从 paraview 获得的跟踪使用代码。下面是使用 SaveData 保存文件的代码片段。如何保存stl文件?
import sys #sys- append path
import numpy as np
ParaViewBuildPath = "/home/ParaView-5.7.0/"
sys.path.append(ParaViewBuildPath + "lib/")
sys.path.append(ParaViewBuildPath + "lib/python3.7/site-packages")
sys.path.append(ParaViewBuildPath + "lib/python3.7/site-packages/vtkmodules")
from paraview.simple import *
import vtk
# find source
mesh176_rightstl = FindSource('mesh176_right.stl')
generateSurfaceNormals1 = GenerateSurfaceNormals(Input=mesh176_rightstl)
# Properties modified on generateSurfaceNormals1
generateSurfaceNormals1.FeatureAngle = 15.0
# create a new 'Connectivity'
connectivity1 = Connectivity(Input=generateSurfaceNormals1)
# create a new 'Threshold'
threshold1 = Threshold(Input=connectivity1)
#threshold1.Scalars = ['POINTS', 'RegionId']
# Properties modified on threshold1
threshold1.ThresholdRange = [10.0, 982.0]
# create a new 'Extract Surface'
extractSurface1 = ExtractSurface(Input=threshold1)
# save data
SaveData('surf176.stl', proxy=extractSurface1, FileType='Ascii')
我已经解决了我在“generateSurfaceNormals1”行遇到的错误。
[paraview]vtkDemandDrivenPipeline:713 ERR| vtkPVCompositeDataPipeline (0x556f782fe7c0): 算法vtkPPolyDataNormals(0x556f7a16b2a0)的输入端口0有0个连接但不是可选的。
如何克服这个错误?
任何潜在客户将不胜感激。
此致,
Sunag R A.
错误信息的意思是mesh176_rightstl
是None,所以FindSource
没有找到任何东西。来源名称是否正确?数据是否正确加载?
由于出现错误,脚本停止且未调用 SaveData
。但它的语法是正确的。
测试 stl 编写器的最少代码:
s = Sphere()
SaveData('sphere.stl', proxy = s, FileType='Ascii')
它使用 ParaView 5.9 正确生成 stl 文件
编辑
你应该取消注释行
#threshold1.Scalars = ['POINTS', 'RegionId']
因为直到您要求(例如使用 SaveData)才会执行管道,因此在您创建阈值时找不到默认数组。
我用了一个stl文件,用Paraview分割了stl。我在 paraview 中使用 python trace 跟踪方法。
现在,我用python中的代码来运行了。它 运行 非常完美,但它不会根据需要保存分割后的网格。根据从 paraview 获得的跟踪使用代码。下面是使用 SaveData 保存文件的代码片段。如何保存stl文件?
import sys #sys- append path
import numpy as np
ParaViewBuildPath = "/home/ParaView-5.7.0/"
sys.path.append(ParaViewBuildPath + "lib/")
sys.path.append(ParaViewBuildPath + "lib/python3.7/site-packages")
sys.path.append(ParaViewBuildPath + "lib/python3.7/site-packages/vtkmodules")
from paraview.simple import *
import vtk
# find source
mesh176_rightstl = FindSource('mesh176_right.stl')
generateSurfaceNormals1 = GenerateSurfaceNormals(Input=mesh176_rightstl)
# Properties modified on generateSurfaceNormals1
generateSurfaceNormals1.FeatureAngle = 15.0
# create a new 'Connectivity'
connectivity1 = Connectivity(Input=generateSurfaceNormals1)
# create a new 'Threshold'
threshold1 = Threshold(Input=connectivity1)
#threshold1.Scalars = ['POINTS', 'RegionId']
# Properties modified on threshold1
threshold1.ThresholdRange = [10.0, 982.0]
# create a new 'Extract Surface'
extractSurface1 = ExtractSurface(Input=threshold1)
# save data
SaveData('surf176.stl', proxy=extractSurface1, FileType='Ascii')
我已经解决了我在“generateSurfaceNormals1”行遇到的错误。
[paraview]vtkDemandDrivenPipeline:713 ERR| vtkPVCompositeDataPipeline (0x556f782fe7c0): 算法vtkPPolyDataNormals(0x556f7a16b2a0)的输入端口0有0个连接但不是可选的。
如何克服这个错误?
任何潜在客户将不胜感激。
此致, Sunag R A.
错误信息的意思是mesh176_rightstl
是None,所以FindSource
没有找到任何东西。来源名称是否正确?数据是否正确加载?
由于出现错误,脚本停止且未调用 SaveData
。但它的语法是正确的。
测试 stl 编写器的最少代码:
s = Sphere()
SaveData('sphere.stl', proxy = s, FileType='Ascii')
它使用 ParaView 5.9 正确生成 stl 文件
编辑
你应该取消注释行
#threshold1.Scalars = ['POINTS', 'RegionId']
因为直到您要求(例如使用 SaveData)才会执行管道,因此在您创建阈值时找不到默认数组。