1package require vtk 2package require vtkinteraction 3 4# create a rendering window and renderer 5vtkRenderer ren1 6 ren1 AutomaticLightCreationOff 7vtkRenderWindow renWin 8 renWin AddRenderer ren1 9vtkRenderWindowInteractor iren 10 iren SetRenderWindow renWin 11 12# create cones of varying resolution 13vtkConeSource cone0 14 cone0 SetResolution 0 15vtkConeSource cone1 16 cone1 SetResolution 1 17vtkConeSource cone2 18 cone2 SetResolution 2 19vtkConeSource cone8 20 cone8 SetResolution 8 21 cone8 SetDirection 0 0 10 22 cone8 SetCenter 5 0 0 23 24vtkPolyDataMapper cone0Mapper 25 cone0Mapper SetInputConnection [cone0 GetOutputPort] 26vtkActor cone0Actor 27 cone0Actor SetMapper cone0Mapper 28 29vtkPolyDataMapper cone1Mapper 30 cone1Mapper SetInputConnection [cone1 GetOutputPort] 31vtkActor cone1Actor 32 cone1Actor SetMapper cone1Mapper 33 34vtkPolyDataMapper cone2Mapper 35 cone2Mapper SetInputConnection [cone2 GetOutputPort] 36vtkActor cone2Actor 37 cone2Actor SetMapper cone2Mapper 38 39vtkPolyDataMapper cone8Mapper 40 cone8Mapper SetInputConnection [cone8 GetOutputPort] 41vtkActor cone8Actor 42 cone8Actor SetMapper cone8Mapper 43 44# assign our actor to the renderer 45ren1 AddActor cone0Actor 46ren1 AddActor cone1Actor 47ren1 AddActor cone2Actor 48ren1 AddActor cone8Actor 49ren1 SetBackground .5 .5 .5 50ren1 ResetCamera 51[ren1 GetActiveCamera] Elevation 30 52[ren1 GetActiveCamera] Dolly 1.3 53ren1 ResetCameraClippingRange 54 55renWin SetSize 301 91 56cone0Actor SetPosition -1.5 0 0 57cone1Actor SetPosition -.5 0 0 58cone2Actor SetPosition .5 0 0 59cone8Actor SetPosition 1.5 0 0 60 61[cone0Actor GetProperty] SetDiffuseColor 1 0 0 62[cone1Actor GetProperty] SetDiffuseColor 0 1 0 63[cone8Actor GetProperty] BackfaceCullingOn 64[cone8Actor GetProperty] SetDiffuseColor 0 0 1 65 66# enable user interface interactor 67iren AddObserver UserEvent {wm deiconify .vtkInteract} 68iren Initialize 69 70# prevent the tk window from showing up then start the event loop 71wm withdraw . 72 73