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_m 930 700 90 part midx cross_peco_s m extend midx_tr -l0_jtr_b parallel demos!right_main_up 315 part l0_jtr ^pt_main_r b extend midx_tl -l0_jtl_b parallel demos!-right_main_down -315 part l0_jtl pt_main_r b rel l0_jtl_c l2_ptl 0 -37 rel l2_ptl l3_ptl 0 -37 rel l3_ptl l4_ptl 0 -37 rel l4_ptl l5_ptl 0 -37 extend -midx_bl hj_c len 10 315 part hj pt_peco_sr c extend hj_a -l0_jbl_b parallel demos!right_main_up 315 part l0_jbl ^pt_main_r b extend -l0_jbl_c l0_lst uptoang 90 315 rel l0_lst l2_lst 0 -37 rel l2_lst l3_lst 0 -37 rel -l0_jbl_c l2_pbl 0 -37 rel l2_pbl l3_pbl 0 -37 layer s extend -midx_br -demo_midx_br_x ang 7 316 extend -demo_midx_br_x -demo_l0_jbr_b parallel demos!right_main_down -316 part demo_l0_jbr pt_main_r b #extend l0_rst l0_rsb upto l0_lst #extend l0_rsb l0_jbr_c uptoang 180 315 #part l0_jbr pt_main_r c #join l0_jbr_b midx_br 315 arcline #extend l0_jbr_b l0_test ang 135 315 layer l extend l0_jbl_a -l0_jbr_c upto demo_l0_jbr_c layer = part l0_jbr pt_main_r c extend -l0_jtr_c -l0_jtre upto l0_jbr_c join l0_jbr_b midx_br 315 extend -l0_jtre l0_rst uptoang -90 315 rel l0_rst l2_rst 0 -37 rel l2_rst l3_rst 0 -37 extend -l0_jbr_c -l0_rsb uptoang 90 -315 extend -l0_jtre 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 l3_pbl sq_bl_o upto l3_lst rel sq_bl_o sq_bl_i 0 0 -90 extend sq_bl_i sq_tl_o upto l5_ptl rel sq_tl_o sq_tl_i 0 0 -90 extend sq_tl_i sq_tr_o upto l3_rst 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 #---------- station branch curve layer 10 rel sq_tl_i l4_ct 352 37 180 rel l4_ct l5_ct 0 37 extend l4_ct l4_cl ang 90 -315 extend l5_ct l5_cl ang 90 -352 extend l3_lst l3_tlc5 ang 30 389 extend l2_lst l2_tlc5 ang 30 352 extend l0_lst l0_tlc5 ang 30 315 extend -l3_ptl -l3_tlc7 ang 60 -389 extend -l2_ptl -l2_tcl7 ang 60 -352 extend -l0_jtl_c -l0_tcl7 ang 60 -315 #---------- hill branch (figure of 8) layer 20 rel sq_bl_i h_bl_l 230 0 180 extend h_bl_l h_bl_b ang 90 -230 extend -h_bl_l -h_bre upto l0_lst 230 extend -h_bre -h_brj1 len 20 230 extend -h_brj1 -h_brjm len 30 extend -h_brjm -h_brj0 len 30 extend -h_brj0 -h_brh len 80 230 extend -h_brh -h_8m uptoang -35 230 extend -h_8m -h_8b uptoang 245 -230 rel l0_jbl_c -h_pbl_c 0 -45 rel l0_jbl_b -h_pbl_b 0 -45 join h_pbl_b h_pbl_c 230 extend -h_pbl_b -hj_p ang 40 -270 join hj_b hj_p 230 extend h_pbl_c h_ub upto h_brh 270 join h_ub h_8b 230 #---------- hill stations turntable defobj tt_corner layer 20 abs mid 200 200 0 extend mid out len 80 extend -mid -in len 80 extend out sout ang 45 -230 extend -in -sin ang 45 230 layer l20 rel in forcirc0 80 80 0 rel forcirc0 forcirc1 0 -160 180 join forcirc0 forcirc1 0 join forcirc1 forcirc0 0 layer s20 extend sin cnr upto sout enddef part tt tt_corner cnr -sq_br_i rel sq_br_i tc_in 230 0 -180 extend tc_in tc_out ang 90 -230 eof