Bond-centric Manipulation Tool

Hey Everyone,

Thought its about time we gave you an update on what we’ve been up to seeing
as we haven’t spoken to any of you in a while.

We’ve been doing a lot of thinking and designing, concentrating on trying to
find better ways to manipulate a molecule. We feel that the current way of
manipulating a molecule (atom-centric manipulation) isn’t relative to the
chemistry behind it, its more like just manipulating connected balls in 3D
space. For this reason we decided to look into ways of manipulating a
molecule based on adjusting bond lengths and angles instead, i.e.
bond-centric manipulation. We’ve come up with a design for this
bond-centric tool and started implementing it. The general idea is, using
an adjustable construction-plane one can adjust the angle and length of the
bond along that plane.

We’d love to add this tool into the repository but thought we’d just run it
by you guys first. We can always make a branch for it if you’d prefer it to
not be in the main trunk. All we’ll be adding is the files for the new
tool, and a few additional drawing procedures in the painter.

Let us know about the repository, and we hope this tool will prove useful to
you guys (when we complete it)!

Cheers,
James, Ross, Shahzad

This sounds awesome. It’s definatly something that chemists want.

First off, yes, we want this in the repository!

As far as the painter functions go, that’s cool too but it would be good
if you run them by some of the other guys like Marcus who has been doing
a lot with the painter stuff. It also seems like it might need a bit
of reworking as we want to implement a kind of general painter interface
for all type of canvases so keep that in mind i guess. Well, sounds
good. Can’t want to see it.

I haven’t seen much talk on here and i’ve been out on the road for the
past three weeks and working on another side project (companion to avo)
so i was so excited i wanted to reply.

In the future feel free to add new tools etc. Just make sure any
improvements to the main library and application compile and don’t
disrupt the other parts. Plugins are plugins for that reason, we want
them to be overabundant allowing people to pick and choose.


Donald

(Tue, Jul 17, 2007 at 10:59:23AM +1200) James Bunt james.bunt@gmail.com:

Hey Everyone,

Thought its about time we gave you an update on what we’ve been up to seeing
as we haven’t spoken to any of you in a while.

We’ve been doing a lot of thinking and designing, concentrating on trying to
find better ways to manipulate a molecule. We feel that the current way of
manipulating a molecule (atom-centric manipulation) isn’t relative to the
chemistry behind it, its more like just manipulating connected balls in 3D
space. For this reason we decided to look into ways of manipulating a
molecule based on adjusting bond lengths and angles instead, i.e.
bond-centric manipulation. We’ve come up with a design for this
bond-centric tool and started implementing it. The general idea is, using
an adjustable construction-plane one can adjust the angle and length of the
bond along that plane.

We’d love to add this tool into the repository but thought we’d just run it
by you guys first. We can always make a branch for it if you’d prefer it to
not be in the main trunk. All we’ll be adding is the files for the new
tool, and a few additional drawing procedures in the painter.

Let us know about the repository, and we hope this tool will prove useful to
you guys (when we complete it)!

Cheers,
James, Ross, Shahzad


This SF.net email is sponsored by DB2 Express
Download DB2 Express C - the FREE version of DB2 express and take
control of your XML. No limits. Just data. Click to get it now.
http://sourceforge.net/powerbar/db2/


Avogadro-devel mailing list
Avogadro-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/avogadro-devel

Ok well I’ve added a branch “branches/bondcentrictool” with our code in it
so that we can at least develop concurrently and have a backup and
versioning for our code. If you guys want to check it out feel free, but
its not fully functional yet as we’ve mainly been working on the back end of
the tool. More updates should come over the next week or so and hopefully
we’ll have a functional version sometime next week.

Please feel free to give suggestions for the tool itself, or on how to
improve our code, will be much appreciated!

On a side note, we’ve got a small issue with transparencies that if anyone
could shed some light on it it would be great. We’ve got two transparent
surfaces (the plane and the angle-sectors if you check out the tool so
far). The plane is truly transparent and we can see everything through it,
however the plane itself can’t be seen through the angle-sectors. I’m
assuming this is due to order of painting… is there any way we can get
both surfaces to be perfectly transparent? If not its no biggie, would just
look a lot better if we could get it painting properly.

Cheers,
James

What did you branch from? I think we have been working primarily on the
multithreaded_opengl branch. You might want to check that out cause i
think that’s where marcus’s changes to the painter are. In fact, unless
we want version 2 to be non-multithreaded, i think we should just merge
the branches.

Geoff, any input? I’m on the road until Friday so that would be
probably be a good time to merge the multithreaded_opengl branch back
into trunk.


Donald

(Tue, Jul 17, 2007 at 09:58:16PM +1200) James Bunt james.bunt@gmail.com:

Ok well I’ve added a branch “branches/bondcentrictool” with our code in it
so that we can at least develop concurrently and have a backup and
versioning for our code. If you guys want to check it out feel free, but
its not fully functional yet as we’ve mainly been working on the back end of
the tool. More updates should come over the next week or so and hopefully
we’ll have a functional version sometime next week.

Please feel free to give suggestions for the tool itself, or on how to
improve our code, will be much appreciated!

On a side note, we’ve got a small issue with transparencies that if anyone
could shed some light on it it would be great. We’ve got two transparent
surfaces (the plane and the angle-sectors if you check out the tool so
far). The plane is truly transparent and we can see everything through it,
however the plane itself can’t be seen through the angle-sectors. I’m
assuming this is due to order of painting… is there any way we can get
both surfaces to be perfectly transparent? If not its no biggie, would just
look a lot better if we could get it painting properly.

Cheers,
James


This SF.net email is sponsored by DB2 Express
Download DB2 Express C - the FREE version of DB2 express and take
control of your XML. No limits. Just data. Click to get it now.
http://sourceforge.net/powerbar/db2/


Avogadro-devel mailing list
Avogadro-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/avogadro-devel

On Tuesday 17 July 2007 16:19:27 Donald Ephraim Curtis wrote:

What did you branch from? I think we have been working primarily on the
multithreaded_opengl branch. You might want to check that out cause i
think that’s where marcus’s changes to the painter are. In fact, unless
we want version 2 to be non-multithreaded, i think we should just merge
the branches.

Geoff, any input? I’m on the road until Friday so that would be
probably be a good time to merge the multithreaded_opengl branch back
into trunk.

Yeah I have been working in the multithreaded_opengl branch and that is where
all my painter changes are. I will try to pull that together. I was hoping we
would be able to merge it back into trunk before we did another release. The
main thing is having virtual methods in the base Painter class that get
implemented by the GLPainter and others such as the POVPainter I am currently
working on.

Progress has been far slower than I was hoping due to lots of conferences and
real life things that keep leeching away my time. Should hopefully have some
cool new screenshots soon. See how the engines now only use the base Painter
and don’t need to worry about which painter they are actually being passed. I
think this needs a little more work and debugging but seems like a reasonable
approach to me.

I would appreciate feedback on the implementation. I do intend to add more
functions to the base class and remove all GL code from the engines and
probably the tools too.

On Jul 17, 2007, at 11:19 AM, Donald Ephraim Curtis wrote:

we want version 2 to be non-multithreaded, i think we should just
merge
the branches.

Geoff, any input?

I think it’s safer to consider me MIA until Aug. 20th or so. I may be
around (some) before then, but particularly after the wedding, I
doubt I’ll have e-mail access for a few weeks. (Thank god.)

But in any case, I suggest merging the branches. I don’t see a good
reason to release right now, and it sounds like the multithreaded
rendering experiments were generally successful.

So let’s merge and keep pushing for 0.2 or whatever we want to call it.

Cheers,
-Geoff

P.S. There will be a demo of Avogadro at the Apple booth at the ACS
meeting. Unfortunately, I won’t be there, so I don’t know how
compelling it will be. I sent a binary called 0.1.9 based on the SVN
trunk around July 10th. Still much better than the 0.1 release.

I merged off the main trunk, but I can always look into fixing it up so it
uses the multi threaded branch, unless I just wait for you guys to merge the
code and update ours at that point? I’m not at Uni today so I’ll talk to
the guys tomorrow and we can check out the multi threaded branch and see if
we can get our stuff working in that.

Cheers,
James

You should try to get yoru changes into the multithreaded_opengl. I’m
going to merge that branch back into trunk this weekend.


Donald

(Wed, Jul 18, 2007 at 10:04:33AM +1200) James Bunt james.bunt@gmail.com:

I merged off the main trunk, but I can always look into fixing it up so it
uses the multi threaded branch, unless I just wait for you guys to merge the
code and update ours at that point? I’m not at Uni today so I’ll talk to
the guys tomorrow and we can check out the multi threaded branch and see if
we can get our stuff working in that.

Cheers,
James


This SF.net email is sponsored by DB2 Express
Download DB2 Express C - the FREE version of DB2 express and take
control of your XML. No limits. Just data. Click to get it now.
http://sourceforge.net/powerbar/db2/


Avogadro-devel mailing list
Avogadro-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/avogadro-devel

We’ve currently got a few rather hefty bugs we’re working on, not sure if
they’ll be resolved by this weekend. Go ahead with the merge and we’ll
merge our code into the trunk once we’ve sorted all our bugs and updated our
code to work with the new painting system. Based on Marcus’s description of
the multithreaded painting system it shouldn’t require too many changes to
our code as we have abstracted all our painting into the painter already, so
it will just be a matter of implementing our drawing functions into the
opengl painter instead of the abstract painter.

James