chiark / gitweb /
turntables are in parts
[trains.git] / layout / ours.m4
1 include(`parts.i4')
2
3 layer 10
4
5 define(`pt_main_r',`pt_peco_mr')
6
7 defobj dualjn_peco_r
8   abs ic 200 200 0
9   part pt_i pt_peco_lr c ic
10   part x cross_peco_l br pt_i_a
11   part pt_o pt_peco_lr b x_bl
12   rel pt_o_c oc
13   rel x_tl ia
14   extend pt_o_a oa upto ia
15   rel x_tr ob
16   rel pt_i_b ib
17 enddef
18
19 defobj demos
20   abs right 200 200 0
21   part main_up   ^pt_main_r  c right b right_main_up
22   part main_down  pt_main_r  c right b right_main_down
23   part short_down pt_peco_sr c right b right_short_down
24   abs up 200 200 90
25   part main_left  ^pt_main_r c up b up_main_left
26   part main_right  pt_main_r c up b up_main_right
27   part dualjn_tr ^dualjn_peco_r ib -right
28 enddef
29
30 #---------- main line figure-of-8
31
32 abs midx_m 930 700 90
33 part midx cross_peco_s m
34
35 extend midx_tr -l0_jtr_b parallel demos!right_main_up 315
36 part l0_jtr ^pt_main_r b
37
38 extend midx_tl -l0_jtl_b parallel demos!-right_main_down -315
39 part l0_jtl pt_main_r b
40 rel l0_jtl_c l2_ptl 0 -37
41 rel l2_ptl l3_ptl 0 -37
42 rel l3_ptl l4_ptl 0 -37
43 rel l4_ptl l5_ptl 0 -37
44
45 extend -midx_bl -j8sc_a len 10 315
46 part j8sc pt_peco_sl a
47
48 extend -j8sc_c -l0_jbl_b parallel demos!right_main_up 315
49 part l0_jbl ^pt_main_r b
50
51 extend -l0_jbl_c l0_lst uptoang 90 315
52 rel l0_lst l2_lst 0 -37
53 rel l2_lst l3_lst 0 -37
54
55 rel -l0_jbl_c l2_pbl 0 -37
56 rel l2_pbl l3_pbl 0 -37
57
58 layer s
59 extend -midx_br -demo_midx_br_x ang 7 316
60 extend -demo_midx_br_x -demo_l0_jbr_b parallel demos!right_main_down -316
61 part demo_l0_jbr pt_main_r b
62
63 #extend l0_rst l0_rsb upto l0_lst
64 #extend l0_rsb l0_jbr_c uptoang 180 315
65 #part l0_jbr pt_main_r c
66 #join l0_jbr_b midx_br 315 arcline
67 #extend l0_jbr_b l0_test ang 135 315
68
69 layer l
70 extend l0_jbl_a -l0_jbr_c upto demo_l0_jbr_c
71
72 layer =
73 part l0_jbr pt_main_r c
74 extend -l0_jtr_c -l0_jtre upto l0_jbr_c
75 join l0_jbr_b midx_br 315
76
77 extend -l0_jtre l0_rst uptoang -90 315
78 rel l0_rst l2_rst 0 -37
79 rel l2_rst l3_rst 0 -37
80
81 extend -l0_jbr_c -l0_rsb uptoang 90 -315
82
83 extend -l0_jtre l0p_dj parallel demos!dualjn_tr_ic 315
84 rel l0p_dj -l23_dj_ic 0 -37
85 part l23_dj ^dualjn_peco_r ic
86
87 extend l23_dj_oa l3_sh uptoang 180 -315
88
89 #---------- box
90
91 layer l5
92 extend l3_pbl sq_bl_o upto l3_lst
93 rel sq_bl_o sq_bl_i 0 0 -90
94
95 extend sq_bl_i sq_tl_o upto l5_ptl
96 rel sq_tl_o sq_tl_i 0 0 -90
97
98 extend sq_tl_i sq_tr_o upto l3_rst
99 rel sq_tr_o sq_tr_i 0 0 -90
100
101 extend sq_tr_i sq_br_o upto sq_bl_i
102 rel sq_br_o sq_br_i 0 0 -90
103
104 extend sq_br_i sq_bl_o2 upto sq_bl_o
105
106 #---------- bottom junction between main loop, main-8
107
108 layer 10
109
110 rel sq_br_i l2_jbr_c 315
111 part l2_jbr pt_main_r c
112 #part l2_jbrx pt_shino_6r c l2_jbr_c
113 extend l2_jbr_b l1_jbr_bl uptoang 170.5 -315
114 part l1_jbr slip2_shino bl
115
116 extend l1_jbr_tr l01_jbmx_bl ang 0.5 315
117 part l01_jbmx cross_atlas_20m bl
118 #l1_jbr_tr
119 extend -l01_jbmx_br -l0_jbmr_b len 5 315
120 part l0_jbmr ^pt_main_r b
121 #l01_jbmx_br
122 join l0_jbr_a l0_jbmr_c 315
123
124 extend l01_jbmx_tr -l0_jbml_b len 5 -315
125 part l0_jbml pt_main_r b
126
127 join l0_jbmr_a -l0_jbml_a 315
128
129 #---------- station branch curve
130
131 layer 10
132
133 rel sq_tl_i l4_ct 352 37 180
134 rel l4_ct l5_ct 0 37
135 extend l4_ct l4_cl ang 90 -315
136 extend l5_ct l5_cl ang 90 -352
137
138 extend l3_lst l3_tlc5 ang 30 389
139 extend l2_lst l2_tlc5 ang 30 352
140 extend l0_lst l0_tlc5 ang 30 315
141
142 extend -l3_ptl -l3_tlc7 ang 60 -389
143 extend -l2_ptl -l2_tcl7 ang 60 -352
144 extend -l0_jtl_c -l0_tcl7 ang 60 -315
145
146 part l45_lx scis_shino tl l4_ct
147
148 #---------- station
149
150 layer 0
151
152 part l4_j3s pt_peco_sl c l4_cl
153 extend l4_j3s_a sta_near_4 uptoang 5 -315
154 extend sta_near_4 sta_far_4 len 1118
155
156 rel sta_near_4 sta_near_5 130 30
157 extend sta_near_5 sta_far_5 upto sta_far_4
158
159 extend -sta_near_5 -sta_pre1_5 len 60 -450
160 extend -sta_pre1_5 -sta_pre2_5 len 50 450
161
162 extend l5_cl l5_clb upto l4_j3s_a
163 join l5_clb sta_pre2_5 352
164
165
166 layer 20
167
168 rel sta_near_4 sta_far_h 500 76
169 part sta_jbhfar pt_peco_sl a -sta_far_h
170
171 rel sq_br_i hcbr_in 230 0 -180
172 extend hcbr_in hcbr_out ang 90 -230
173 join -sta_jbhfar_c hcbr_in 230
174
175 extend -sta_far_h -sta_near_h len 600
176 part sta_jbhnear pt_peco_sl b sta_near_h
177 join sta_jbhnear_a -sta_jbhfar_b 230
178 extend -sta_jbhnear_c h_cblt uptoang 90 230
179
180 layer p10
181
182 rel sta_far_4 staplat_far_4 0 -14.5
183 rel staplat_far_4 staplatb_far_4 0 -17
184 extend -staplat_far_4 -staplat_near_4 upto sta_near_4
185 extend -staplatb_far_4 -staplatb_nearx_4 upto sta_near_5
186 join staplat_near_4 staplatb_nearx_4 1
187 join staplat_far_4 -staplatb_far_4 1 
188
189 rel sta_far_5 staplat_far_5 0 14.5
190 rel staplat_far_5 staplatb_far_5 0 17
191 extend -staplat_far_5 -staplat_near_5 upto sta_near_5
192 extend -staplatb_far_5 -staplatb_near_5 upto sta_near_4
193 join staplatb_near_5 staplat_near_5 1
194 join staplat_far_5 -staplatb_far_5 1
195
196 layer 10
197
198 rel staplat_far_4 sta_far_2s -350 -58.5
199 rel sta_far_2s sta_far_3s 100 27
200 extend sta_far_3s -sta_far_j23_a ang 15 -450
201 part sta_far_j23 pt_peco_sr a
202 join sta_far_2s -sta_far_j23_b 230
203 extend -sta_far_j23_c sta_far_23m len 160 -450
204
205 rel sta_near_4 sta_near_3s 15 -48 -8
206 part l3s_jsc pt_peco_sr c -sta_near_3s
207 join l4_j3s_b -l3s_jsc_a 230
208
209 extend sta_near_3s l3s_jyard_c uptoang 3.5 -230
210 part l3s_jyard pt_peco_sl c
211
212 extend l3s_jsc_b -sc_m uptoang 90 300
213
214 extend l3s_jyard_b l3s_jh_c ang 1 -230
215 part l3s_jh pt_peco_sl c
216 extend l3s_jh_b h_8b ang 90 -230
217
218 #extend l4_j3s_b -l3s_jth_a len 20
219 #part l3s_jth pt_peco_sr a
220
221 #join -l3s_jth_c sta_near_3s 230 arcline
222
223 #part l3s_jsc pt_peco_sl c sta_near_3s
224
225 #---------- train houses
226
227
228 #extend l3s_jth_b l3th_m ang 135 230
229
230
231
232
233 #rel sq_br_i sta_far_4 30 300 -175
234 #extend -sta_far_4 -sta_plat_4 len 1118
235
236 #rel sta_far_4 sta_far_5 0 30
237 #extend -sta_far_5 -sta_plat_5 upto sta_plat_4
238
239 #part l4_stbr pt_peco_sl a sta_plat_4
240 #part l4_stbrx pt_peco_sr c -sta_plat_4
241
242 #extend l4_shbr_a l4_stbr_q ang 100 -315
243 #join l4_shbr_a l4_stbr_c 315
244
245 #---------- shunting yard
246
247 layer 0
248
249 rel sq_br_i shunt_f09 140 550 180
250 extend -shunt_f09 -shunt_yp09_b len 400
251 part shunt_yp09 pt_peco_sr b
252
253 define(`extendyard',`
254  part $1_yp$2 pt_peco_sr a $1_yp$3_c
255  extend $1_yp$2_b $1_f$2 upto $1_f$3
256 ')
257
258 extendyard(`shunt',`10',`09')
259 extendyard(`shunt',`11',`10')
260 extendyard(`shunt',`12',`11')
261
262
263 #---------- hill branch (figure of 8)
264
265 layer 20
266
267 #rel sq_bl_i h_bl_l 230 0 180
268 #extend h_bl_l h_bl_b ang 90 -230
269
270 #extend -h_bl_l -h_bre upto l0_lst 230
271 #extend -h_bre -h_brj1 len 20 230
272 #extend -h_brj1 -h_brjm len 30
273 #extend -h_brjm -h_brj0 len 30
274 #extend -h_brj0 -h_brh  len 80 230
275 #extend -h_brh -h_8m uptoang -35 230
276 #extend -h_8m -h_8b uptoang 245 -230
277
278 #rel l0_jbl_c -h_pbl_c 0 -45
279 #rel l0_jbl_b -h_pbl_b 0 -45
280 #join h_pbl_b h_pbl_c 230
281 #extend -h_pbl_b -j8sc_p ang 40 -270
282 #join j8sc_b j8sc_p 230
283
284 #extend h_pbl_c h_ub upto h_brh 270
285 #join h_ub h_8b 230
286
287 #---------- hill stations turntable
288
289 #defobj tt_corner
290 # layer 20
291 # abs mid 200 200 0
292 # extend out sout ang 45 -230
293 # extend -in -sin ang 45 230
294
295 # layer l20
296 # rel in forcirc0 80 80 0
297 # rel forcirc0 forcirc1 0 -160 180
298 # join forcirc0 forcirc1 0
299 # join forcirc1 forcirc0 0
300
301 # layer s20
302 # extend sin cnr upto sout
303 #enddef
304
305 #part tt tt_corner cnr -sq_br_i
306
307 eof