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.
59 lines
1.7 KiB
59 lines
1.7 KiB
2 years ago
|
# This example demonstrates the use of vtkVectorText and vtkFollower.
|
||
|
# vtkVectorText is used to create 3D annotation. vtkFollower is used to
|
||
|
# position the 3D text and to ensure that the text always faces the
|
||
|
# renderer's active camera (i.e., the text is always readable).
|
||
|
|
||
|
#
|
||
|
# First we include the VTK Tcl packages which will make available
|
||
|
# all of the vtk commands to Tcl
|
||
|
#
|
||
|
package require vtk
|
||
|
package require vtkinteraction
|
||
|
|
||
|
# Create the axes and the associated mapper and actor.
|
||
|
vtkAxes axes
|
||
|
axes SetOrigin 0 0 0
|
||
|
vtkPolyDataMapper axesMapper
|
||
|
axesMapper SetInputConnection [axes GetOutputPort]
|
||
|
vtkActor axesActor
|
||
|
axesActor SetMapper axesMapper
|
||
|
|
||
|
# Create the 3D text and the associated mapper and follower (a type of
|
||
|
# actor). Position the text so it is displayed over the origin of the axes.
|
||
|
vtkVectorText atext
|
||
|
atext SetText "Origin"
|
||
|
vtkPolyDataMapper textMapper
|
||
|
textMapper SetInputConnection [atext GetOutputPort]
|
||
|
vtkFollower textActor
|
||
|
textActor SetMapper textMapper
|
||
|
textActor SetScale 0.2 0.2 0.2
|
||
|
textActor AddPosition 0 -0.1 0
|
||
|
|
||
|
# Create the Renderer, RenderWindow, and RenderWindowInteractor.
|
||
|
vtkRenderer ren1
|
||
|
vtkRenderWindow renWin
|
||
|
renWin AddRenderer ren1
|
||
|
vtkRenderWindowInteractor iren
|
||
|
iren SetRenderWindow renWin
|
||
|
|
||
|
# Add the actors to the renderer.
|
||
|
ren1 AddActor axesActor
|
||
|
ren1 AddActor textActor
|
||
|
|
||
|
# Zoom in closer.
|
||
|
ren1 ResetCamera
|
||
|
[ren1 GetActiveCamera] Zoom 1.6
|
||
|
|
||
|
# Reset the clipping range of the camera; set the camera of the follower;
|
||
|
# render.
|
||
|
ren1 ResetCameraClippingRange
|
||
|
textActor SetCamera [ren1 GetActiveCamera]
|
||
|
renWin Render
|
||
|
|
||
|
# Set the user method (bound to key 'u')
|
||
|
#
|
||
|
iren AddObserver UserEvent {wm deiconify .vtkInteract}
|
||
|
|
||
|
# Withdraw the default tk window.
|
||
|
wm withdraw .
|