include(`parts.i4') layer 10 define(`pt_main_r',`pt_peco_mr') defobj dualjn_peco_r abs ic 200 200 0 part pt_i pt_peco_lr c ic part x cross_peco_l br pt_i_a part pt_o pt_peco_lr b x_bl rel pt_o_c oc rel x_tl ia extend pt_o_a oa upto ia rel x_tr ob rel pt_i_b ib enddef defobj demos abs right 200 200 0 part main_up ^pt_main_r c right b right_main_up part main_down pt_main_r c right b right_main_down part short_down pt_peco_sr c right b right_short_down abs up 200 200 90 part main_left ^pt_main_r c up b up_main_left part main_right pt_main_r c up b up_main_right part dualjn_tr ^dualjn_peco_r ib -right enddef #---------- main line figure-of-8 abs midx_x_m 930 700 90 part midx_x cross_peco_s m extend midx_x_tr -top_0rm_b parallel demos!right_main_up 315 part top_0rm ^pt_main_r b extend midx_x_tl -top_0lm_b parallel demos!-right_main_down -315 part top_0lm pt_main_r b rel top_0lm_c top_2lk 0 -37 rel top_2lk top_3lk 0 -37 rel top_3lk top_4lk 0 -37 rel top_4lk top_5lk 0 -37 extend -midx_x_bl -midx_sc_a len 10 315 part midx_sc pt_peco_sl a extend -midx_sc_c -bot_0lk_b parallel demos!right_main_up 315 part bot_0lk ^pt_main_r b extend -bot_0lk_c leb_0k uptoang 90 315 rel leb_0k leb_2k 0 -37 rel leb_2k leb_3k 0 -37 rel -bot_0lk_c bot_2lk 0 -37 rel bot_2lk bot_3lk 0 -37 layer s extend -midx_x_br -demo_midx_x_br_x ang 7 316 extend -demo_midx_x_br_x -demo_bot_0rk_b parallel demos!right_main_down -316 part demo_bot_0rk pt_main_r b layer l extend bot_0lk_a -bot_0rk_c upto demo_bot_0rk_c layer = part bot_0rk pt_main_r c extend -top_0rm_c -top_0rme upto bot_0rk_c join bot_0rk_b midx_x_br 315 extend -top_0rme rim_0t uptoang -90 315 rel rim_0t rim_2t 0 -37 rel rim_2t rim_3t 0 -37 extend -bot_0rk_c -rim_0b uptoang 90 -315 extend -top_0rme l0p_dj parallel demos!dualjn_tr_ic 315 #rel l0p_dj -l23_dj_ic 0 -37 #part l23_dj ^dualjn_peco_r ic #extend l23_dj_oa l3_sh uptoang 180 -315 #---------- box layer l5 extend bot_3lk sq_bl_o upto leb_3k rel sq_bl_o sq_bl_i 0 0 -90 extend sq_bl_i sq_tl_o upto top_5lk rel sq_tl_o sq_tl_i 0 0 -90 extend sq_tl_i sq_tr_o upto rim_3t rel sq_tr_o sq_tr_i 0 0 -90 extend sq_tr_i sq_br_o upto sq_bl_i rel sq_br_o sq_br_i 0 0 -90 extend sq_br_i sq_bl_o2 upto sq_bl_o #---------- bottom junction between main loop, main-8 layer 10 rel sq_br_i bot_2rk_c 315 part bot_2rk pt_main_r c #part bot_2rkx pt_shino_6r c bot_2rk_c extend bot_2rk_b bot_1rk_bl uptoang 170.5 -315 part bot_1rk slip2_shino bl extend bot_1rk_tr bot_0mx_bl ang 0.5 315 part bot_0mx cross_atlas_20m bl #bot_1rk_tr extend -bot_0mx_br -bot_0rj_b len 5 315 part bot_0rj ^pt_main_r b #bot_0mx_br join bot_0rk_a bot_0rj_c 315 extend bot_0mx_tr -bot_1lj_b len 5 -315 part bot_1lj pt_main_r b join bot_0rj_a -bot_1lj_a 315 #---------- station branch curve layer 10 rel sq_tl_i top_4le 352 37 180 rel top_4le top_5le 0 37 extend top_4le leb_4e ang 90 -315 extend top_5le leb_5e ang 90 -352 extend leb_3k leb_3b ang 30 389 extend leb_2k leb_2b ang 30 352 extend leb_0k leb_0b ang 30 315 extend -top_3lk -leb_3a ang 60 -389 extend -top_2lk -leb_2a ang 60 -352 extend -top_0lm_c -leb_0a ang 60 -315 part top_45x scis_shino tl top_4le #---------- station # left bridge, `leb' layer 10 part leb_4y pt_peco_sl c leb_4e extend leb_4y_a sta_4neare uptoang 5 -315 extend sta_4neare sta_4far len 1118 rel sta_4neare sta_5nears 130 30 extend sta_5nears sta_5far upto sta_4far extend -sta_5nears -sta_5neare1 len 60 -450 extend -sta_5neare1 -sta_5neare2 len 50 450 extend leb_5e leb_5eb upto leb_4y_a join leb_5eb sta_5neare2 352 layer 20 # high-level lines and platforms rel sta_4neare sta_6far 500 76 part sta_67r pt_peco_sl a -sta_6far rel sq_br_i high_6br0 230 0 -180 extend high_6br0 high_6br1 ang 90 -230 join -sta_67r_c high_6br0 230 extend -sta_6far -sta_6nears len 600 part sta_67l pt_peco_sl b sta_6nears join sta_67l_a -sta_67r_b 230 extend -sta_67l_c high_6bl5 uptoang 90 230 layer p10 # medium-level platforms rel sta_4far sta_4far_platnear 0 -14.5 rel sta_4far_platnear sta_4far_platfar 0 -17 extend -sta_4far_platnear -sta_4neare_plat upto sta_4neare extend -sta_4far_platfar -sta_4nears_platfar upto sta_5nears join sta_4neare_plat sta_4nears_platfar 1 join sta_4far_platnear -sta_4far_platfar 1 rel sta_5far sta_5far_platnear 0 14.5 rel sta_5far_platnear sta_5far_platfar 0 17 extend -sta_5far_platnear -sta_5neare_plat upto sta_5nears extend -sta_5far_platfar -sta_5neare_platfar upto sta_4neare join sta_5neare_platfar sta_5neare_plat 1 join sta_5far_platnear -sta_5far_platfar 1 layer 10 # turntable rel sta_4far_platnear sta_tt_mid -50 -120 part sta_tt tt_atlas mid part sta_ttmotor tt_atlas_motor cout sta_tt_out90 rel sta_4neare sta_3neare 15 -48 -8 part sta_3sc pt_peco_sr c -sta_3neare join leb_4y_b -sta_3sc_a 230 extend sta_3neare sta_3y0_c uptoang 5 -230 part sta_3y0 pt_peco_sl c extend sta_3sc_b -leb_0sc uptoang 90 300 extend sta_3y0_b sta_0y1_c ang 1 -230 part sta_0y1 pt_peco_sl c extend sta_0y1_b h_8b ang 90 -230 rel sta_4neare sta_3nears 280 -46 part sta_3y1 pt_peco_sl c sta_3y0_a join sta_3y1_a sta_3nears 450 extend sta_3nears sta_3far len 500 extend sta_3far sta_3far1 len 30 -650 join sta_3far1 -sta_tt_out210 230 extend sta_3y1_b sta_2nears parallel sta_3nears 230 extend sta_2nears sta_2far upto sta_3far1 join sta_2far -sta_tt_out195 230 #---------- train houses #---------- shunting yard layer 10 defobj yard abs f09 200 200 180 extend -f09 -yp09_b len 400 part yp09 pt_peco_sr b define(`extendyard',` part yp$1 pt_peco_sr a yp$2_c extend yp$1_b f$1 upto f$2 ') extendyard(`10',`09') extendyard(`11',`10') extendyard(`12',`11') enddef part yard yard yp12_c sta_0y1_a eof