This is a world clock using Virtual Earth for the world clock. It uses Silverlight and Virtual Earth through the VIEWS wrapper (also a codeplex project). Originally it was created as a simple, but flashy :) demo of Silverlight for global aware
SilverTime is an example of a Silverlight application. Initially it was intended to be a quickly written demo for a presentation, with a global aspect. The VIEWS Virtual Earth Silverlight wrapper was chosen because it made it easy to get a map and reasonable
latitude/longitude coordinates from that map. Besides its really cool, and extreme overkill for a world clock :)
This was intended for flashiness, but I ran out of time to make the daylight savings times behave properly:
Things that'd be cool to do
- Daylight savings times are recognized, but the transition between daylight and standard time (and vice versa) is very inaccurate. DO NOT USE.
- I didn't really parse the data for the transition very well.
- I used the Pythagorean theorem to figure out how far from a timezone point a click is.
- This doesn't account for the fact that the earth is round, so some points are "closer" in real life, even though the latitude is way different.
- This only gets you the closest city. So if you click somewhere that in real life is within a time zone, but the closest known city is in another, you'll get inaccurate results (except that the city name may help you catch the error).
Again, I didn't do everything that'd be cool
Making it work
- It'd be nice to have better timezone regions, and perhaps the UTC+/- timezones for places in the middle of an ocean or otherwise lacking a nearby city.
- Highlighting the found city/point would be cool.
- Bird's Eye view for the found point would be fun.
- Comparing multiple locations would be fun.
- Etc., etc. etc.
- The tz data includes city/timezone latitude and longitude information.
Silverlight Virtual Earth World Clock
To just run it:
- Install Silverlight Beta 2 Runtime
- Download the release and unzip it locally.
- Open WorldClock.html
or to get the source project
Updating the Project
- Install Visual Studio and Silverlight Tools Beta 2 (not just the runtime)
- Download the project from the source code tab
- Unzip, open the project, Build & Run.
- You can grab new bits from the VIEWS project when its available (2 dlls and a .js file)
- You can grab the latest tz database. That's a bit more of a pain because it needs to be ported into the format of the data.cs file.