octave-maintainers
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Handle graphics again


From: Sebastien Loisel
Subject: Re: Handle graphics again
Date: Mon, 13 Feb 2006 22:57:29 +0100


Yes, flattening the scene graph is probably back-end dependent to some degree. But I'd still like some help with it anyway, because someone who really groks HG has to tell me (who doesn't really grok HG) what to implement in C++.

Sorry about the private emails, the first one was accidental, and then you replied privately so I just went with the flow.

Cheers,

Sebastien Loisel

| > Can you give an example?
|
|
| Yeah. Basically HG is a scene graph. Drawnow essentially takes the scene
| graph and flattens it for the back-end. The flattening can still be generic.
|
| Also, it is not impossible for different HG object types to become the same
| for the back-end. A possible example is lines and axes. While in octave and
| manipulating the figure, you need to be able to say "the axes" and do stuff
| to them that you can't do to lines (and vice-versa). But once you display
| them on the screen, these semantics are gone and axes are just two lines
| with tick marks, which are in turn just more lines.
|
| That precise example may not be entirely accurate because the back-end can
| do something smarter with axes than it does with lines (like automatically
| set clipping regions and so on) but I was just trying to give an example.
|
| Another example is that rectangles, surfs and patches should simply be all
| turned into patches as far as the C++ is concerned.

I still don't see how drawnow can do more than just send the data
structure to the backend plotting engine.  Things that make sense for
your graphics backend (automatically converting axes to some lines,
for example) do not necessarily make sense for other graphics
backends.  I think the higher-level information must be preserved.

In any case, can we please keep this discussion on the list so that
others may participate and so that it will be archived?

Thanks,

jwe


reply via email to

[Prev in Thread] Current Thread [Next in Thread]