# -*- fundamental -*- include(`parts.i4') 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 # positive segment direction is anticlockwise, since T rail is # on the inside (see informat.txt) #---------- main line figure-of-8 layer 0 abs midx_x_m 930 700 90 segment midx_ segmap midx_F -X1 midx_B X2 part midx_x cross_peco_s m segment -X1 165 -X3 extend midx_x_tr -top_0rm_b parallel demos!right_main_up 315 segment X7 part top_0rm ^pt_main_r b segment X2 155 X4 extend midx_x_tl -top_0lm_b parallel demos!-right_main_down -315 segment -X8 part top_0lm pt_main_r b rel top_0lm_c top_2lk 0 -37 rel top_2lk top_3lk 0 -37 segment / layer 8 rel top_3lk top_45x_br 67 -39 -2.25 extend -top_45x_br -top_4le0 len 120 -1200 layer s rel top_3lk top_5_ref 0 -74 layer = layer 0 segment -A2/P0 extend -midx_x_bl -midx_j_a len 10 315 segment A2 part midx_j pt_peco_sl a segment -A2 155 -A4 extend -midx_j_c -bot_0lm_b parallel demos!right_main_up 315 segment A6 part bot_0lm ^pt_main_r b segment -X10 extend -bot_0lm_c -leb_0k uptoang 90 315 segment / rel -leb_0k -leb_2k 0 -37 rel -leb_2k -leb_3k 0 -37 rel -bot_0lm_c bot_2lk 0 -37 rel bot_2lk bot_3lk 74 -37 layer s extend -midx_x_br -demo_midx_x_br_x ang 7 316 extend -demo_midx_x_br_x -demo_bot_0rm_b parallel demos!right_main_down -316 part demo_bot_0rm pt_main_r b layer s extend bot_0lm_a -bot_0rm_c upto demo_bot_0rm_c layer = segment -A5 part bot_0rm pt_main_r c segment -X7 extend -top_0rm_c top_0rme upto bot_0rm_c segment -A3 180 -A1 join bot_0rm_b midx_x_br 315 segment -X7 extend top_0rme top_0rme1 ang 9 315 extend top_0rme1 rim_0t uptoang -90 315 segment / rel rim_0t rim_2t 0 -37 rel rim_2t rim_3t 0 -37 segment -X6 250 -X5 join top_0lm_a -top_0rm_a 450 segment / #---------- box layer l* 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_5_ref 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 p4 rel sq_tr_o ctrlbox_bl -64 156 extend ctrlbox_bl ctrlbox_br len 50 rel ctrlbox_bl ctrlbox_blv 0 0 90 extend ctrlbox_blv ctrlbox_tl len 100 layer 0 #rel sq_br_i bot_3rj_c 315 rel sq_br_i bot_3rj_c 345 rel bot_0rm_c bot_2rk 0 -37 extend bot_2rk bot_2rx_br len 130 part bot_3rj pt_main_r c part bot_2rx slip2_pecof br join bot_3rj_b bot_2rx_bl 450 extend bot_2rx_tr bot_0mx_bl len 19 1400 part bot_0mx cross_pecof_s bl extend -bot_0mx_br -bot_0rj_b len 8 segment -A5 segmap A5/P J part bot_0rj ^pt_main_r b join bot_0rm_a bot_0rj_c 450 segmap A5/P P rel bot_0mx_tr -bot_0lj_b segment A6 segmap A6/P J part bot_0lj pt_main_r b segmap A6/P P segment -A5/J0 53 -A6/J0 join bot_0rj_a -bot_0lj_a 450 segment -A6 join -bot_0lj_c -bot_0lm_a 450 segment / extend bot_0mx_tl -bot_02lj_b uptoang 194 -315 part bot_02lj ^pt_main_r b part bot_23lj ^pt_main_r c -bot_02lj_c join bot_2rx_tl -bot_02lj_a 450 part bot_3lj ^pt_main_r c -bot_3lk join bot_3rj_a -bot_3lj_a 450 join bot_23lj_b -bot_3lj_b 315 twoarcs join bot_3lk -leb_3k 315 arcline join bot_23lj_a bot_2lk 450 join bot_2lk -leb_2k 352 segment -X7 20 -X9 join rim_0t bot_0rm_c 315 arcline segment / layer 2 join rim_2t bot_2rk 352 arcline layer 2 join rim_3t bot_3rj_c 315 arcline #---------- station branch curve layer 5 rel sq_tl_i -top_5le 352 0 180 layer 8 extend -top_5le leb_5e ang 90 -352 rel leb_5e leb_4e 0 -37 join -leb_4e top_4le0 315 layer 2 join -leb_3k top_3lk 389 arcsline join -leb_2k top_2lk 352 arcsline layer 0 segment -X10 160 -X8 join -leb_0k top_0lm_c 315 arcsline segment / layer 8 extend top_5le top_5re0 len 30.0 315 extend top_5re0 top_45x_bl len 95 -1200 part top_45x scis_pecof bl #---------- top main-line/station junction layer 6 extend -rim_2t top_2j_c len 450 -352 #extend -rim_2t top_2j_c upto top_0rme1 -352 layer 8 part top_2j pt_peco_cl c #part top_2j pt_pecofguess_ll c layer 4 extend top_2lk top_2j21 len 300 layer 8 join top_2j21 -top_2j_b 600 layer 8 extend top_45x_tr top_4j21 len 95 1200 extend top_2j_a -top_4j22 len 0.010 -352 join top_4j21 top_4j22 352 twoarcs rel -top_0rm_a top_5j3b 0 -148 extend top_45x_tl top_5j3a len 95 -1200 join top_5j3a top_5j3b 315 twoarcs layer 0 extend top_3lk top_3u1 len 330 rel -top_0rm_a top_3u2 35 -111 join top_3u1 top_3u2 600 #cross twoarcs !arcsline layer 4 extend -rim_3t -rim_3tt1 len 15.3 extend -rim_3tt1 -rim_3tt ang 17.5 -315 part top_3j pt_peco_cl c -rim_3tt layer 2 join top_3u2 -top_3j_b 315 arcline layer 6 extend top_3j_a top_5j3c ang 45 -315 layer 8 join top_5j3b -top_5j3c 315 arcline #---------- station # left bridge, `leb' layer 10 part leb_4y pt_peco_sl c leb_4e extend leb_4y_a sta_4nears9 len 35 -600 extend sta_4nears9 sta_4nears2 uptoang 0 -315 extend sta_4nears2 sta_4neare uptoang 5 -450 extend sta_4neare sta_4far len 1148 rel sta_4neare sta_5nears 130 30 extend sta_5nears sta_5far upto sta_4far extend -sta_5nears -sta_5neare1 len 50 -1200 extend -sta_5neare1 -sta_5neare2 len 50 -600 extend leb_5e leb_5eb_c upto leb_4y_a part leb_5eb pt_peco_ml c extend leb_5eb_b sta_5neare3 ang 50 -315 join sta_5neare3 sta_5neare2 352 layer 12 extend leb_5eb_a super_h00 uptoang 0 -325 layer 16 extend super_h00 super_h01 len 300 extend super_h01 super_h0 parallel sta_5nears -325 extend super_h0 super_h10 len 400 extend super_h10 super_h1 uptoang -1.5 800 layer s rel -sq_br_i place_super_h2 -350 0 layer 20 extend super_h1 super_h2 upto place_super_h2 layer 24 rel -sq_tr_i super_h3 -315 0 join super_h2 super_h3 315 arcline layer 28 rel -sq_tr_o super_h4 315 0 join super_h3 super_h4 315 arcline layer 30 extend super_h4 -super_jtrr_a ang 5 -315 part super_jtrr pt_peco_mr a part super_jtrl pt_peco_ml c -super_jtrr_c extend super_jtrl_b super_mid uptoang 275 -315 extend super_mid -super_jbl_b parallel super_jtrl_b 315 part super_jbl pt_peco_ml b join super_jbl_a -super_jtrr_b 315 arcline join super_jtrl_a super_jbl_c 315 arcline 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 630 part sta_67l pt_peco_sl b sta_6nears join sta_67l_a -sta_67r_b 230 #extend -sta_67l_c high_6bl5 uptoang -30 230 layer p20 rel sta_6nears sta_6nears_platnear 0 -14.5 rel sta_6nears_platnear sta_6nears_platfar 0 -17 extend sta_6nears_platnear sta_6far_platnear upto sta_6far extend sta_6nears_platfar sta_6far_platfar upto sta_6far join sta_6nears_platnear -sta_6nears_platfar 1 join sta_6far_platnear -sta_6far_platfar 1 # medium-level platforms layer p10 rel sta_4far sta_4far_platnear 0 -14.5 rel sta_4far_platnear sta_4far_platfar 0 -45 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 30 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 -80 -148 part sta_tt tt_atlas mid part sta_ttmotor tt_atlas_motor cout sta_tt_out90 # station line 3 rel sta_4neare sta_3neare 15 -76 -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 # junctions layer 10 extend sta_3y0_b sta_0y1_c ang 1 -230 part sta_0y1 pt_peco_sl c layer 10 rel sta_4neare sta_3nears 280 -74 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 # station line 2 part sta_2y0 pt_peco_sr c sta_3y1_b extend sta_2y0_b sta_2nears parallel sta_3nears 230 extend sta_2nears sta_2far upto sta_3far1 join sta_2far -sta_tt_out195 230 # station line 1 rel sta_2far sta_1far 0 -37 join sta_1far sta_tt_in 230 join sta_2y0_a sta_1far 230 arcline #---------- sort-of helix (regions sc and h) layer 0 extend midx_j_b sc_9 len 80 -230 layer 5 rel top_0lm_c -sc_7 0 40 layer 2 extend -sc_7 -sc_8 ang 45 315 join sc_9 sc_8 315 layer 8 extend sc_7 sc_6 ang 60 -275 extend sta_3sc_b -sc_3 len 20 -450 extend -sc_3 -sc_5 len 50 230 join sc_6 sc_5 230 layer 13 extend sta_0y1_b high_6s0 ang 65 -230 layer 16 extend high_6s0 high_6s1 uptoang 15 230 layer 18 extend high_6s1 high_6s2 len 100 layer 20 #rel sq_tr_i high_6s4 0 320 90 rel sq_tl_i -high_6s4 320 0 layer 18 join high_6s2 high_6s4 230 #---------- high-level goods layer 20 extend high_6s4 highr_6jt_c ang 45 -230 part highr_6jt pt_peco_sl c rel sta_1far -high_sta6far -10 0 extend high_sta6far high_sta6near upto sta_2y0_a extend highr_6jt_b highr_x_br uptoang -60 -230 part highr_x cross_atlas_90m br extend highr_x_tl highr_6sc_c ang 20 -230 part highr_6sc pt_peco_sl c extend highr_6sc_a highr_6out ang 15 230 ##join highr_6out high_sta6far 230 layer s extend highr_x_bl -demo_highr_6jb_c uptoang 90 -230 extend sq_bl_i place_highr_6jb_c upto demo_highr_6jb_c layer 20 rel place_highr_6jb_c highr_6jb_c -10 0 part highr_6jb pt_peco_sr c join highr_6jb_b -highr_x_bl 230 join highr_6jt_a -highr_6jb_a 230 arcline ##join high_6br1 highr_6jb_c 230 extend -highr_x_tr highr_7kink uptoang -45 230 extend highr_7kink -highr_7sc_a ang 30 -230 rel high_sta6near high_sta7near 0 37 part highr_7sc pt_peco_sl a ##join -highr_7sc_c high_sta7near 230 ##join highr_7sc_b -highr_6sc_b 230 #part high_67j pt_peco_sr c high_6bl5 ##join high_67j_b -high_sta6near 267 ##join high_67j_a -high_sta7near 230 #---------- shunting yard layer 10 #defobj yard # define(`extendyard',` # part j$1 pt_peco_sr c $2 # part k$1 pt_peco_sr c j$1_b # extend k$1_a near$1a ang 0.001 -230 ## extend k$1_a near$1b len 90 # extend k$1_b near$1b2 ang 22.501 -230 # extend near$1b2 far$1b $4 # extend near$1a far$1a $3 # ') # abs e 200 200 0 # extendyard(`0',`e', `len 600',`len 500') # extendyard(`1',`j0_a',`len 500',`len 400') # extend j1_a e2a ang 2 -230 # extend e2a near2a parallel near0a 230 # extend near2a far2a len 370 #enddef #extend sta_0y1_a yard_0e ang 31 -230 #part yard yard e yard_0e extend sta_0y1_a yard_0e ang 0.01 -230 part yard_p pt_peco_sl c yard_0e part yard_pr pt_peco_sr c yard_p_a part yard_pl pt_peco_sr c yard_p_b part yard_pll pt_peco_sr c yard_pl_a extend yard_pr_b yard_err_s len 180 extend yard_pr_a yard_erl_s len 120 extend yard_pl_b yard_elr_s len 180 extend yard_pll_b yard_ellr_s len 180 extend yard_pll_a yard_elll_s len 120 extend yard_err_s yard_err_t len 275 4500 extend yard_erl_s yard_erl_t len 180 2400 extend yard_erl_t yard_erl_u len 150 800 extend yard_erl_u yard_erl_v len 200 300 extend yard_elr_s yard_elr_t upto yard_erl_t 2400 extend yard_elr_t yard_elr_u upto yard_erl_u 800 extend yard_elr_u yard_elr_v len 240 315 extend yard_ellr_s yard_ellr_t upto yard_erl_t 2400 extend yard_ellr_t yard_ellr_u upto yard_erl_u 800 extend yard_ellr_u yard_ellr_v len 260 330 extend yard_elll_s yard_elll_t parallel yard_ellr_s 230 extend yard_elll_t yard_elll_u upto yard_ellr_u 600 extend yard_elll_u yard_elll_v len 200 365 #---------- train houses extend sta_tt_out135 sta_9house len 200 -230 extend sta_tt_out150 sta_8house len 230 -400 extend sta_tt_out165 sta_7house len 115 extend sta_8house sta_8house_b len 120 rel sta_8house_b sta_7house_b 0 -37 join sta_7house sta_7house_b 300 ident $Revision$ eof