Graphics objects -- yet more design descisions

"Shai Ayal" <[email protected]> Sat, 17 Jun 2006 19:11:50 +0300
Newsgroups gmane.comp.gnu.octave.graphics
Message-ID <[email protected]>
Hi fellow object graphics developers (in other words: Bill)

One of my goals for octplot 0.4.0 is to implement most of the 2D graph
types. The one that has been giving me the most design problems so far
is quiver.

On the face of it, quiver is nothing but a bunch of lines, and could
be implemented using line objects just like contour (maybe grouped
under a group object). However, the typical quiver graph will have
100s if not 1000s of lines, unlike the contour graph which typically
has <100.

Thus a quiver graph would polute the axes with many child lines, each
and all of them trivial (i.e. just connecting two points) costing
memory and time overhead of many objects.

For this reason I am now a bit in favour of making quiver an object in
it's own right, just like a surface can actually be thouhg of a
collection of patches, but still gets it's own object type.

The pros:
* avoid polluting the "handle space" with 100s of trivial line objects
* memory overhead and rendering time greatly reduced

The cons:
* a new, non matlab(R) compatible object type
* not entirely consistant with the object graphics idea where high
level graphs do not get a dedicated object (i.e. no contour, plot,
pcolor object types)

What do you say?

Shai