Re: [Pyobjc-dev] VTK bindings
Brought to you by:
ronaldoussoren
From: Carlos P. <ca...@ci...> - 2003-12-06 19:41:03
|
> Do you parse the method arguments using PyArg_ParseTuple? See one of > the method mappings in the Foundation and AppKit wrappers for an > example of argument parsing. I have included my call_VTKView_renderer function below. I simply ignore the arguments since the method renderer does not take any arguments. Carlos static PyObject* call_VTKView_renderer( PyObject* method, PyObject* self, PyObject* arguments) { PyObject *result = 0; VTKView *objc_self = 0; vtkRenderer *renderer = 0; const char *rendererAddr = 0; // Get objc representation of self. objc_self = PyObjC_PythonToId(self); // Get the renderer renderer = [objc_self renderer]; // Convert pointer to mangled form rendererAddr = vtkPythonManglePointer(renderer, "p_vtkRenderer"); // Import the VTK module and get the vtkRenderer class PyObject *vtk_module = PyImport_ImportModule("vtk"); PyObject *vtkRendererPyClass = PyObject_GetAttrString(vtk_module, "vtkRenderer"); // Create a python object for renderer. If renderer has // already been wrapped in python, then the existing python object // is returned. result = PyObject_CallObject(vtkRendererPyClass, Py_None); return result; } |