[Paraview] Maybe a silly question?

David Thompson dcthomp at sandia.gov
Wed Mar 23 17:45:38 EDT 2011


>>> I have an Exodus II type file loaded into Paraview and trying to  
>>> get the point ID for a group of cells. I know for vtk type object  
>>> there are functions like GetCell(), GetPoint()
>>>
>> I assume you're talking about using Python from ParaView?
>
> Yup, that's exactly what I am doing here.

There are 2 ways to use Python in ParaView: writing a programmable  
filter and scripting the user interface. The former is evaluated on  
the server where you can get access to (at least a portion of) the  
actual dataset. The latter is evaluated on the client, which does not  
have access to the datasets -- instead it has proxy objects that send  
messages to the servers, telling them what to do. So, you can access  
the points and cells from within a programmable filter, but not from  
within a client-side script.

>
>>> and just wonder if there are such kind of routines available for  
>>> Exodus II files.
>>>
>> Yes, the ExodusII reader outputs VTK objects in a multiblock  
>> dataset. You can use GetCell(), GetPoint(), and such on each  
>> individual block... you just have to decide on a particular block.  
>> The ExodusII reader separates things into blocks because each one  
>> may have different point and/or cell variables. There are actually  
>> 2 levels of blocks; the top level segregates datasets into groups  
>> that correspond to exodus blocks vs. sets. The second level breaks  
>> individual blocks or sets into separate datasets. Does that help?
>>
>
> I am new in dealing with ex2 file, could you please be detailed?  
> There is just one block in the dataset, so how to get the vtk object  
> out from it so I can access the points and cells?


See the section of this page
   http://www.vtk.org/Wiki/Python_Programmable_Filter
named "Dealing with Composite Datasets". It describes how to iterate  
over all of the blocks in the dataset and run a function (in this  
case, one named "flatten") on each block.

	David


More information about the ParaView mailing list