enddef
')
+# Conventionally, points' toes are c, the straight through is a
+# and the curve is b. Segments run from c towards a and b.
+#
+# Crossings (including slips) run `vertically' and have
+# tl, tr, bl, br. Segments run from b* to t*.
+
define(`def_point_ord',`
dnl OBJNAME-EXCLUDING-PT-L ANGLE STRAIGHT-L CURVE-LONGER CURVE-DIVERGE-Y MIN-R
defpart pt_$1l
enddef
')
-def_point_ord(`peco_s', 22.5, 87, -0.5, 17, 200) # not minr 230 ?
-def_point_ord(`peco_m', 14, 126.5,-1.55,13.21, 315) # not minr 457 ?
-def_point_ord(`peco_l', 8, 160, -0.4, 13.21, 914)
+def_point_ord(`peco_s', 22.5, 87, -0.5, 17, 200) #ST-5,6 not minr 230 ?
+def_point_ord(`peco_m', 14, 126.5,-1.55,13.21, 315) #SL-395,396 not minr 457 ?
+def_point_ord(`peco_l', 8, 160, -0.4, 13.21, 914) #SL-388,389
# catalogue says 123.7 for STRAIGHT-L ?!
+ # SL-<n> and SL-E<n> have the same geometry
def_point_curve(`peco_c', 10, 154.4, 13.8, 3, 156.0, 0.8, 457)
dnl 163.2- } dist to markings on paper cribsheet from c
rel m mr 0 0 -$3
segment /S2
extend ml tl len $2
+ segment -/S2
extend ml br len -$2
segment /S1
extend mr tr len $2
+ segment -/S1
extend mr bl len -$2
segment /S0
join bl tl 500
layer p
rel cout bl -40 -40
rel cout br -40 40
- extend bl tl len 100
- extend br tr len 100
+ extend bl tl len 89
+ extend br tr len 89
join tl -tr 0.1
enddef