If there is dual track template, where e.g. the base point is center between rails on the right side, and the center between rails on left side is added as control point, controlled by secondary alignment (due to the need to move away left track from the right track in some areas), then Curve Widening works wrong, because it calculates widening only from the base point, and ignores the constraints, that move away points, related to left track's centerline.
E.g. in straight segments the left shoulder of the sub-ballast is 7.663 horizontally away from base point (see illustration below):
On curves, not only the Widening is applied, but also the secondary (left) Alignment is moved away from the base point. If Widening table is not applied, then left side is moved nicely away from the base point, cant is applied as required and the shoulder of sub-ballast is nicely moved together, using the defined constrains.
However if Widening is applied, it then inserts special control points on sub-ballast shoulder, which however are calculated not by H distance from reference point in the template (e.g. 0.5 for shoulder + 0.2 for widening the shoulder, hence getting 0.7 shoulder after widening), but rather from the base point. As seen from the illustration below, the widening is actually calculated correctly - previous distance of 7.663 from base point now is calculated to 7.863, which shows that 0.2 widening is applied, however since on the same curve left track alignment was designed to be further from the base point (right track), then the collision of controls and constrains occurs, and widened shoulder of sub-ballast on left side appears too close to the base point, comparing to the shoulder of the ballast, which is moved by constraints together with moved left track:
It would be good if widening table would change the horizontal constraint of for the widened point, rather than calculating new horizontal distance from the base point and overriding the original constraint. E.g. if chosen point has constraint, managed by some previous point, the widening procedure would recalculate the horizontal distance from that previous point and would add the widening value (sub-ballast shoulder has H constraint 0.5 from ballast bottom point, hence the widening would be 0.5 + 0.2 for widening; OR sub-ballast shoulder has Dual-Slope constraints from two previous points, then the horizontal distance is calculated from the slopes and after that the widening is applied).
OR, another workaround, when applying the Curve Widening, there should be control, which Alignment to use for calculating the widening. In that case the widening on curves, that turn to the left, would be applied to right side shoulder, calculating the distance from the right alignment, while second iteration of Curve Widening would be applied on the curves, that turn to the right, to left side shoulder, BUT in this time the calculation would be chosen to be performed on the left alignment.
Any advices, proposals, comments, workarounds?
Dr. Arūnas UrbšysProjects Development Director, Ph. D.UAB "IN RE"Lukiškių str. 3, LT-01108 Vilnius, LITHUANIAPh.: +370-5-212-4660GSM: +370-655-55975arunas.urbsys(at)inre.lthttp://www.inre.lt | www.pcscad.lt