Over the last week I have been trying to figure out the best way of
implementing ribbon view support. I have been researching what kind of curves
might be best to use and testing new painter functions to implement the
needed primitives. I have been using Bezier curves and GL_LINE_STRIPS to get
to grips with getting the lines right, and will move on to painting a ribbon.
Can I expect the elements of a residue to be in the order they should be
connected? So I can iterate through residues and for each residue draw
between each atom in that residue in order? Then it is a case of finding the
best method of smoothing the ribbon between atoms before extending the line
to a ribbon (GL_TRIANGLE_STRIP) or possibly a cylinder or something similar.
It may be that ultimately this will be better taken care of by a suitable
meshing library, but right now I was just trying to figure out the best way
of interpolating between the lines and getting the path the ribbon needs to
follow - that will be needed whatever we use.