[Paraview] Maybe a silly question?

David Thompson dcthomp at sandia.gov
Wed Mar 23 18:01:39 EDT 2011


> Thanks again, and I took a look on the programmable filter code. In  
> my case the block consists of more than 1 million tetrahedrons and  
> it will be time consuming to run iterations. Is there a way that I  
> can export the cells and their corresponding point information to a  
> numpy array? The ultimate goal is to calculate the volume of each  
> tetrahedron.
>
> Your help is much appreciated!

There is a VTK-numpy bridge which is documented on the wiki. I don't  
recall exactly where but I'm sure a search engine will find it for you.

	David

> On Wed, Mar 23, 2011 at 4:45 PM, David Thompson <dcthomp at sandia.gov>  
> wrote:
>
> 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