Very nice applications. I wish I had had (
oh, how I hate the had hads) XAML and WPF for a project I worked on under contract at Canada Post. A "simple" application to visualise address label layouts against a 2D (would of used 3D with WPF) representation
of a mail sorting case(s).
The application had to automatically try to find the optimal layout for printing labels on mail sorting cases that made them easy to see, that covered the entire width of a slot in a case reserved for a particular address, and that had entire streets together
in a row, when possible, or else, "line-broke" into another section of the case if it overflowed horizontally, and of course automatically re-sort and re-flow the labels as the user resized "address sections" to fit the case in an "optimal" way, including
parameters such as the reach of the postal worker doing the sorting. And of course, allow the user to override certain labels as they know something the data doesn't, etc....
Printed addresses make up sections that vary in size but the application has to figure out how to make everything fit together right when printed out and applied to physical cases used to sort mail. We used simulated annealing to find the maximum size of street
names without displacing other numbers and street names, and while staying within a specific range to match the physical slots within 0.5mm acceptable error. That was fun, and not very hard. But cool to say
We did the graphics in GDI+. Managed DirectX was my first choice (in the non-beta category), but you needed another runtime, and we couldn't count on 3D acceleration anyways.
It took about 6 months, two developers (including me), one joining near the end to help out, and a great project manager.
Time is money for sorting mail. It's amazing that it's not 100% automated.