(Tue, Sep 26, 2006 at 09:03:31AM -0400) Geoffrey Hutchison geoff.hutchison@gmail.com:
Without having to deal with this view class, in fact I dont
understand very
well the purpose of these class, should not be inside Engine class
and not
Molecule ?
Well, the last modifications i made changed this to a new “queue” type
system. You should see in the code now (and for the ball and stick
engine) that there is a function Engine::render(PrimitiveQueue *q) which
allows the engine to render; in linear time, all the primitives it
should render.
The GLWidget itself has a queue for each engine plus a queue for the
default engine. This way we can put primitives in multiple queues etc
(ie. when i want to render an atom and also render the residue sphere).
If that doesn’t make sense i’ll try to make it more clear.
I basically implemented the queue system and haven’t had the chance to
make the appropriate changes to all the Engines. But be assured, the
View classes are out for now. We are still sorta tossing around ideas
about how we want the rendering code to work. The View classes were my
first attempt at allowing for customizable rendering option for each
primitive.
I would suggest checking out the newest svn; rev. 62 and check out the
new queue type system. I believe it’s the best we have so far
especially considering optimization of GL rendering which is something
we are extremely concerned about.
My original design document for Avogadro suggested that the editor
itself should concentrate on a “one molecule at a time” view. Then to
handle multiple molecules, there’s a separate window(?) which allows
you to switch through a multi-molecule file. This other window would
have small 2D or 3D views of the separate molecules.
Well, eventually i’d like to see animation and loading of multiple
molecules per window (contained in a single file). I think the
restraint is “one file per window” which normally ammounts to one
molecule. I don’t think that it would be hard to implement either.
Like Geoff has said; think photoshop / gimp style. Of course we arent’
tyring to rip that off but we’re definatly trying to make the interface
similar so it is intuitive.
What do you think? I haven’t had a chance yet to get KryoMol working
on my Mac yet, although I did grab the code. Like Benoit, I’ve been
working on libraries (i.e., Open Babel 2.1).
I’m in the same boat. I’ve been working on some updates to Ghemical and
a research presentation. The next natural progression (as i’m so far
happy with the rendering setup) is to build the tool interface and start
getting our tool plugins going (drawing / erasing / etc etc).
Hope this helps,
Donald