Octave graphical objects (was: Handle Graphics implementation in Octave.)

N Smethurst <[email protected]>
Newsgroups gmane.comp.gnu.octave.graphics
Message-ID <[email protected]>
Le Mardi 11 Novembre 2003 09:47, Ole Jacob Hagen a écrit :
> Visualisation-application should also be able to
> change values of handle graphics objects.  
> This will have some drawbacks, since handle graphics
> objects are stored in two applications, both in Octave
> and visualisation-application.

This is an interesting point. Did you take a look at my page at 

http://kvisualiser.free.fr/dev/octavegraphics.html

specifically the second part about graphical object types? The idea goes like 
this.. 

I cannot see much point in duplicating data between Octave and the vis-app. 
The Octave end of things doesn't really do anything with the information 
unless the user requests it with an access instruction, and that is something 
that happens infrequently (relative to other processes).

Octave would not be responsible for generating any intermediate visualisation 
data of the low level graphical object types, since this is the job of the 
visualisation application.

Conclusion: why not just make the low level graphical objects in Octave simple 
communication stubs to the visualisation application? Then the only 
duplicated data would be an object ID. The only other information stored in 
the Octave graphical objects would be functionality unique to the Octave end 
such as callback function names for example. Similarly, this data stored in 
the Octave end would not need to be stored in the vis-app.

There's a very simple conceptual example in this file:

http://kvisualiser.free.fr/images/octave/graphicalobjects.h

I have included one or two object properties in each graphical object type. As 
you can see, there's not much there at all. The classes have no attributes 
apart from the ObjectID and an example callback string in the base class. All 
the classes do is relay the information to the comms language plugin, and 
return whatever it returns. The language plugin provides the correct syntax 
before the information packet is send to the vis-app. A simple graphical 
representation of this information path is on the octave page on my website, 
along with a class diagram.

Thus what would be the need for doubling up information that is essentially 
redundant in one of the two applications?

Nic
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.