Intro
Traffic lanes are the part of an EN 1991-2 model that everyone builds by hand and nobody enjoys. Table 4.1 decides how many notional lanes a carriageway has and how wide they are, and the answer changes twice between 5.4 m and 6.0 m. Every lane then needs a position measured from something, an eccentricity whose sign depends on which way the element's local axes happen to point, a wheel spacing that MIDAS defaults to 1.8 m where EN 1991-2 Figure 4.2b asks for 2.0 m, and a lane item for every element of the line it runs along — a hundred of them on a long deck. On a curved or skewed bridge there is often no single member to measure from until one has been built. The Eurocode Auto Lane Generator does the arithmetic and the typing: it reads the model, lets the reference line be set out on the drawing, works out the lanes the load groups you pick actually need, draws them along the deck and across the cross-section with the vehicles standing in them, and only then writes them.
Developed with
- MIDAS CIVIL NX 2026 (v2.2) — plugin version 1.0.0
Benefits of this plugin
- Table 4.1 applied exactly as written — the number and width of the notional lanes come from the carriageway width, and the two boundaries that change the answer are treated as exact rather than approximate. A 5.399 m carriageway is one 3.0 m lane with a remaining area; 5.4 m is two 2.7 m lanes with none. Nothing is quietly promoted to the nearer case, because that would change the loading without saying so.
- The reference line is built, not assumed — every lane eccentricity is measured from a line running along the deck, and a curved or skewed deck often has no single member to use. Pick the nodes the line passes through and the plugin either adopts the beams already running between them or creates a chain of 10 x 10 mm reference beams along a straight or circular alignment, with a node wherever the line crosses the existing structure.
- Every lane is drawn before it is written — the lanes appear along the deck in plan and across the cross-section at any chainage, with the kerb faces, the lane extents and each lane's width dimensioned on the drawing rather than left to be scaled off it.
- The vehicle is drawn standing in its lane — wheel contact patches are drawn to scale across the section, so a 0.40 m patch is 0.40 m on the same ruler as the lane it sits in (EN 1991-2 Figure 4.2b). A wheel whose patch overhangs the lane edge is ringed. Lanes carrying a distributed load — the remaining area, the footways, the crowd lane — are drawn empty, because they have no wheels.
- The wheel spacing comes from the code, not from the dialog default — EN 1991-2 Figure 4.2b puts the tandem system wheels 2.0 m apart, while MIDAS's own default is 1.8 m, which belongs to a different code. The plugin writes 2.0 m, reduces it only where a lane is too narrow to keep both wheels on it, and says so when it does.
- Load groups or individual load models — the traffic load groups of EN 1991-2 Table 4.4a are how the code puts traffic on a bridge, so gr1a, gr1b, gr3, gr4 and gr5 are the primary way in. When you are checking one thing on its own, Load Models 1 to 4 and the footway load can be picked individually instead. Both reduce to the same set of lanes.
- The whole of EN 1991-2, not only Section 4 — road traffic, the fatigue load models of clause 4.6, and rail traffic from Section 6 with one lane per track set out on the 1.435 m gauge.
- Lanes are generated per role, not per group — gr1a and gr5 both want the notional lanes, and a fatigue check wants the same ones again. One lane is created and tagged with everything that needs it, instead of three identical lanes at the same offsets for the engineer to reconcile afterwards.
- The rail eccentricity is computed and deliberately not written — clause 6.3.5 displaces the resultant of the vertical rail loads by the gauge divided by eighteen, 0.080 m on standard gauge. It is reported on screen and left off the lane, because MIDAS carries it on the rail vehicle and writing it in both places would apply it twice.
- The eccentricity sign is settled — positive ECC runs along the element's local minus y axis, confirmed against a lane built by hand in a live model rather than inferred from an export. This is the one number that mirrors every lane in the model if it is wrong.
- More than one lane set on one deck — a second carriageway, a track alongside a road deck, or the same carriageway set out from a different reference line. Running again under the same name rewrites that set in place, which is what you want while settling a layout; a new set takes a name of its own and leaves the first untouched.
- Skew where MIDAS accepts it and nowhere else — the skew angles are available only with cross beam distribution, exactly as the MIDAS dialog allows, because a skew is the angle of the lane's ends against the transverse members the load is spread onto. An angle already typed is kept and returns if the distribution is switched back.
- A measuring tool on the drawing — click two nodes in plan, or two girder marks on the cross-section, and the carriageway width, kerb offsets and footway widths can be read straight off the deck instead of being transcribed from the MIDAS window.
- Nothing is written until you ask for it — the reference line, the lanes, and the effect of every setting are drawn and listed first, and the panel states before you press the button whether Create will add lanes or replace ones you already made.
- Removal is by table key, never by name — a name-filtered delete on this API ignores the filter and empties the whole table, so every removal is planned from a fresh read and asks for the exact keys of the lanes concerned.
How to use this plugin?
- Open the bridge model in CIVIL NX and start the plugin — the connection details are supplied automatically; the Validation Check card reports the base URI and the MAPI key if either of them fails.
- Read the model — on the Model tab press Read model. Nodes, elements, structure groups, sections, the traffic lanes already defined, the units and the moving load code are all read in one pass. A model with no moving load code can be set to EUROCODE from here, and if the length unit is not metres the panel says so, because lane widths and eccentricities are entered in metres.
- Choose the reference line — on Reference line pick the chain the lane eccentricities will be measured from, either from the suggested lines, by typing an element range, or by clicking the nodes the line runs through. The panel says whether beams already run between the picks or whether new reference beams will be created, reports the minimum radius, and draws the line on the deck before anything is made.
- Create the reference beams if the line needs them — a 10 x 10 mm section, the nodes and beams along the line, and a structure group holding them, so the line can be found again and removed cleanly later.
- Describe the cross-section and pick the load groups — on Lanes tick which parts of EN 1991-2 apply and then the traffic load groups the design has to carry. Enter the carriageway width kerb to kerb, the offset from the reference line to the left-hand kerb, and the verges and footways. The panel asks only for the numbers the groups you ticked actually use, so a footway-only check does not ask for a carriageway at all.
- Check the drawings — the cross-section shows the kerb faces, every lane with its width, and the load model standing in each lane with its wheels to scale. The plan shows the same lanes running along the deck. Hovering a row of the table dimensions that lane on the drawing.
- Choose how the load reaches the deck — lane element distribution applies the traffic load to the elements the lane runs along; cross beam distribution spreads it through a structure group of transverse members, which is what a grillage wants and what a reference line built from the plugin's own beams needs, since those meet the structure at only a few nodes.
- Create the lanes — the whole set is written in one request, the model is re-read, and every lane is checked to have come back, because a silently dropped entry is how this API reports a field it does not accept. Running again under the same prefix rewrites that set; New set takes a fresh prefix and adds another alongside it.
Conclusion
The Eurocode Auto Lane Generator removes the slow, mechanical part of preparing a Eurocode deck for moving load analysis: working out what Table 4.1 gives a particular carriageway, deciding where each lane sits across it, getting the sign of every eccentricity right, and typing a lane item for every element of the line. What it does not do is decide the engineering. The carriageway width, where the reference line runs, which load groups the structure has to carry and how the load reaches the deck are all yours to state — and every one of them is drawn, dimensioned and listed before anything is written to the model.