OpenChem is an Open Source program for investigating nanotechnology, molecular structures, machines, and phenomena.
The prototype of OpenChem implements the basic features of a molecular construction and vizualization program. It loads and saves pdb files, rotates and translates molecules or parts of molecules, allows for structure creation and editing, and geometrical optimization by energy minimization.You can download source code here.
Also, see John Michelsen's OpenChem page and Chris Phoenix's OpenChem page.
Here is an image of the OpenChem user interface:
A sequence showing the arcs between overlapping atoms that reproduces 3D-like behavior from circles, as the left atom is moved toward the viewer from 0 to 45 degrees.
OpenChem is implemented as a python GUI calling the Rasmol rendering engine, written in C. Energy minimization is provided by a MM3 engine.
Also in the works are molecular dynamics capabilities, a PM3 semi-empirical quantum mechanics module, an interactive brenner hydrocarbon potential, and an interface to Ralph Merkle's tube.c molecule generation program.
A prototype of OpenChem is available here. It is a python script utilizing Tkinter and Pmw.Discussions about OpenChem are happening mostly on Will Ware's NanoCAD mailing list.