CompassWidget
VTKExamples/Python/Widgets/CompassWidget
Description¶
Draws an interactive compass.
- Contributed by Jothy
Code¶
CompassWidget.py
#!/usr/bin/env python import vtk def main(): colors = vtk.vtkNamedColors() colors.SetColor('bkg', [0.2, 0.3, 0.7, 1.0]) # sphere sphereSource = vtk.vtkSphereSource() sphereSource.SetCenter(0.0, 0.0, 0.0) sphereSource.SetRadius(4.0) mapper = vtk.vtkPolyDataMapper() mapper.SetInputConnection(sphereSource.GetOutputPort()) actor = vtk.vtkActor() actor.SetMapper(mapper) actor.GetProperty().SetColor(colors.GetColor3d("BurlyWood")) # a renderer and render window renderer = vtk.vtkRenderer() renderWindow = vtk.vtkRenderWindow() renderWindow.AddRenderer(renderer) # an interactor renderWindowInteractor = vtk.vtkRenderWindowInteractor() renderWindowInteractor.SetRenderWindow(renderWindow) # Create the widget and its representation compassRepresentation = vtk.vtkCompassRepresentation() compassWidget = vtk.vtkCompassWidget() compassWidget.SetInteractor(renderWindowInteractor) compassWidget.SetRepresentation(compassRepresentation) # add the actors to the scene renderer.AddActor(actor) renderer.SetBackground(colors.GetColor3d('bkg')) renderWindow.Render() compassWidget.EnabledOn() style = vtk.vtkInteractorStyleTrackballCamera() renderWindowInteractor.SetInteractorStyle(style) # begin interaction renderWindowInteractor.Initialize() renderWindow.Render() renderWindowInteractor.Start() if __name__ == '__main__': main()