Posted at

[Python] VTKで円柱を表示する

More than 1 year has passed since last update.

3Dコンピュータグラフィックス・画像処理・可視化ライブラリのVTK(Visualization Toolkit)で、円柱を表示してみました。


環境

macOS High Sierra (10.13.3)

Python 3.6.4

VTK 8.1.0


VTKのインストール

pipでパッケージをインストールします。

$ pip install vtk


円柱の表示

下記のように円柱を表示するコードを作成し、実行すると円柱が表示されます。


cylinder.py

import vtk

# create cylinder
cylinder = vtk.vtkCylinderSource()
cylinder.SetRadius(2.5)
cylinder.SetHeight(5.0)
cylinder.SetResolution(20)

# mapper
mapper = vtk.vtkPolyDataMapper()
mapper.SetInputConnection(cylinder.GetOutputPort())

# actor
actor = vtk.vtkActor()
actor.SetMapper(mapper)
actor.RotateX(30.0)
actor.RotateY(-45.0)

# create a rendering window and renderer
ren = vtk.vtkRenderer()
renWin = vtk.vtkRenderWindow()
renWin.AddRenderer(ren)

# create a renderwindowinteractor
iren = vtk.vtkRenderWindowInteractor()
iren.SetRenderWindow(renWin)

# assign actor to the renderer
ren.AddActor(actor)
ren.SetBackground(0.2, 0.2, 0.5)
renWin.SetSize(500, 500)

# enable user interface interactor
iren.Initialize()
renWin.Render()
iren.Start()



実行結果

問題がなければ、下図のように表示されます。


参考

https://lorensen.github.io/VTKExamples/site/Python/