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 <dcth...@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
_______________________________________________
Powered by www.kitware.com
Visit other Kitware open-source projects at
http://www.kitware.com/opensource/opensource.html
Please keep messages on-topic and check the ParaView Wiki at:
http://paraview.org/Wiki/ParaView
Follow this link to subscribe/unsubscribe:
http://www.paraview.org/mailman/listinfo/paraview