As part of my periodic hobby/obsession rotation, I'm working on my train layout again. This time I've put some effort into coming up with a layout that is workable, interesting, and free of obvious major flaws. The basic idea is this: a figure eight superimposed on an oval. I want to automate the running of two trains on that layout, preferably without them killing each other. Along the way, I thought it'd be fun to add sidings. Then someone at work suggested a passing track, and that's how I ended up with the final layout. The biggest constraints were height (this has to fit under the bed, so no grade separations) and size (a maximum of 4' x 2.5'). The length constraint caused me the most headaches, as the minimum turning radius I'd allow (9") caused curves to eat up real estate rather rapidly.
Here's how it evolved:
My first attempt at a figure eight in an oval. I built it using AnyRail. When last I tried a figure eight in an oval, I was using flex track for the X in the eight, and was having no end of trouble. This time, I used sectional track for the whole thing (well, for the version before the one in this screenshot -- I switched to 9" radius flex for the outer curves to make it fit). I also took some inspiration from Mike's Small Trackplans for directions for future revisions.
The layout got a name in this revision. It also got sidings. Still using sectional track for the X, though the outer curves are flex. S-curves abound. I liked the idea of having sidings at top and at bottom, because they'd allow for deliveries. That is, a train could pick up some cars on the bottom siding, and deliver them to the top. One notable disadvantage of running the sidings like this is that there will need to be reversing, most likely as the train enters the siding.
I also switched back to XTrackCad (AnyRail had been an attempt to escape XTrackCad's user interface) because I couldn't seem to figure out how to make AnyRail do the nudging that XTrackCad does. That is, XTrackCad accounts for the fact that track is flexible, and can be forced to fit (within reason, of course) even if the precise numbers used by the CAD engine say it shouldn't. As the design developed, I began to learn how to lay out track more precisely, and thus didn't need this leeway. I still stuck with XTrackCad, though.
Why not add a passing track, someone said. While you're at it, make the sidings come out from the passing track. This keeps them off the main line and eliminates an S curve. Easily said, harder to do. The sectional track is gone. I had to use 9" radius curves everywhere in order to fit within 4'. Furthermore, I had to make the layout taller so that the X would fit with the 15 degree crossing (the old crossing was much shorter).
This is the previous version, but with fully-developed sidings. I was also able to eliminate the need to back into the sidings by providing a second entrance. All interactions with the main line can be done at full speed. Trains needing to access the sidings themselves still need to back up, but they can do so on the siding track, between the two entrances. Unfortunately, I didn't quite understand how to spot S-curves, and managed to introduce a doozy for trains trying to access siding 2 from the left entrance (which they wouldn't do in practice, since they'd have to back in off the main line, but still...).
The latest version, with S-curves eliminated. There may still be a problem, though. There may not be enough room to get 3-car trains past S9 without intruding on the main line. I may need to reduce siding length in order to move S9 (and S7 and S10) to the right so that there's enough space.
Update: Nope, not enough space. Happily, there's plenty of room on the sidings. I may move S7 flush against S8, since S8's straight track will provide enough separation to prevent yet another S-curve.