I attempted to get knotscape working, but the program hung when I clicked 
on one of the menu buttons (this might be an issue with Tcl or Tk). I was 
able to check out the link drawing utility linkscape, so I have a good idea 
of how that works. Since knotscape hung I don't know how it plots a knot, 
is it a 3D representation (similar to that of say Mathematica). In order to 
get knotscape to work with my linux distro I would probably have to 
downgrade Tcl and Tk to an older version, which I don't particularly want 
to get into right now.


 One of the knot theorists at my university, Alex Shumakovitch, expressed 
to me yesterday his desire for a particular kind of knot diagram 
manipulation interface that was more natural, or closer to how a person 
might manipulate an actual knot. While manipulating a knot diagram one 
often combines many Reidemeister moves into one, for instance when pulling 
an arc component over a complicated part of the knot. What he was saying is 
that it would be neat if you could do all of this manipulation on a 
computer without chugging through individual Reidemeister moves. I can post 
a scanned picture if this is unclear which will illustrate what I mean when 
I am at the university tomorrow.


 If you try to manipulate an actual real knot though you'll quickly run 
into a problem: parts of the knot become very complicated, a lot goes on in 
a small amount of space whereas other parts of the knot may not have 
anything going on. If you're manipulating a diagram on a computer you would 
want to be able to resize/readjust the diagram to create more room for 
these complicated parts.


 While I had originally conceived of something 2D, Alex gave me the 
impression that what he would like would be more useful. So I thought a bit 
about how his idea might be made to work:


 It would be pretty hard to do. You could plot the knot using OpenGL, or 
WebGL since most people use Sage through the notebook interface which runs 
on a browser. Instead of allowing a full 3D environment with no preferred 
viewing angle, which could end up being disorienting for the user, you 
could restrict the knot to a bounding box that is a thickened plate (say if 
your looking at it from the point (1,1,1), the area where the knot would be 
depicted would be in {(x,y,z) : -1 < x < 1, -1 < y < 1, -0.1 < z < 0.1} ). 
Below, I'm going to call this kind of depiction of a knot a “thickened 
planar drawing”.


 I haven't been able to come up with a good way of emulating physical knot 
manipulation yet, although I haven't had much time to think about it. It 
would have to be computationally feasible, so that probably rules out 
schemes which involve a lot of computational geometry (like intersection 
checking to make sure components of the link don't pass each other and stay 
reasonably spaced out). There is a whole area of knot theory called 
physical knot theory which might contain something useful? 


 Perhaps we could use the fact that the knot would be a thickened planar 
diagram, since it lies in a thickened plate, to reduce the amount of 
computational geometry that needs to be performed.


 The other part of the picture is how you resize/readjust the drawing after 
you have performed a manipulation. All I can think of at the moment is that 
you could look at a planar knot diagram for the drawing (just project down 
into the x,y-plane). You could then use a force-directed graph 
drawing<http://en.wikipedia.org/wiki/Force-directed_graph_drawing> algorithm 
to re-render/adjust the underlying signed planar graph that I mentioned in 
the last post. The graph then could be used to re-render the knot diagram, 
which can be translated back into a thickened planar drawing. 


 If we pursued this strategy of a 3D representation I don't think that any 
of the other things that I said, like linking numbers and surgery 
coefficients, could be simultaneously accomplished over one summer by one 
person. According to the scheme it's conceptually easy to recover a planar 
knot diagram from the 3D drawing, so another programmer could work on the 
project from that perspective (calculating everything from some planar 
diagram representation), while another person works on building a 3D 
manipulation tool.


I acknowledge that this direction for your project might be too involved 
for one summer. I think it might be possible to do though. Let me know what 
you think. I might not respond till Thursday because I teach back to back 
all day today and might be pretty tired when I get home.

-- 
You received this message because you are subscribed to the Google Groups 
"sage-gsoc" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
To post to this group, send email to [email protected].
Visit this group at http://groups.google.com/group/sage-gsoc.
For more options, visit https://groups.google.com/groups/opt_out.

Reply via email to