Hi,
While I usually dislike answers that point to other technologies than the ones asked, I will bedoing that here.
As you might have seen, googling for Python OpenGL will yield a host of options. From raw unmaintained hard-to install bindings, to higer level 3D libraries that still allow low level OpenGL calls.
I am no 3D man -but I will recomend you to use Blender 3D. (http://www.blender.org/) -
it is a full featured 3D modeling + animation + presentation software, scriptable and controlable with Python. Wiithin it, you will have the camera viewer feature ready to use in the presentation mode (called "Game Engine") , there are python scripts to import 3ds files, yo can move the models either programatically from python or with the logic blocks -
and yes, it eve allows you to do low level OpenGL calls :-) (so it is not that out of the way).
I think it will have everything you want, and it willbe far easier to get there than scripting everything from the ground up.