Vtk widgets
This presentation is the property of its rightful owner.
Sponsored Links
1 / 24

VTK Widgets PowerPoint PPT Presentation


  • 90 Views
  • Uploaded on
  • Presentation posted in: General

VTK Widgets. William J. Schroeder Kitware, Inc. June 2006. 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

Download Presentation

VTK Widgets

An Image/Link below is provided (as is) to download presentation

Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author.While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server.


- - - - - - - - - - - - - - - - - - - - - - - - - - E N D - - - - - - - - - - - - - - - - - - - - - - - - - -

Presentation Transcript


Vtk widgets

VTK Widgets

William J. Schroeder

Kitware, Inc.

June 2006


Thanks

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


Overview

Overview

  • Goals

  • Architecture

  • Widgets

  • Implementation


Goals

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


Design goals

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


Architecture

RenderWindow

Renderer

Events

Render()

vtkAbstractWidget

vtkWidgetRepresentation(type of vtkProp)

Architecture

  • Decoupling representation from event processing


Event translation

Event Translation


Widget hierarchies

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

HandleWidget


Handle framework

Handle Framework

  • Types of handles

    • 2D (display space)

    • 3D (world space)

    • Constrained

      • To plane

      • To surface

      • Etc?


Widgets

Widgets

  • Handles


Widgets cont

Widgets (cont.)

  • vtkSliderWidget

    • 2D

    • 3D

  • vtkBorderWidget

    • Widgets with rectangular borders

  • vtkTextWidget

    • Position & size text


Widgets cont1

Widgets (cont.)

  • BalloonWidget

    • Text and/or image in rectangular popup


Widgets cont2

Widgets (cont.)

  • vtkCameraWidget

    • Keyframe &playback camera

  • vtkCaptionWidget

    • Text with leader


Widgets cont3

Widgets (cont.)

  • vtkCheckerboardWidget

    • Interleave two images

  • vtkRectilinearWipeWidget

    • Window pane(2x2 checkerboard)with movable focus


Widgets cont4

Widgets (cont.)

  • vtkContourWidget

    • 2D (on plane)

    • 3D (move contours through slices in a volume)


Widgets cont5

vtkDistanceWidget

Measure distance between points

vtkAngleWidget

Measure angles

Widgets (cont.)


Widgets cont6

Widgets (cont.)

  • vtkSeedWidget

    • Add one or more seeds / markers

  • vtkAffineWidget

    • Translate

    • Scale

    • Rotate

    • Shear images


Widgets cont7

Widgets (cont.)

  • vtkBiDimensionalWidget

    • Tumor response (RECIST vs WHO)


Widgets cont8

Box

Implicit Plane

Widgets (cont.)


Widgets cont9

Finite Plane

Line

Widgets (cont.)


Widgets cont10

vtkScalarBarWidget

vtkSphereWidget

Widgets (cont.)


Widgets cont11

Widgets (cont.)

  • vtkImagePlaneWidget


Widgets cont12

Widgets (cont.)

  • vtkSplineWidget


Status

Status

  • Currently available in VTK CVS

    • New subdirectory VTK/Widgets

    • Work in progress; lots of polishing required

  • Tests in Widgets/Testing/Cxx

    • Uncomment in CMakeLists.txt

    • Valid images not yet created, nor event playback scripts

    • Looking for feedback

    • Will add Tcl tests as well


  • Login