The GWR Locomotive Sketchpad

The what, you say? Easy. It’s a sketchpad. For Great Western Railway locomotives.

Alec Bray built the GWR Locomotive Sketchpad to allow you to design and mock-up steam locomotives based on the design principles of the Great Western Railway. (Not the most unexpected use of a Pi we’ve come across yet, but it’s right up there.) It’s a graphics-intensive, interactive program using the Lazarus IDE and the Free Pascal Compiler downloaded onto the Raspberry Pi and compiled natively.

Here’s a video about what the GWR Locomotive Sketchpad does. When I passed it around the office, Emma probably put it best: “It’s a bit like one of those tours that you get in National Trust properties: it’s really interesting to listen to. It’s not so great to watch.” Hang on in there. The static image changes about a minute and a half in.

Alec says:

In the course of development of the steam locomotive, designers tried out a
vast range of possible designs to make the locomotives more efficient, to be able to pull heavier loads, at higher speed and/or at less cost per mile. In the drawing offices of every locomotive manufactory, many designs were drawn up and examined to see, which, if any, could offer any advantages over the existing locomotive stock. This approach was true even for a railway which had a current stock of efficient – and relatively modern – steam locomotive designs.

The GWR Locomotive Sketchpad is designed to allow users, either by resizing and repositioning objects by means of a graphical interface or by entering critical dimensions and options in a form-based interface, to see what these projected locomotives might have looked like. The program also doubles as a very simple entry-level design program, as internal sanity-checking attempts to prevent impossible engineering.

If you’re ever around kids, you’ll be aware that for a lot of them, trains hold a strange fascination. It’s always been this way: hands up if you wanted to be a train driver when you grew up. Eoin, the son of our indefatigable trademark compliance elf Lorna, shamed me recently when I brought him a Babbage Bear and a book as a gift. I came into their house bellowing: “Hello Eoin! I have a present for you!”

Eoin replied: “Is it a train?” and then cried when it wasn’t.

Alec has designed the Sketchpad so that young computer users like a slightly older version of Eoin (who doesn’t have the motor skills to type yet, let alone code, but as soon as he can reliably use a mouse you can bet he’ll be dragging and dropping bits of trains around with the best of them) can also construct data files using any appropriate language, including Python, Perl, C, Visual Basic and others, and then their constructed files can be run through the GWR Locomotive Sketchpad to see what sort of locomotive they have made. Alex says that the trick here is to include sanity-checking in their code for the various dimensions and shapes. So kids are developing their programming and gaining an understanding of basic principles of physical engineering at the same time.

The GWR Locomotive Sketchpad application is available through the Retail shop at the Great Western Society at Didcot – you can email the shop manager if you click on “Sales” and request a copy (e-commerce has not really hit Didcot yet). Alec says that although this is a commercial application in one sense, all the money raised apart from materials costs goes to support the Great Western Society in its work in preserving our steam locomotive heritage. Didcot Railway Centre is an accredited museum and the GWS is a charity.

This project has a wonderful air of English eccentricity about it: it’s not one of your polished, super-commercial pieces of software, and it won’t be for everybody. But I know that for some people, the GWR Locomotive Sketchpad is the sort of sandbox you’ll happily play in for hours at a time. Let us know what you think if you order a copy.