[Paraview] Rendering mixed translucent and opaque surfaces in parallel

Moreland, Kenneth kmorel at sandia.gov
Thu Oct 2 16:29:39 EDT 2008


If I understand your email correctly, you are defining a lookup table in a
"VTK Legacy" file and expecting to use that table is ParaView.  To be
honest, that mode of operation is not well supported by ParaView and I'm a
little surprised that it works at all.  There must be a VTK rendering
component grabbing that LUT without ParaView noticing it.  That would also
explain why it stops working when rendering translucent in parallel.  The
translucent parallel rendering does a redistribution of data, at the lookup
table could easily get stripped during that process.

My advice is to not attempt to define a lookup table in the data file.  Use
the color map editor provided by the ParaView GUI (which also allows you to
save and restore maps and to import from and export to XML.  If you really
want to assign colors in the data files, then declare a field array
consisting of 3 or 4-tuple unsigned chars and then render them in dependent
mode (uncheck the "Map Scalars" button in the Display panel).

-Ken


On 10/2/08 10:24 AM, "Gregory D Abram" <gabra at us.ibm.com> wrote:

> I might be doing this wrong, but here goes.  I have a set of points and
> associated atomic numbers, and a volume field.  I want to render spheres
> colored appropriately for the atom type, and combine them together with
> translucent isosurfaces of the volume.
>
> In a filter, I map the atomic numbers to an index (called "mapped atomic
> number"), and attach a color lookup table to that point data set which maps
> the indices to the color thats appropriate for the atomic number.  Thats a bit
> awkward; my LUT has three elements per index, essentially mapping
> (index-0.333) to (index+0.333) to the color for that index.  Then I pass that
> through the Glyph3D filter and render, and when I tell it to color by "mapped
> atomic number" I get what I expect, both when I tell it to composite and not,
> parallel or not.
>
> Unfortunately, when I embed the glyphs in a translucent isosurface it seems to
> drop the lookup table.  If I run on 2 nodes and tell it to composite, half the
> glyphs are colored without regard for the LUT.  If I tell it not to composite,
> none of the glyphs are rendered using the LUT.
>
> Fooling around in the debugger, it seems it uses vtkPolyDataWriter and
> vtkPolyDataReader to serialize and de-serialize the data thats being exchanged
> between nodes.  I coded up a little experiment that creates a
> vtkUnstructuredGrid similar to my input data with a LUT, glyphs it and
> vtkPolyDaWriter's it.  The output vtk file doesn't show the LUT, making me
> think the LUT is getting dropped when PV moves the data from node to node.
>
> Help!  Is there another way I should be doing this?  Alas, for the moment I
> need to use PV2.
>
> Greg
>


   ****      Kenneth Moreland
    ***      Sandia National Laboratories
***********
*** *** ***  email: kmorel at sandia.gov
**  ***  **  phone: (505) 844-8919
    ***      fax:   (505) 845-0833





More information about the ParaView mailing list