In a ParaView custom application, I have a “textured representation” class which is derived from
vtkGeometryRepresentationWithFaces. The purpose is to allow draping a texture over a triangulated surface that “understands” reading georeferencing information from ESRI world files or GeoTIFF files.
The real action is within a “geometry filter” that is derived from
vtkPVGeometryFilter. Within that filter, within the
RequestData function, a
vtkTextureMapToPlane object is initialized with the origin, point1 and point2 from the georeferencing information.
The last steps are finally:
// the current output will be the input for the original function call inInfo->Set(vtkDataObject::DATA_OBJECT(), textureMap->GetOutput()); // do the job of the parent class as if the textured topo was the input Superclass::RequestData(request, inputVector, outputVector); // clean up: set the input back to original inInfo->Set(vtkDataObject::DATA_OBJECT(), topo);
the topo variable was previously read from the info data object. This setup I somehow empirically developed by analyzing existing code, and somehow it worked until ParaView version 5.8.0.
Now I converted all to ParaView version 5.9.1, with not much trouble. But now I see that the above functionality does not work any more: I am tracking the function calls in my custom code, all the calculations and calls are done like before and without problems, but at the end I simply do not see a texture on the triangulated topo surface (polydata object)!
Question: Any hint regarding what could have changed regarding the texturing of geometric objects between version 5.8.0 and 5.9.1?
My guess (or my hope…) is that I only need one more function call or “switch” and the entire functionality would come back. Only I do not know which “magic function call” might be the right one!