Also, a question: why use collection objects? The
> implimentation doesn't strike me as being much faster
> rendering wise, but maybe I'm wrong. Is it just so all
> the objects can be manipulated all at once by changing the
> state of the collection?
collections aren't as fast as they can be, mainly because they use
sequences of python objects rather than numeric arrays, so all the
object coercion still has to be done. Their primary efficiency is the
avoidance of repeated object creation and their attendant function
calls and setting the graphics contect.
Eg, if you create 10000 Line2D objects, you will pay for 10000 object
creations, 10000 separate transformations, 10000 calls to the renderer
draw function, and 10000 settings of the gc state.
With a collection, you have a lot less overhead, but they are still
too slow for some purposes.
> Also, is there any particular
> reason the collections only accept verts or segments,
> instead of being able to just send it a patch or line
> object and have the collection object extract the relevant
Currently the collections are designed to be flexible (eg, each polygon can
have separate color and width properties) and reasonably fast. They
are not particularly easy to use, so some helper functionality would