You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
57 lines
1.5 KiB
57 lines
1.5 KiB
package require vtk
|
|
package require vtkinteraction
|
|
|
|
# create reader and extract the velocity and temperature
|
|
vtkPNGReader reader
|
|
reader SetFileName "$VTK_DATA_ROOT/Data/vtk.png"
|
|
|
|
vtkImageQuantizeRGBToIndex quant
|
|
quant SetInputConnection [reader GetOutputPort]
|
|
quant SetNumberOfColors 32
|
|
|
|
vtkImageToPolyDataFilter i2pd
|
|
i2pd SetInputConnection [quant GetOutputPort]
|
|
i2pd SetLookupTable [quant GetLookupTable]
|
|
i2pd SetColorModeToLUT
|
|
i2pd SetOutputStyleToPolygonalize
|
|
i2pd SetError 0
|
|
i2pd DecimationOn
|
|
i2pd SetDecimationError 0.0
|
|
i2pd SetSubImageSize 25
|
|
|
|
#Need a triangle filter because the polygons are complex and concave
|
|
vtkTriangleFilter tf
|
|
tf SetInputConnection [i2pd GetOutputPort]
|
|
|
|
vtkPolyDataMapper mapper
|
|
mapper SetInputConnection [tf GetOutputPort]
|
|
|
|
vtkActor actor
|
|
actor SetMapper mapper
|
|
|
|
# Create graphics stuff
|
|
vtkRenderer ren1
|
|
vtkRenderWindow renWin
|
|
renWin AddRenderer ren1
|
|
vtkRenderWindowInteractor iren
|
|
iren SetRenderWindow renWin
|
|
|
|
# Add the actors to the renderer, set the background and size
|
|
ren1 AddActor actor
|
|
|
|
ren1 SetBackground 1 1 1
|
|
renWin SetSize 300 250
|
|
|
|
vtkCamera acamera
|
|
acamera SetClippingRange 343.331 821.78
|
|
acamera SetPosition -139.802 -85.6604 437.485
|
|
acamera SetFocalPoint 117.424 106.656 -14.6
|
|
acamera SetViewUp 0.430481 0.716032 0.549532
|
|
acamera SetViewAngle 30
|
|
ren1 SetActiveCamera acamera
|
|
|
|
iren Initialize
|
|
iren AddObserver UserEvent {wm deiconify .vtkInteract}
|
|
|
|
# prevent the tk window from showing up then start the event loop
|
|
wm withdraw .
|
|
|