Presentation is loading. Please wait.

Presentation is loading. Please wait.

NA-MIC National Alliance for Medical Image Computing VTK Widgets William J. Schroeder Kitware, Inc. June 2006.

Similar presentations


Presentation on theme: "NA-MIC National Alliance for Medical Image Computing VTK Widgets William J. Schroeder Kitware, Inc. June 2006."— Presentation transcript:

1 NA-MIC National Alliance for Medical Image Computing http://na-mic.org VTK Widgets William J. Schroeder Kitware, Inc. June 2006

2 National Alliance for Medical Image Computing http://na-mic.org Thanks National Library of Medicine / NIH –Dr. Terry Yoo: A2D2 awards (Algorithms, Adaptors, and Data Distribution) National Science Foundation –Visual Journal project NIH National Center for Biomedical Computing –NAMIC Contributors –Will Schroeder –Lisa Avila –Karthik Krishnan –Brad King –Sebastien Barre –Dave Cole

3 National Alliance for Medical Image Computing http://na-mic.org Overview Goals Architecture Widgets Implementation

4 National Alliance for Medical Image Computing http://na-mic.org Goals Improve human-data interaction Provide palette of widgets supporting –Segmentation –Registration –Data interaction –Text and annotation –Light, camera, etc. manipulation Support client-server (distributed) computing Rework initial design

5 National Alliance for Medical Image Computing http://na-mic.org Design Goals Separate representation from event processing –Support distributed processing (client-server) Introduce translation mechanism between events and widget behavior Support hierarchical use of widgets Create general “handle” framework for positioning points

6 National Alliance for Medical Image Computing http://na-mic.org Architecture Decoupling representation from event processing RenderWindow vtkAbstractWidgetvtkWidgetRepresentation (type of vtkProp) Events Renderer Render()

7 National Alliance for Medical Image Computing http://na-mic.org 7 vtkHandleWidget vtkPointHandleRepresentation2D vtkPointHandleRepresentation3D vtkSphereHandleRepresentation vtkPolygonalHandleRepresentation Behavior Geometry One widget, multiple geometries 2D Cross hair 3D Cross hair Spherical handle User defined polygonal shape

8 National Alliance for Medical Image Computing http://na-mic.org Event Translation

9 National Alliance for Medical Image Computing http://na-mic.org 9 Widget Assemblies Create composite widgets from several individual widgets Children listen to events from Parent. Hence parent can alter behavior of child Parent Child RenderWindow Events

10 National Alliance for Medical Image Computing http://na-mic.org Widget Hierarchies Example: vtkDistanceWidget –Uses two instances of vtkHandleWidget –Responds to events from its handles –Notion of “parent” Reduce number of events Reduce number of Render() invocations –Can change behavior of widget by using different types of handles HandleWidget

11 National Alliance for Medical Image Computing http://na-mic.org Handle Framework Types of handles –2D (display space) –3D (world space) –Constrained To plane To surface Etc?

12 National Alliance for Medical Image Computing http://na-mic.org 12 Constraints – Point Placers To map 2D display positions to 3D world coordinates. Does a 2D display position map to: –Focal Plane ? –Point on a surface ? –Point on a plane / image ? –Out of bounds ? Allows a variety of constraints to be placed the placement of widgets.

13 National Alliance for Medical Image Computing http://na-mic.org 13 vtkPointPlacer

14 National Alliance for Medical Image Computing http://na-mic.org 14 VTK currently has widgets to perform –Measurements –Annotation and Labeling –Segmentation –Registration –Data interaction –Scene parameter manipulation: Light, camera, etc. –Probing underlying data Timer support Multiple geometrical representations for the same widget Reconfigurable key/mouse bindings Grouping widgets Widgets

15 National Alliance for Medical Image Computing http://na-mic.org Widgets Handles

16 National Alliance for Medical Image Computing http://na-mic.org Widgets (cont.) vtkSliderWidget –2D –3D vtkBorderWidget –Widgets with rectangular borders vtkTextWidget –Position & size text

17 National Alliance for Medical Image Computing http://na-mic.org Widgets (cont.) BalloonWidget –Text and/or image in rectangular popup

18 National Alliance for Medical Image Computing http://na-mic.org Widgets (cont.) vtkCameraWidget –Keyframe & playback camera vtkCaptionWidget –Text with leader

19 National Alliance for Medical Image Computing http://na-mic.org Widgets (cont.) vtkCheckerboardWidget –Interleave two images vtkRectilinearWipeWidget –Window pane (2x2 checkerboard) with movable focus

20 National Alliance for Medical Image Computing http://na-mic.org Widgets (cont.) vtkContourWidget –2D (on plane) : vtkBoundedPlanePointPlacer –3D move through slices in volume : vtkImageActorPointPlacer

21 National Alliance for Medical Image Computing http://na-mic.org Widgets (cont.) –Livewire (shortest path, set arbitrary cost functions, for instance gradient of image) –Dijkstra trace paths on polygonal data

22 National Alliance for Medical Image Computing http://na-mic.org Widgets (cont.) vtkContourWidget : Users can plug in their own interpolators Bezier contours Polygon tracing Live wire Trace on meshes Trace on Digital elevation map data

23 National Alliance for Medical Image Computing http://na-mic.org Widgets (cont.) vtkDistanceWidget –Measure distance between points vtkAngleWidget –Measure angles

24 National Alliance for Medical Image Computing http://na-mic.org Widgets (cont.) vtkSeedWidget –Add one or more seeds / markers vtkAffineWidget –Translate –Scale –Rotate –Shear images

25 National Alliance for Medical Image Computing http://na-mic.org Widgets (cont.) vtkBiDimensionalWidget –Tumor response (RECIST vs WHO)

26 National Alliance for Medical Image Computing http://na-mic.org Widgets (cont.) BoxImplicit Plane

27 National Alliance for Medical Image Computing http://na-mic.org Widgets (cont.) Finite PlaneLine

28 National Alliance for Medical Image Computing http://na-mic.org Widgets (cont.) vtkScalarBarWidgetvtkSphereWidget

29 National Alliance for Medical Image Computing http://na-mic.org Widgets (cont.) vtkImagePlaneWidget

30 National Alliance for Medical Image Computing http://na-mic.org Widgets (cont.) vtkParallelopipedWidget (3D Affine) vtkTensorProbeWidget Probe tensors along a tract

31 National Alliance for Medical Image Computing http://na-mic.org Widgets (cont.) vtkSplineWidget

32 National Alliance for Medical Image Computing http://na-mic.org 32 Widget Sets Grouping widgets on multiple render windows, relieving the application of the responsibility of doing so. RenderWindow Event Widget RenderWindow Event Widget RenderWindow Event Widget WidgetSet Event


Download ppt "NA-MIC National Alliance for Medical Image Computing VTK Widgets William J. Schroeder Kitware, Inc. June 2006."

Similar presentations


Ads by Google