[Paraview] Losing data when clip multi-block

John Biddiscombe biddisco at cscs.ch
Fri Feb 6 09:38:02 EST 2009


Eric et al,

I recently had a problem where a filter opreated normally when used 
normally, but when someone put a calculator in front of it, it stopped 
working. The filter in question instantiated other filters internally.

I tracked to the problem down to this.

Calculator calls SetActiveScalars(New data)
another filter later does a PointData()->PassData(blah)
->SetActiveScalars(More New data)

And the New data from before was lost. I do not like this 
SetActiveScalars function because it replaces (not adds) whatever scalar 
was there before. I cnaged the offending filter (in this case 
vtkSurfaceVectors) on my copy to do
PointData()->PassData(blah)
PointData()->AddArray(newData);
PointData()->SetActiveScalars(newData->GetName())

or something like that (from memory).

I have no idea if this is related to your problem, but I just thought 
I'd vent my spleen and start a campaigh to remove this 
SetActiveScalars(...) call as it is just rubbish. (At least it should be 
modified internally to not remove the old active slalars if they are are 
about to be wiped)

JB


> Hey Utkarsh,
>
> No, I've never seen the clip lose data on one dataset by itself.
>
> The other interesting thing is that I can't always get this data loss 
> to happen if the data was generated as part of a source from the 
> Sources menu. It's much more likely to disappear when the data was 
> generated by a filter or brought in by a reader.
>
> For example, if you generate a Box and a Wavelet source, grouping and 
> clipping them won't lose any data, but if you run Generate IDs on one 
> of them, then select GenerateIds1 second before grouping, then clip, 
> the "Ids" point data disappears...
>
> Thanks,
> -Eric
>
>
> On Feb 6, 2009, at 7:37 AM, Utkarsh Ayachit wrote:
>
>> Eric,
>>
>> Does the loss of arrays happen even if you clip the orginal dataset by
>> itself (without grouping it using the group filter)?
>>
>> Utkarsh
>>
>> On Wed, Feb 4, 2009 at 3:53 PM, Eric E. Monson <emonson at cs.duke.edu> 
>> wrote:
>>> Hello,
>>>
>>> I'm creating a multi-block data set using the group filter and then 
>>> clipping
>>> it. The results of the clip are always missing one of the scalars 
>>> associated
>>> with the second data set that I highlighted before applying the group
>>> filter. This only seems to happen if one of the data sets has multiple
>>> scalars or vectors associated with it -- if they each only have one, 
>>> nothing
>>> is lost in the clip. (ParaView 3.4 and CVS, OS X 10.5.6 and Windows XP
>>> 32-bit, no MPI)
>>>
>>> I originally saw this with my own data, but I am able to easily 
>>> replicate
>>> this by creating two point sources. I apply the Elevation filter to the
>>> first. Then, to the second I apply Brownian Vectors, plus a 
>>> Calculator that
>>> computes the magnitude of those vectors. If I highlight Elevation 
>>> and then
>>> Calculator, then Group and Clip, I lose the vector magnitude scalar 
>>> at the
>>> Clip stage. If I highlight the Calculator and then the Elevation, 
>>> then Group
>>> and Clip, I lose the elevation scalar.
>>>
>>> Please let me know if anyone has any ideas about where this could be 
>>> coming
>>> from.
>>>
>>> Thanks a lot,
>>> -Eric
>>>
>>> ------------------------------------------------------
>>> Eric E Monson
>>> Duke Visualization Technology Group
>>>
>>>
>>> _______________________________________________
>>> ParaView mailing list
>>> ParaView at paraview.org
>>> http://www.paraview.org/mailman/listinfo/paraview
>>>
>
> _______________________________________________
> ParaView mailing list
> ParaView at paraview.org
> http://www.paraview.org/mailman/listinfo/paraview


-- 
John Biddiscombe,                            email:biddisco @ cscs.ch
http://www.cscs.ch/
CSCS, Swiss National Supercomputing Centre  | Tel:  +41 (91) 610.82.07
Via Cantonale, 6928 Manno, Switzerland      | Fax:  +41 (91) 610.82.82




More information about the ParaView mailing list