View Issue Details Jump to Notes ] Print ]
IDProjectCategoryView StatusDate SubmittedLast Update
0009028ParaViewBugpublic2009-05-14 09:032013-05-18 20:00
ReporterKen Moreland 
Assigned ToMarcus D. Hanwell 
PrioritynormalSeverityminorReproducibilityhave not tried
StatusclosedResolutionfixed 
PlatformOSOS Version
Product Version 
Target VersionNeedsVerificationFixed in Version4.0 
Summary0009028: Plots interpolate to invalid points
DescriptionThe Plot Over Line filter creates a special column in its output called vtkValidPointMask that is a flag to the plot view to specify that the given point has no data and therefore should not be drawn. When the point is invalid, the rest of the columns are filled with zero for no particular consequence since these values will not be viewed. (Should they have NAN instead?)

The problem is that in the XY plot when you have a valid point next to an invalid point, it interpolates between the valid point. This creates inappropriate lines to the 0 axis. To see this problem in action, do the following.

1. Load disk_out_ref.ex2, load Temp variable, Apply.
2. Note that the range of Temp goes from 293 to 913. This is in Kelvins, so it never gets near zero.
3. Plot Over Line. Apply.

The default line for the plot starts outside the mesh, goes inside, back outside, back inside, and then outside for a final time. This is reflected by the two distinct regions in the plot. However, notice that at the ends of each contiguous region there is a line drawn down to 0. Those lines should not be there. The data never goes to 0 and therefore we should not be drawing lines to 0.
TagsNo tags attached.
ProjectSandia
Topic Name
Typeincorrect functionality
Attached Files

 Relationships

  Notes
(0016733)
Julien Finet (developer)
2009-06-17 08:14
edited on: 2009-06-17 10:51

The inappropriate lines to the X axe are not an interpolation problem.
It is just that invalid points are not handled by charts. Valid and invalid points are systematically drawn.

(0025139)
Marcus D. Hanwell (developer)
2011-01-28 14:02

It seems to me that we should make these NaN, and then I could improve the charts to handle NaN correctly. Or, is there some reason that you would want to distinguish between invalid points and true NaN?
(0025176)
Ken Moreland (manager)
2011-01-31 10:03

I think using NaN as the identifier for invalid points is perfectly fine. All the NaNs I've seen in real data so far have been used to signify "invalid" or "no data". We were also proposing the use of NaN instead of the vtkValidPointMask to plot multiple series where each series may have different sets of valid values (for example if plotting a line over multiblock data with different fields in different blocks).
(0025177)
Marcus D. Hanwell (developer)
2011-01-31 10:11

That is good to hear, and the NaN solution seems more flexible than the valid point mask which would affect all rows. I also think the solution using NaNs would be more generally useful to the VTK community outside of ParaView. I will try to complete this work (I already have a list of invalid points in any particular plot in order to find a valid range - extending it to build up multiple lines is the next logical step).
(0025179)
Ken Moreland (manager)
2011-01-31 10:29

Be careful because NaN is not fully supported by VTK. I've pushed to have NaN be used in some parts of ParaView and have updated some small parts of VTK to handle NaNs better. However, almost all filters in VTK have no concept of NaN and some will freak out when they get one.

Anyway, I guess my point is that you should have a conversation with Berk before implementing this. I support the use of NaNs but he might have a second opinion.
(0025180)
Marcus D. Hanwell (developer)
2011-01-31 10:34

I think in the case of charts it is a little simpler - they are end consumers of the numbers (nothing beyond them in a pipeline). There has been code to handle NaNs, infinity etc for over a year now I think. I was just going to extend this into the rendering routines a little further, there are already a couple of bugs due to inconsistent handling of NaNs by OpenGL implementations - stopping the NaNs getting that far should fix those issues. I will get a second opinion to see if there is anything I missed though.
(0030691)
Utkarsh Ayachit (administrator)
2013-05-03 14:03

I believe this is already fixed.
(0030743)
Utkarsh Ayachit (administrator)
2013-05-10 08:23

SUMMARY
---------------------------------------------
Topics merged into master:
        13853_catalyst_immediate_mode_rendering2
        13981_fix_install_rules
        13991_fix_window_sizes
        14040_add_save_animation_time_range_v2
        14046_fix_selection_issues
        14058_fix_camera_animation_in_parallel_scale
        14059-vtkPVGeometryFilter-unnecessary-array
        fix-custom-view-button-leak
        fix-multi-block-issues
        fix_pointsprite_plugin
        gmv-test-cleanup
        pvw-add-exit-button
(0030769)
Alan Scott (manager)
2013-05-15 13:29

Tested master, Linux, remote server.

I also tried running the output of the plot over line filter into a spreadsheet. It worked with the NAN's. I sorted the spreadsheet, and the NAN's didn't sort correctly. But, that is another bug.

 Issue History
Date Modified Username Field Change
2009-05-14 09:03 Ken Moreland New Issue
2009-06-03 10:34 Utkarsh Ayachit Status backlog => tabled
2009-06-03 10:34 Utkarsh Ayachit Assigned To => Julien Finet
2009-06-17 08:14 Julien Finet Note Added: 0016733
2009-06-17 10:51 Julien Finet Note Edited: 0016733
2011-01-28 13:54 Utkarsh Ayachit Assigned To Julien Finet => Marcus D. Hanwell
2011-01-28 13:54 Utkarsh Ayachit Target Version 3.8 => NeedsVerification
2011-01-28 14:02 Marcus D. Hanwell Note Added: 0025139
2011-01-31 10:03 Ken Moreland Note Added: 0025176
2011-01-31 10:11 Marcus D. Hanwell Note Added: 0025177
2011-01-31 10:29 Ken Moreland Note Added: 0025179
2011-01-31 10:34 Marcus D. Hanwell Note Added: 0025180
2013-01-08 21:31 Alan Scott Project => Sandia
2013-01-08 21:31 Alan Scott Type => incorrect functionality
2013-05-03 14:03 Utkarsh Ayachit Note Added: 0030691
2013-05-03 14:03 Utkarsh Ayachit Status backlog => gatekeeper review
2013-05-03 14:03 Utkarsh Ayachit Resolution open => fixed
2013-05-10 08:23 Utkarsh Ayachit Fixed in Version => git-master
2013-05-10 08:23 Utkarsh Ayachit Status gatekeeper review => customer review
2013-05-10 08:23 Utkarsh Ayachit Note Added: 0030743
2013-05-15 13:29 Alan Scott Note Added: 0030769
2013-05-15 13:29 Alan Scott Status customer review => closed
2013-05-18 20:00 Utkarsh Ayachit Fixed in Version git-master => 4.0


Copyright © 2000 - 2018 MantisBT Team