Ad

How To Use VtkInformation Objects In VTK?

- 1 answer

I am trying to pass some extra information (string data) in a vtkMultiBlockDataSet using its meta data vtkInformation container. I have problems retrieving the data from the information object. The following code in python shows the problem:

import vtk
from vtk.util import keys

mb = vtk.vtkMultiBlockDataSet()
mb.SetBlock(0, vtk.vtkPolyData())

metaData = mb.GetMetaData(0)
key = keys.MakeKey(keys.StringKey, "Key", "x")
metaData.Set(key, "Value")

# Going to some other place in space and time    

key2 = keys.MakeKey(keys.StringKey, "Key", "x")
print metaData.Get(key2)

The print in the last line prints None.

How is it possible for me to retrieve the value of Key from the information container without using exactly the same key? (Using key in the last line above, prints the correct value)

Ad

Answer

As @Mathieu and @normanius pointed out: It is not possible. Instead vtkFieldData can be used to transfer information through the vtk pipeline.

Ad
source: stackoverflow.com
Ad