我从一组vtk演员开始我试图将每个演员的vtk polydata传递给一组python变量(每个演员一个)作为一个字符串,就像它在遗产中格式化一样。稍后由ipython笔记本中的three.js使用的vtk文件。
我找到了使用vtkPolydataWriter编写.vtk文件的示例,但没有任何内容只是捕获正在写入的字符串。
任何示例(特别是在python中)都会有所帮助
这是我开始的一个例子:
import vtk
# Create source
source = vtk.vtkSphereSource()
source.SetCenter(0, 0, 0)
source.SetRadius(5.0)
# Create a mapper
mapper = vtk.vtkPolyDataMapper()
mapper.SetInputConnection(source.GetOutputPort())
# Create an actor
actor = vtk.vtkActor()
actor.SetMapper(mapper)
# Get PolyData as String
writer = vtk.vtkPolyDataWriter()
writer.WriteToOutputStringOn()
writer.SetInputDataObject(mapper.GetInput())
string = writer.Write()
string
答案 0 :(得分:0)
由于未提供任何答案,因此请将其放在此处,以防对任何人有帮助...
import vtk
# TODO: make mesh a vtkPolyData valid mesh
writer = vtk.vtkXMLPolyDataWriter()
writer.SetInputData(mesh) # mesh should be a PolyData object
writer.SetDataModeToAscii()
writer.WriteToOutputStringOn()
writer.Update()
xml = writer.GetOutputString()
仍在寻找一种方法来反转它,以便vtkReader可以吃一个字符串而不是一个文件...