As far as the browser goes, the main entertaining things I've been
thinking about involve animation. Mainly animating pans along the
chromosome and animating zoom level transitions. I was thinking I'd
have to justify that kind of functionality with the argument that it
helps you keep your gut sense of where you are if the application can
engage your visual system's object tracking functionality. But I think
it's also fun, or at least when I put together the experiment below I
spent some time clicking on the arrow buttons-
http://genome.biowiki.org/test/boatdiv/boat.html
I think the animation above is cool because it uses a non-linear
function (cos) to control the pan (and some of the js frameworks have
even fancier animations that begin to approach physics-model
slickness). At some point I intend to put that pan animation into an
actual browser.
The original idea behind that experiment was to see how many divs the
browser could handle before it started to bog down. When I was looking
at the Simile::Timeline demos, the panning was pretty slow on Linux
(although it was much smoother on windows and mac). I wondered whether
the slowness came from the number of divs or from how wide the view
was. On my hardware on linux the demo above can do a few thousand divs
before panning starts to slow down, so I think if we do a good job of
attaching and detaching things from the DOM (rather than having a very
wide view like Simile::Timeline does) then a div-based genome browser
could be pretty snappy. Especially if we switch to a feature-density
plot when the view starts to get busy.
It works in Firefox, Safari, and IE 6. IE doesn't like the manual
dragging for some reason, but the animation works fine.
Mitch
|