Wednesday, September 24, 2003
PyArcObjects interim release
I've been hoping for the ability to use ArcObjects from Python for some time. In 9.x we are going to be able to do geoprocessing using Python - in fact it looks like Python will be the preferred language for geoprocessing - but the full suite of ArcObjects will not be exposed to scripting languages.
There has also been no visible progress with building a Python Universal Client counterpart to the Universal Gateway, so that Python can call ArcObjects through its custom interfaces, the same way that Visual Basic and C++ can.
So, I have resumed work on an idea called PyArcObjects, which is basically a custom module which injects native ArcObjects support into PythonCOM, the same way that MAPI and certain other custom interfaces are supported. Because of the sheer size of ArcObjects (thousands of interfaces), the support absolutely has to be auto-generated.
I have generated code to support all of the interfaces now. I haven't tried to compile it (no Visual C++ at home). Even if it does compile, I don't think I would trust it to behave correctly just yet. Nevertheless, I think it's a good start.
Those interested in peeking at this work-in-progress, and possibly helping me to make this real, please see the PyArcObjects package in the AVPython project on SourceForge.