Switching focus

Over the last weeks I have been spending time on KDEPim and KMail in particular. Various usability and feedback issues have been fixed that bothered me before and I find KMail to be a lot more pleasant to use, fixing bugs beats working around them any day!

I have been struck with the complexity of C++ and moc and all that. Steep leurning curve! It took me hours to implement something that I would have done in 15 minutes in Java. It turned out i hit various bugs in GCC and limitations of what moc can do. Whats more is that I wanted to shift focus again, so I created an applet for our worldwide.kde.org website since that has been growing and usability has gone down at the same time.
Worldwide.kde.org has so many names up that it becomes useless without a zoom function in most of europe, but also outside. So I made a zoom function.

I downloaded the huge nasa BlueMarble image of earth (21600 pixels horizontal) and wrote an applet that ships with a 600x300 jpeg and allows you to zoom in on it all the way up to the full res image which means you still have a nice picture at 200x zoom.
I found it quite funny that 2 days after I finished this applet google came out with their new google.earth. Well, mine actually runs on all platforms, not just Windows.

Next I got the coordinates and names as used on Worldwide from Rainer Endres, who maintains the Worldwide database. So I wrote a parser and renderer for that data. Which was the easy part. Then I spent about a whole day writing and tweaking a placement algorithm so names don't overlap and make things unreadable. I think I succeeded quite nicely there :)

After some more bugs are squashed expect it to be shown on Worldwide, as Rainer liked this addition. For now, here is a screenshot:

and for the impatient; here is a jar you can start using 'java -jar': worldwide.jar


Of course I'm one of the impatient ones and downloaded the jar. Beautiful application!

By Cornelius Schumacher at Wed, 07/13/2005 - 09:21

Yeah, I'm an impatient guy two. It's a great Applet, but I have two suggestions:
1. add a feature to drag the map (hold the mousebutton down and move the mouse -> moves the map accordingly).
2. Resize the map to fit the window when resizing the window. Of course this will not be necessary, when putting the applet on the web page, but it would be a nice feature :-)


By Till at Wed, 07/13/2005 - 10:29

By popular request; I updated the jar to implment dragging, as you describe.
Man, I should have done that longer ago, quite usefull, indeed :)

Your point 2 is something I'm not sure about. I tend to make a window bigger in order to see more just outside the window. So I would not like the map to be rescaled to fit. Perhaps I should rescale when non-map areas become visible. I'll play with that later.

By Thomas Zander at Wed, 07/13/2005 - 11:06

The applet looks already very good though usability could IMO be improved by:

- Adding drag-zoom instead of/in addition to drag-move, i.e. left button -> zoom, right button -> move. Alternatively, add some way to change between the two modes.
- Add a button for resetting the view/zooming out completely.

By Ingo Klöcker at Wed, 07/13/2005 - 12:34

and searching for names, and showing more info per user in a tooltip or something, and night/day coloring and probably more..
Go ahead, source is at:
darcs get --partial http://members.home.nl/zander/worldwide

By Thomas Zander at Wed, 07/13/2005 - 14:40

Very cool! I don't quite understand where you're getting the map data from on zoom. I presume it is downloading it from Nasa. It would be nice to see the source too (whoops I just noticed your post about darcs). :)

By Navindra Umanee at Thu, 07/14/2005 - 03:37