witchy

Track transition curves

Recommended Posts

53055369216_bf7b62b387_c.jpg

Real railroads don't use curves of constant radius from beginning to end because it creates abrupt changes of curvature, leading to theoretically infinite jerk. Instead, track transition curves are preferred, with the Euler spiral being the classic "ideal" example (although technically speaking it is not actually ideal for reasons I won't go into in this post). However, it appears that this practice is almost unheard-of in LEGO trains, with even clubs with high resources building large layouts seemingly relying on constant-radius curves everywhere.

I find this dissatisfactory and decided to do something about it. I developed a calculator for laying out custom combinations of curved track in increments of 5.625 degrees (16 segments per 90 degrees) and determining where the resulting curve ends up, with the end goal of producing curves that match the existing standard curves in net radius, even though the individual components have differing radii. This makes it easy to develop and verify custom curves with proper transitions.

53055600540_da97591e8f_o.png

Curve calculator (.ods format; it might be compatible with Microsoft Excel but if you're having problems, LibreOffice is free, requires no account, and doesn't spy on you)

The calculator is operated by inputting the radius of each 5.625 degree segment in the corresponding field F2 to F17. When working with smaller-radius tracks you need to fill in a number of fields that matches the length of the curve piece you're using; for pieces of 11.25 degrees you need to fill in 2 fields (for example, the "56" in F4-F5), and for 22.5 degree pieces fill in 4 sequential fields (for example, the "40" in F6-F9). By default fields F10-F17 will mirror the contents of F9-F2, producing symmetric 90-degree curves. To calculate curves other than 90 degrees, you can override these values with your own input.

The "Total" fields I19 and J19 show the total length of the curve on the X-axis and the Y-axis respectively, measured in studs. If the curve is symmetric, these values should be the same. If this value is very close to a standard curve radius (e.g. 72.01) you should be able to substitute the curve specified in F2-F17 for a curve of that radius with no problems. If the value differs from a standard radius it requires an offset, which equals the amount of straight track that needs to be added to the ends of the curve to line it up with the matching standard radius (in the example picture, the curve has a net radius of 64.07 meaning that a 8 studs long straight track at each end lines it up with a standard R72 curve).

Below the calculator is the visualiser graph. This plots the length of the used segments on the X-axis, and the curvature (the inverse of the radius; the smaller the radius the higher the curvature i.e. the tighter the curve) on the Y-axis. An ideal Euler spiral would look like a triangle or a trapezoid. As we are dealing with track pieces of specific lengths and radiuses, we always get a stepped graph instead, but if the stepped line on the visualiser is close to a consistent diagonal the curve is a decent approximation of the Euler spiral. As we can see in the example, the graph is pretty close to a trapezoid with a short top, meaning that the curve achieves close to ideal transitions. A standard curve of constant radius looks like a rectangle.

If you want to use the calculator for curves that aren't 90 degrees, you can replace the segments you aren't using with segments of the net radius you're aiming for. For example, to calculate a Rn104 curve of 67.5 degrees, you can set F14-F17 at 104 and build your curve in the remaining fields F2-F13. This makes the offsets slightly harder to calculate, but if you manage to get close enough to the target net radius it won't matter.

At the right side of the sheet I have recorded a number of curves I've found using the tool, with the example curve being called 72sb2o8.

The "72" stands for the net radius, meaning that this curve is what I call an Rn72 curve, i.e. it can substitute a R72 standard curve.

The "sb" is the identifier of the curve's family and variant; I have a number of different families of curves with identical or related profiles, each with a letter code. This curve belongs to the S family, which is notable for being close to Euler spirals, and is specifically the variant Sb. Curves with the same identifier have an equal profile, meaning that their segments have the same relation to the net radius. For example, Sb starts with one segment of 7 steps (112 studs) greater radius than the net, then one segment of 1 step (16 studs) greater than Rn, then 2 segments of 1 step smaller, and finally 4 segments of 2 steps smaller than Rn before being mirrored on the other end. A hypothetical curve 88sb2o8 would start with 1x R200, then 1x R104, then 2x R72, then 4x R56 and mirrored, with each segment having a 16 stud larger radius than in 72sb2o8.

The "2" stands for the apex tightness; the curve is R40 at its tightest, which is 2 steps smaller than Rn72. If the apex was R56 instead, this number would be 1, and so on.

Finally, the "o8" stands for the required straight offset. Adding a straight track piece of 8 studs brings the curve to the net radius value of 72. If the offset code is o1 it means that 1 stud of straight track is required. On some curves the offset is denoted with an X instead of an O. This means the offset is negative; instead of adding a straight track section the adjacent straight has to be shorter by the corresponding value. For example a curve with x2 needs to be paired with 14 studs long straight sections at each end to fit in its net radius. This is a lot more inconvenient, so I've generally avoided those curves. If no offset is needed, this code is absent.

Thus, we get the full code 72 (net radius) sb (family and variant) 2 (tightness) o8 (offset). Other example codes are 120b1 (net radius = Rn120, curve family B main profile, tightness of 1 i.e. the apex of the curve is R104, no offset required) and 168dc1x1 (net radius = Rn168, family D variant Dc, tightness 1 = apex R152, and negative offset of 1).

In addition to 90-degree curves, I've developed some 45-degree, 22.5-degree, and 180-degree curves.

I have also created a BlueBrick file visualising a number of the curve families I've created, with the different radius versions laid out next to each other with some comments about the family:

53055803263_fa5880e6ed_c.jpg

(example image, the actual file contains significantly more curve families)

BlueBrick file

Because BlueBrick doesn't have the full portfolio of available track pieces some families do not have all of their curves represented, but most curves of most families are.

The weird code under the profile family name is the profile specification; each number of letter denotes one 1/16th of a 90-degree curve segment, with 0 meaning a segment of the same radius as the net radius of the curve, positive numbers meaning a larger radius, and letters meaning a smaller radius; for example on a Rn72 curve 4-11-aaaaa+ means 1x R136, 2x R88, 5x R56, then mirrored (the "+" sign at the end). The value after the slash is the error in studs; a single slash like "/0.4" means the error is in the positive offset direction and a double slash "//0.4" means it is in the negative offset direction.

I haven't tested these curves physically yet, and I don't have the space for a large layout, but at least visually and in theory they seem significantly improved over the constant-radius standard curves, in both aesthetics and running qualities.

I developed the curves and the theory on my own, after finding no existing information on LEGO track transition curves. After hours of looking if anyone else has tried this, I managed to dig up a Flickr post from 8 years ago and the 2021 Fx Bricks track reference with some prior art, but Michael Gale's curves mix straight pieces with curves, creating exactly the abrupt changes in curvature that I wanted to avoid, and FX bricks only has one curve which I consider suitable for 180 degrees when doubled (the R56 end has an abrupt curvature change when used as a 90-degree curve), which has a slightly different profile to my U and V curve families.

Edited by witchy

Share this post


Link to post
Share on other sites

53054815912_ec92c517fc_c.jpg

In addition to the calculator and its visualiser, I developed a visual/tactile tool for demonstrating and working out curvatures, which I call "Euler blocks" or "curvature blocks". These are colour-coded blocks built from LEGO, each corresponding to the shortest curved track piece (that conforms to the 5.625 degree division) available for a given radius. The width of the block equals the length of the corresponding track piece, the height of the block equals the curvature, and the number of vertical dashed stripes denotes the number of 5.625 degree segments the block represents

53055588444_4b0b886538_c.jpg

To measure the curvature changes of a curve with these blocks, you set them side by side against a straight bottom edge, in whatever configuration you wish. The resulting shape is what the spreadsheet's visualiser would give you. The widths of the blocks are exact, and the heights are accurate to less than 0.25 plates. You can count the number of coloured stripes to calculate the total angle of the curve; 16 stripes for 90 degrees, 8 stripes for 45 degrees, etc.

The curve shown in the above image is 72sa2, a curve with the net radius of Rn72, an apex of R40 (tightness value 2), and an error of 0.2 studs compared to a standard R72 curve.

Unfortunately the curvature blocks cannot determine the net radius of a given curve, as there is no simple way to translate length to X-axis and Y-axis distances for curves of varying radius, but if you have a curve in front of you that works, you can use the blocks to see how abrupt its curvature changes are without needing a computer.

Curvature blocks studio file

Edited by witchy

Share this post


Link to post
Share on other sites

I like this a lot. It's something I've been thinking about off and on since I bought some wide-radious curves because one of my somewhat dodgy models does not like jerk at all. Most obvious with Lego official points because of their horrid curves, and the crossover is almost as bad.

This setup is also a good way to gently encourage rolling stock to turn tighter than you think it really should :)

Share this post


Link to post
Share on other sites

Hello there! I need some help and advice. I need to build two lego train rounds, not ovals, rounds! We can use 16 of this track https://rebrickable.com/parts/53400/vehicle-track-train-plastic-rc-trains-curved/ and will get a round of 68cm diameter, but a need a bit larger. Let's say 80 cm. Any ideas? Should be compatible with axles on these wheels https://rebrickable.com/parts/57999/train-wheel-spoked-with-technic-axle-hole-and-rubber-friction-band/

 

Share this post


Link to post
Share on other sites
On 8/21/2023 at 9:49 AM, Aleh said:

Hello there! I need some help and advice. I need to build two lego train rounds, not ovals, rounds! We can use 16 of this track https://rebrickable.com/parts/53400/vehicle-track-train-plastic-rc-trains-curved/ and will get a round of 68cm diameter, but a need a bit larger. Let's say 80 cm. Any ideas? Should be compatible with axles on these wheels https://rebrickable.com/parts/57999/train-wheel-spoked-with-technic-axle-hole-and-rubber-friction-band/

 

Using third-party R56 track would get you a diameter of roughly 90cm. At least Trixbrix and HA Bricks have R56 track available in Europe. Other than that, another option is using straight sections between some of the curves. Alternatively, mixing R40 and R56 curves (specifically, every other piece R40 and every other R56) would net you a diameter very close to what you're looking for. In the latter two options the frequent curvature changes may make the tracks and the trains running on them look a bit weird.

Share this post


Link to post
Share on other sites
21 hours ago, witchy said:

Using third-party R56 track would get you a diameter of roughly 90cm. At least Trixbrix and HA Bricks have R56 track available in Europe. Other than that, another option is using straight sections between some of the curves. Alternatively, mixing R40 and R56 curves (specifically, every other piece R40 and every other R56) would net you a diameter very close to what you're looking for. In the latter two options the frequent curvature changes may make the tracks and the trains running on them look a bit weird.

Thank you for your reply! I'm afraid I need the ring because I/m going to build not a train but a ring crane, so straight sections may not feed.

Share this post


Link to post
Share on other sites
3 hours ago, Aleh said:

Thank you for your reply! I'm afraid I need the ring because I/m going to build not a train but a ring crane, so straight sections may not feed.

Pick one:

WhatsApp%20Image%202021-05-03%20at%2009.

 

Share this post


Link to post
Share on other sites
6 hours ago, Aleh said:

Thank you for your reply! I'm afraid I need the ring because I/m going to build not a train but a ring crane, so straight sections may not feed.

Would narrow gauge track work? R48 would be quite close to the size you're looking for. Otherwise the most reasonable option is to accept a slightly different size from standard R40 or R56 track. If you like spending a lot of money it is also possible to brick-build rails to the exact specification using 32028 but that is a lot of effort and expense.

Share this post


Link to post
Share on other sites

@zephyr1934 Trixbrix offers definitely what I'm looking for! Thank you!

@witchy Thank you! Now need to decide what radius do I need. What radius does standart plastic curved track have? I think 34cm.. I'm I right? Because I will base my calculations on this parameter...

Potentially agreed about R48.. But I will built some prototype of the carrige fiirst to escape buying wrong tracks..

And very important note - I need inner and external rings pretty close to each other.
A lot of things to take into account during designing the chassis...
 


 

 

Edited by Aleh

Share this post


Link to post
Share on other sites
On 8/25/2023 at 7:58 PM, witchy said:

 If you like spending a lot of money it is also possible to brick-build rails to the exact specification using 32028 but that is a lot of effort and expense.

100 parts cost $1.5 approx. The question is I can't imagine at the moment how to build a custom track from them of the standart size

Edited by Aleh

Share this post


Link to post
Share on other sites
56 minutes ago, Aleh said:

What radius does standart plastic curved track have? I think 34cm.. I'm I right? Because I will base my calculations on this parameter...

Official Lego track is R40, I believe.

Share this post


Link to post
Share on other sites
13 hours ago, Murdoch17 said:

Official Lego track is R40, I believe.

But here I measured 68cm as a diameter   (101 second)

 

Share this post


Link to post
Share on other sites
2 hours ago, Aleh said:

But here I measured 68cm as a diameter   (101 second)

SNIP

 

The 40 is in studs, not CM. Also, I may be wrong, but I *think* R stands for radius, meaning it's 80 studs from side to side. @zephyr1934 or the moderators might know more. I don't think about these things... I just lay down track, not thinking about such things!

Edited by Murdoch17

Share this post


Link to post
Share on other sites
55 minutes ago, Murdoch17 said:

The 40 is in studs, not CM. Also, I may be wrong, but I *think* R stands for radius, meaning it's 80 studs from side to side. @zephyr1934 or the moderators might know more. I don't think about these things... I just lay down track, not thinking about such things!

Got U! Appreciate, thanks!

Share this post


Link to post
Share on other sites
On 8/28/2023 at 10:07 PM, Aleh said:

100 parts cost $1.5 approx. The question is I can't imagine at the moment how to build a custom track from them of the standart size

53152498921_aec7042a57_c.jpg

53151922982_c80690afcb_c.jpg

53152704404_194845ae37_c.jpg
 

53152518186_b125233e0d_c.jpg

Like this. Cost (in efficient colours) is around £2/2studs, or around £300 for a circle of R50 (80 cm diameter).

I've tested the narrow gauge equivalent and it works, at least in large enough radii. In tighter radii it may be necessary to build each rail independently so that the outer rail has more segments, to make the gaps smaller. This is left as an exercise to the reader.

The plates with the rail need to have 4 studs and 2 plates between them, otherwise they will interfere with wheel flanges as the regular rails are slightly narrower than the thickess of a plate. The flex hose sections should be lapped so that the joint of one is in the middle of another. The print on the studs of the wedge doesn't seem to foul the snot pieces above because the hole in technic pieces is slightly higher than would be in system, so the rest of the light grey plates could also be replaced by a 2x6.

Edited by witchy

Share this post


Link to post
Share on other sites

To be precise, as the length of this track is measured near the inner rail, to have a R50 circle at the centre of the track you need a radius of 47 studs at the hinge position, giving a hinge circumference of 295.16 studs or ~148 segments (round up to 150 segments for convenient round numbers). The pictured curve has a 2 degree angle between each segment, which would give a hinge circumference of 180 segments, so the desired curve is only slightly tighter than pictured (2.4 degrees per segment) and appears viable to build in the manner pictured.

Edited by witchy

Share this post


Link to post
Share on other sites
On 8/29/2023 at 10:23 AM, Murdoch17 said:

The 40 is in studs, not CM. Also, I may be wrong, but I *think* R stands for radius, meaning it's 80 studs from side to side. @zephyr1934 or the moderators might know more. I don't think about these things... I just lay down track, not thinking about such things!

you can fit 1/4 turn of R40 track on a 48x48 baseplate. The ties/sleepers are 8 wide while the spacing including the rails are 6 wide. Measuring along one edge of the baseplate from the inside corner, you have 35 studs before reaching the inside of the tie (inner-most stud of the track falls at stud 36), there will be 4 studs beyond the outside of the tie (outter-most stud of the track falls at stud 44), and the centerline of the curve falls between the 39th and 40th studs, hence R40 or radius of 40 at the centerline. Each stud is 8mm, so the inside rail (at stud 37) has 296mm radius and outside rail (at stud 33) has 264mm radius.

Clone curves typically come in steps that have a 16 stud offset center to center because that is the spacing dictated by the lego switches. When centering two straight tracks on a 32x32 baseplate, there will 4 studs open, 8 studs of track, 8 studs open, 8 studs of track, 4 studs open. So add or subtract 16 studs (128 mm) to go to the next common track curve radius (looks like Trixbrix also offers R32, so you can also shrink by half of that for the first step). They also have narrow gauge track which will probably offer you a few other radii that are slightly different than the normal track.

Share this post


Link to post
Share on other sites

 @witchy Is there any information on what track pieces are used in making smaller radii or/shadow tracks next to each other? My layout uses R104 and I'd love to reduce the amount of baseplates in a curve of this size. (R104 uses 3 1/2 baseplates per 1/4 radius)

Edited by ritztoys
additional info

Share this post


Link to post
Share on other sites

Hi Everyone

I must admit that the radii from R104 through to R184 look much more realistic whereas the radii from R24 - R88 look more like what you would see on a fairground ride where tight radii would more likely be required.

I have never ever had the opportunity to try and build a lego model railway as my mum and dad ( rest their souls in the great upstairs with st peter ) always said it was too expensive and wouldn't buy me a set so my experience of lego trains was limited to just using non lego railway pieces and build a 2 or 3 coach train that way.

consequently my experience of any advice or help I would be able to offer will be based on my experience on 12 volt electric OO Gauge trains.

In respect of track radii, instead of using fixed radius curved track as was mentioned in some of the previous posts, I try to build my curved sections using flexible track which can be set up to match the lego equivalent of the radii from R104 up to R184.  The idea with what I do is to try to start the curved section on a straight then begin to form the curved section a few inches into the track pieces that will create it, in short starting snd terminating the curved track on a straight ( hope this makes sense ).

I often try to use that idea based on my thoughts as if I was a passenger sitting in 1 of my model train coaches and thought hmmm, would I want my head banging against the window everytime the train went into a curved section, I doubt it, so when possible now I try to implement that idea, it doesn't always work depending on what formation I am trying to create with my track pieces aswell as available space which in a lot of cases can be the decisive factor in determining what can be created, hopefully someday I might get to experience lego trains myself.

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

  • Recently Browsing   0 members

    No registered users viewing this page.