[vtkusers] Efficiently visualizing duplicate data in biological model

Paul Melis paul.melis at surfsara.nl
Thu Apr 30 07:28:55 EDT 2015


Hi,

(Sorry for the lengthy introduction below, I feel some detail is needed 
before framing my question :))

I'm working with output data from a simulation of certain biological 
cells, currently a few hundred of them. Each cell is modeled with a few 
hundred vertices and triangles and can deform and interact with other 
cells. There's both per-vertex data for each cell (like force), as well 
as per-biological-cell data for the whole cell (like volume, amount of 
deformation, etc). The two different sets of data are stored in separate 
HDF5 files per timestep and we're using Xdmf to read the cell geometry + 
per-vertex data in as VTK polydata for visualization.

The per-biological-cell data is stored as arrays of scalars indexed by 
biological cell ID. The (biological) cell polydata has a per-vertex 
"cellId" scalar value referencing this cell ID. For visualizing the 
per-biological-cell values (coloring a whole biological cell with one 
color based on the "cell-global" value) I'm currently using a bit of 
Python to add extra point-data arrays to the polydata for each 
per-biological-cell value, thereby massively duplicating the 
per-biological-cell values to each point/vertex. This works, but it's a 
bit slow already (I'm processing on-the-fly during reading) and the 
datasets will need to scale up to much larger numbers of cells. 
Duplicating the per-biological-cell values to each point-data array and 
storing them in a preprocess is doable, but wastes a lot of disk space. 
And the current separation of files for per-vertex and 
per-biological-cell data seems natural (although obviously they could be 
datasets in the same HDF5 file, but that wouldn't solve the duplication 
issue I'm pondering on).

I've tried to find good ways to handle this case in VTK (or even on the 
level of Xdmf), but don't see filters or operations that handle this 
case out of the box. Is there a better approach than the "manual" data 
duplication that I'm using at the moment?

Thanks in advance for any reply,
Paul

-- 

Paul Melis
| Groepsleider & Adviseur Visualisatie | SURFsara |
| Science Park 140 | 1098 XG Amsterdam |
| T 020 800 1312 | paul.melis at surfsara.nl | www.surfsara.nl |


More information about the vtkusers mailing list