天天看點

python 将三維資料轉為二維_将三維切片轉換為二維圖像

有沒有一種方法使用vtk從一個剖切面(可以是傾斜的)的3D坐标和相關資料中獲得2D圖像嗎?在

以下是我讀取結構化網格并設定剖切面的代碼片段:self._reader = vtk.vtkXMLStructuredGridReader()

self._reader.SetFileName(filename)

self._reader.Update()

self._reader.GetOutput().GetPointData().SetActiveScalars("Intensity")

plane = vtk.vtkPlane()

plane.SetOrigin(self._reader.GetOutput().GetCenter())

plane.SetNormal(0, 0, 1)

planeCut = vtk.vtkCutter()

planeCut.SetInput(self._reader.GetOutput())

planeCut.SetCutFunction(plane)

# THIS GIVES THE 3D COORDINATES OF THE POINTS OF THE CUT PLANE

print planeCut.GetOutput().GetPoints()

# THIS GIVES THE DATA ASSOCIATED WITH EACH OF THE POINTS

planeCut.GetOutput().GetPointData().GetAttribute(0)

cutMapper = vtk.vtkPolyDataMapper()

cutMapper.SetInputConnection(planeCut.GetOutputPort())

cutMapper.SetLookupTable(table)

cutMapper.SetScalarRange(0,100)

cutActor = vtk.vtkActor()

cutActor.SetMapper(cutMapper)

self._renderer.AddActor(cutActor)

self._iren.Render()

非常感謝你的幫助

埃裡克