[vtkusers] SWIG'ed module and python-vtk
Bram Stolk
bram at sara.nl
Wed Jul 26 10:36:10 EDT 2006
Hi there,
If I swig a API with references to vtk classes, I get a class
in type names when interfacing with python vtk.
When presented with a 'vtkObject*', SWIG will be expecting objects
with the named type '_p_vtkObject'
I tried to accomodate this by removing the '_p_' prefix from
the type name, but even then there is no match:
TypeError: argument number 1: a 'vtkObject' is expected,
'vtkobject(vtkOpenGLActor (0x825b6f0)
xxxx
)' is received.
When looking at the vtk4.4 sources, however, I see some traces
for SWIG accomodations.
e.g. In file Common/vtkPythonUtil.cxx I find:
//--------------------------------------------------------------------
// mangle a void pointer into a SWIG-style string
char *vtkPythonManglePointer(void *ptr, const char *type)
{
static char ptrText[128];
sprintf(ptrText,"_%*.*lx_%s",2*(int)sizeof(void *),2*(int)sizeof(void *),
vtkConvertPtrToLong(ptr),type);
return ptrText;
}
So... has anyone figured out to use the vtk python module with
a 'roll-your-own' swigged module that uses vtk objects?
thx!
Bram
--
Bram Stolk, VR Engineer SARA, Amsterdam. tel +31 20 592 3000
"Windows is a 32-bit extension to a 16-bit graphical shell for an 8-bit
operating system originally coded for a 4-bit microprocessor by a 2-bit
company that can't stand 1 bit of competition."
More information about the vtkusers
mailing list