ParaView 3.6 Deliverables

From ParaQ Wiki
Jump to navigationJump to search

Deliverables to Complete

Name Description Owner
ParaView/Titan Chart Merger If not already complete. Pat/Utkarsh
Tables
  • Make vtkTables a supported pipeline object type. It should have its own icon in the pipeline browser. The default view should probably be spreadsheet.
  • Charting components (XY plot, histogram, stacked chart, etc.) should support tables as an input (other input types like rectilinear grid may be unnecessary).
  • Plotting filters (plot over time, plot over time, histogram) should output tables.
  • csv readers/writers should work principally (perhaps exclusively) with tables.
  • Support reading other delimited text files.
  • Simple conversion from tables to other data (such as collection of points).
Utkarsh
More multiblock
  • Ability to map a partial array and have all blocks not having the array a solid color.
Utkarsh (research)
Simplified state/scripting Right now getting any scripting in ParaView has a high learning curve. State files are unreadable and almost completely uneditable. To do any scripting at all, you need to learn a significant chunk of Python bindings. To make this easier, ParaView should output a much more friendly way of scripting things. Either the state written out should be much simpler (show only the things that pertain to the current view) or be able to write out a very simplified Python script to get back to the state, or both. Berk/Utkarsh
Particle Support Leverage the work from CSCS.
  • Provide a particle representation that renders points more intelligently
    • Spheres with size vs. squares of pixel width
    • Optional sizing based on a scalar
    • Appropriate alpha blending (at least when particles are small)
    • Splatting?
  • Filters for meshless data? (Need to get customer requirements.)
    • Sampling point cloud?
    • Surface extraction?
Note: Not all will be finished. We will probably provide resizable sphere rendering for the particles and perhaps the better transfer function. We need to talk with John Biddiscombe to learn the current state and assign responsibility.
Zhanping/John Biddiscombe
Temporal cleanup
  • Show temporal bounds of all datasets in statistics view (or elsewhere)
  • Show continuous data set temporal bounds in info page
  • Plot/Probe over time, results should very in Sequence, Snap, and Real Time modes
Berk
Plots along curves Now you can plot along a line segment in space (defined by two endpoints). Users want to plot along other types of curves in space.
  • Intersection of surface with plane.
  • Path between two points on a plane.
Note: This is not a high priority, but it should be easy. Delay until later if it requires more than 3 days of work.
Berk/Utkarsh
VisIt AVT Integration We would like to pull VisIt components into ParaView (such as readers and filters). To this end, we would like to have an interface that would convert AVT to the VTK executives (or vice versa) so that we could leverage these without changing any code.
Partial: For 3.6, let's just do the readers.
Burlen
Statistics Integrate Phillipe Pebay's statistics filtering and then some. Phillipe

Deliverables to Start

Name Description Owner Level of Involvement
Multicore Multi-core desktops are becoming commonplace. It is now reasonable for a user to invest in an 8 core desktop with several GB of memory in lieu of a visualization cluster. Unfortunately, ParaView has no good way of taking advantage of the multiple cores.
  • As low hanging fruit, the first implementation is probably just a way to launch an mpi builtin server. This should be able to be handled internally, so you don't need to create a special server.
  • There are some issues with rendering. There is no longer a GPU per process.
Berk Research
D4 Time to get rolling on the next generation distributed data decomposition filter. D4 Design Andy Bauer Start
Foreground color Add ability to specify a foreground color for a view (in addition to the background color). The foreground color is the default color for text, lines, and that sort of thing in 2D and 3D widgets. Pat Start. Perhaps provide some implementation for common components.
vtkIdType size Currently the user must select the size of vtkIdType (32 vs 64) at compile time. This is not an ideal way to select the id size. Usually, you want 32 bit ids (for the smaller size), but when dealing with large MPI jobs, there is a chance you might need to represent global ids with 64 bits. We should look into possible ways to support selecting an Id size at run time without breaking backwards compatibility. Berk Research
Better labeling The Infovis group has made a labeler that works well in 3D. We should integrate that into ParaView. Zhanping Look into Dave Thompson's code (and ask Jeff Baumes about it). If it is really production ready, we can bump this up.
Scatterplots The current line plot can be used to do scatterplots of small amount of data, but it cannot be used to, say, a plot of two field variables for a large parallel vtkDataSet. An efficient implementation will have to use OpenGL and parallel image compositing. Look into VisIt's 2D scatterplot implementations. We really could use this sooner rather than later, but it is probably too big a project to finish by 3.6. If we could leverage other code, that would be great.
Parallel coordinates. Why doesn't ParaView have parallel coordinate views? There may be more work than just grabbing what is available in VTK. It has to work in parallel servers. Also, it probably won't be very useful without the 2D histogram line accumulation technique. Take a look at VisIt's. It works in parallel and supports the 2D histogram technique.

Deliverables Delayed for Later

Name Description Owner Note
Branded ParaView OverView has implemented this concept of branding. In this case, ParaView starts up as a mostly blank GUI and then loads a set up plugins definined by the branding. The ParaView application should really just be a set of plugins that load into this. Utkarsh
Movie view Add movie file readers that behave like an image reader the supports time. When viewed in a 2D image view with the time controls, ParaView becomes a simple movie viewer. Zhanping Lisa Ice originally requested this. We should talk to her again to get the use case/priority.
Custom filter cleanup
  • Replace the "wizard" with a single dialog which can be used to edit all of the features at once.
    • Reuse this dialog to implement an edit custom filter feature.
  • Implement links in custom filters.
Zhanping/Clint
Shaders Implementation in 2.6 is "experimental" and does not seem to be of any practical use to anyone. Utkarsh is working on new GPU pipeline stuff. Next generation should take advantage of that.
This may end up being documenting how to add new representations through plugins etc. Utkarsh 09:32, 27 October 2008 (EDT)
Utkarsh
Unordered Color maps Some data values do not have any logical order associated with them. For example, block ids and process ids have identifiers that distinguish them, but there is no real meaning between the relationship of each pair. Thus, it makes little sense to use our standard linear color maps. A much better approach would be to map individual colors to values and show these colors as blocks in the color bar. VisIt demonstrates this quite nicely (although the colors they use aren't perfect). Zhanping
Multithreaded UI Right now, the UI pretty much works under one thread. When a pipeline update occurs, pretty much everything comes to a halt while the update happens. Likewise, a long render could cause everything to wait. We would like the ability to run pipeline updates and rendering on different threads so that the UI remains responsive.
This is a huge can of worms that would destabilize ParaView for a long time. Nothing in server manager is even close to being thread safe. I think we should focus on the actual use case: making the user interface responsive (i.e. progress reporting and abort) while processing occurs. Berk 08:43, 27 October 2008 (EDT)
Utkarsh