Summit II

From ParaQ Wiki
Jump to navigationJump to search

Date:March 14,15 2006 at Kitware Please make your own travel arrangements.

Agenda

Tuesday, March 14
Time Item Who Slides
8:30-9:00 Coffee and knock-knock jokes All
9:00-9:30 Overview and Awards Rogers
9:30-11:30 Code walk-throughs and puppet show Shead
11:30-1:00 Lunch All
1:00-2:00 Prism over ParaQ discussion McBride PrismV3.0
2:00-4:00 UI design discussion Matthew ParaQ Usability Briefing
4:00-5:00 PGraph Ken
Wednesday, March 15
Time Item Who Slides
8:30-9:00 Coffee and knock-knock jokes All
9:00-10:00 Lessons learned (GeoViz, Dobrano-viz) Shead
10:00-11:30 Process Discussion Geveci Insight Process
11:30-1:00 Lunch All
1:00-2:30 Wrap-up, planning for next month's development All

Things we have to get right

  • File dialogue must be great, and must be out early.
  • Saving state - what's local, what's on the server.
  • Testing
  • Undo


Important Questions

  • Is ParaQ a Pipeline or a Window based UI. How do we support a useful, understandable multi-view, multi-pipeline application?
  • Do we support Multiview' or Dockable window management paradigms? Do we support both?
  • What does a graph show, in a multi-view application? What is its update paradigm?
  • How do we manage Views and Layouts - what you're looking at, and how it's laid out?
  • What is our version number for the Sept. '06 release?
  • What are our general multiview interaction mechanisms?
  • What are our general Compound Filter interactions for editing and saving?
  • Do we have an Accept/Reset paradigm?
  • Support Abort of PVSM updates.

Notes

Code Walkthrough

Pipeline

Multiview Objects

Python

Compound Proxies

Element Inspector

Charting

  • CSS-like attributes to control font, etc.
  • Printing
  • Maintain axes when zooming into chart data.
  • Do we need a world-view on a chart, for zoomed in interaction?

UI Persistence

UI design items

General

  • Right mouse click in QVTKWidget - conflict with context menu in windows.
  • Improvements in Auto-generated UI panels.
  • Design method for adding code to hand-coded UI panels.
    • Should it always be a QT Designer-based thing?
    • Should we support a script-like way of changing UI in the field? Non-compiled?
  • Compound filter creation/editing/loading.
  • Zoom/pan etc. - should they be the same as CUBIT?

Pipeline Browser

Major issues

  • Simple fan-out
  • Multiple sources
  • Show things that aren't 'ON' (what's on; how is it shown?)
  • Pipeline vs. Windows interaction paradigm?
  • Context menu (right mouse click)
  • What are the basic operations we can do?
  • How does this support Compound Filter operations (creation/editing/loading)
  • How would you add 'histogram selection stuff' to ParaQ (what do you add in the UI, where, and how does the user understand it?

Design Decisions

  • Make a hierarchy view
    • Rightmost column is 'Root' of a pipeline
    • Indent from left immediately from a root
    • Indent from left for fan-out
    • Fan-in becomes a new root, with the fan-in node being referenced in the 'correct' location in the hierarchy.
    • Icons to be designed by ETI.

The following image shows why we can't use just an indent for fan out.
Pipelineexample02.png

When only using an indent to show fan-out, both pipelines look the same to the user. Adding the split item lets the user see there are multiple outputs. The user will have to learn the meaning of the split item, but I think that is preferred to confusing the user.

Dockable vs. Split View

Decisions

  • All 'views' are the same stuff - there is no restriction on what can be in a piece of the screen.
  • UI elements are dockable.
  • Views are not dockable - they are part of a split-screen main screen that we manage totally.
  • Users cannot pull a 'view' out of the main UI.
  • See action items for review of further issues.

Current State

  • Current variable (including range, etc.)
  • Current timestep

File Browser

  • Should we use the standard, platform-specific browser?
  • Coordinate with CUBIT application.

Prism over ParaQ

Corey presented the current build of prism, and discussed what we'll need from ParaQ in order to build Prism v3.0.

  • How do we manage the filters, etc. that make up the SESAME view.

ParaQ Usability

  • Accept/Reset. Q: how should the general interaction work?
    • Instant update
    • Interrupt
      • VTK does not currently support Abort
    • Support contiuous changes, with updated/out-of-date UI support (show the user what is out-of-date, so he can update it as needed)
  • Note that UI is not on a separate thread ... responsiveness is limited by Server Manager.

Action Items

Item Who Ref Item
001 BG 3026 Monitor interaction between pqPipelineData and server manager classes. In particular, the relationship between data in the server manager, and copies of that data saved in the UI for efficient UI interaction.
002 BG Dup Restructure repository
003 DR 3018 Put Summit slides on wiki
004 MR 2987 Design and implement a 'graph' ancestor to pqPipelineData. Determine if there is a 'graph' package that we can create (with both models and views)
005 CS 3019 Element Inspector: add capability to handly large data quickly
006 CS 3005 Create wiki page explaining how to to create custom object inspectors.
007 TS 3020 Create a way for the checkin process to verify that all Qt widgets are named.
008 TS 3023 Handle cross-platform image comparison and capture issues for testing.
009 TS 3006 Create wiki page - instructions for recording tests.
010 DR 3007 Create Selection requirements document (Prism-based requirements to start)
011 DR/CM/KM/BG 3025 Determine how Prism's SESAME view can be built over PGraph framework.
012 BG/KM 3024 Determine restrictions on multiview rendering on server - can we pull windows out of the UI.
013 MW 3008 Do ParaView user testing in CA, NM. Post wiki page about results.
014 MW 3008 (dup) Determine ParaView barriers to adoption in CA.
015 MW 3008 (dup) Make wiki page on ParaView issues (results
016 BW 3009 Identify SNL users to help MW with user testing.
017 BW 3010 Post PQ use cases on the wiki
018 DR 3011 Organize PQ data sets for testing (disk_out_ref.exo)
019 BW 3012 Find SAND number for disk_out_ref.exo data set. Post info (including some examples of using ParaView to explore it) on wiki.
020 BW 3013 Get Crystal (Yellow) book to ETI and Kitware.
021 ETI 2988 Make vcr controls much sexier (use Brian's images in vtkSNL repository)
022 MR 2989 Integrate Charting into PGraph architecture
023 CM/BG 2990 Integrate Band Pass filter into VTK
024 BG/BW 2991 Create cut-plane based probe for ParaView 2.6 release
025 DR 3021 Schedule next meeting; Get a bead on summer schedules (all)
026 DR 3011(dup) Pursue asteroid volume rendering dataset with Mark Boswell
027 BG 3014 Get www.paraq.org, link to paraview site
028 DR 3017 re-organize wiki for user introduction, and developer process (like ITK example)
029 BG 2992 Set CMake option VTK_DEBUG_LEAKS to default ON
030 BG 3015 Add link to coding practices in vtk documentation to Coding Practices page.
031 TS 3016 Follow up on existing implementation of dynamic loading for support of Dobranoviz