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.
83 lines
1.9 KiB
83 lines
1.9 KiB
2 years ago
|
package require vtk
|
||
|
package require vtkinteraction
|
||
|
|
||
|
# pipeline stuff
|
||
|
#
|
||
|
vtkPLOT3DReader pl3d
|
||
|
pl3d SetXYZFileName "$VTK_DATA_ROOT/Data/combxyz.bin"
|
||
|
pl3d SetQFileName "$VTK_DATA_ROOT/Data/combq.bin"
|
||
|
pl3d SetScalarFunctionNumber 100
|
||
|
pl3d SetVectorFunctionNumber 202
|
||
|
pl3d Update
|
||
|
vtkGeometryFilter gf
|
||
|
gf SetInputConnection [pl3d GetOutputPort]
|
||
|
vtkTriangleFilter tf
|
||
|
tf SetInputConnection [gf GetOutputPort]
|
||
|
vtkPolyDataMapper gMapper
|
||
|
gMapper SetInputConnection [gf GetOutputPort]
|
||
|
eval gMapper SetScalarRange [[pl3d GetOutput] GetScalarRange]
|
||
|
vtkActor gActor
|
||
|
gActor SetMapper gMapper
|
||
|
|
||
|
# Don't look at attributes
|
||
|
vtkQuadricDecimation mesh
|
||
|
mesh SetInputConnection [tf GetOutputPort]
|
||
|
mesh SetTargetReduction .90
|
||
|
mesh AttributeErrorMetricOn
|
||
|
|
||
|
vtkPolyDataMapper mapper
|
||
|
mapper SetInputConnection [mesh GetOutputPort]
|
||
|
|
||
|
vtkActor actor
|
||
|
actor SetMapper mapper
|
||
|
|
||
|
# This time worry about attributes
|
||
|
vtkQuadricDecimation mesh2
|
||
|
mesh2 SetInputConnection [tf GetOutputPort]
|
||
|
mesh2 SetTargetReduction .90
|
||
|
mesh2 AttributeErrorMetricOff
|
||
|
|
||
|
vtkPolyDataMapper mapper2
|
||
|
mapper2 SetInputConnection [mesh2 GetOutputPort]
|
||
|
|
||
|
vtkActor actor2
|
||
|
actor2 SetMapper mapper2
|
||
|
actor2 AddPosition 0 12 0
|
||
|
|
||
|
# Create rendering instances
|
||
|
#
|
||
|
vtkRenderer ren1
|
||
|
vtkRenderWindow renWin
|
||
|
renWin AddRenderer ren1
|
||
|
vtkRenderWindowInteractor iren
|
||
|
iren SetRenderWindow renWin
|
||
|
|
||
|
# Set up the camera parameters
|
||
|
#
|
||
|
vtkCamera camera
|
||
|
camera SetPosition 19.34 6.128 -11.96
|
||
|
camera SetFocalPoint 8.25451 6.0 29.77
|
||
|
camera SetViewUp 0.9664 0.00605 0.256883
|
||
|
camera SetViewAngle 30
|
||
|
camera SetClippingRange 26 64
|
||
|
|
||
|
ren1 SetActiveCamera camera
|
||
|
|
||
|
# Add the actors to the renderer, set the background and size
|
||
|
#
|
||
|
ren1 AddActor actor
|
||
|
ren1 AddActor actor2
|
||
|
|
||
|
ren1 SetBackground 1 1 1
|
||
|
renWin SetSize 400 400
|
||
|
iren Initialize
|
||
|
|
||
|
# render the image
|
||
|
#
|
||
|
iren AddObserver UserEvent {wm deiconify .vtkInteract}
|
||
|
|
||
|
# prevent the tk window from showing up then start the event loop
|
||
|
wm withdraw .
|
||
|
|
||
|
set threshold 50
|