Simone Seagle

Simone Seagle

Independent Web and Educational Software Developer

Read More


Prev Next
The Weather Lab

The Weather Lab

June 7, 2017 Simone Seagle

Today I had the great pleasure to install four programs that I wrote as an intern last summer. The exhibit itself is set to open in the Anderson Abruzzo International Balloon Museum on August 1. I am very excited! I plan to take pictures in place once it opens. Here's a screen-capture montage of the videos in action:

The beautiful art was done by a fellow student, Eli Menchaca. Eli found a beautiful animation of a coffee bean morphing its way from bean to mug while teaching about coffee production. That lead us to create a similar idea where the user is following the path of a different object in each program - A drop of precipitation, a photon from the sun, a satellite, and a storm cloud.

The four Weather Lab Program Screens

The programs are VERY animation intensive. As the user drags an object along a path, almost everything on the screen changes dynamically. Because of this, I needed a very robust animation platform. I might have used Flash if I didn't hate it so much and it didn't cost so much money. Instead, I used WPF. While it is limited to Windows computers, that's not a problem when you get to help pick the machines.

The animation timelines were almost all made to be scrubbable, which you can see in action in the video. I did a lot of fancy tricks with WPF data binding in order to make everything synchronize to the motion of the "character" along its path. I used starting and ending points to create a very long array of points along that path geometry, and the location of the character was converted to a percentage. I had a lot of issues with the scrubbable animations and memory leaks, but eventually I got them under control.

A side note: today I discovered that I can record screenshot videos using built-in Windows 10 features. Frankly there haven't been that many times I've been excited about Windows 10, but when I found this article, I literally yelled out "f*** yeah!" because I'm a geek. Then as usual, I used the glory that is Photoshop to edit the video.