chiark / gitweb /
turntable placed; hmm
[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 hj_c len 10 315
46 part hj pt_peco_sr c
47
48 extend hj_a -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 #rel l3_lst l4_lst 0 -37
55 #rel l4_lst l5_lst 0 -37
56
57 rel -l0_jbl_c l2_pbl 0 -37
58 rel l2_pbl l3_pbl 0 -37
59
60 extend -l0_jtr_c l0_rst uptoang -90 315
61 rel l0_rst l2_rst 0 -37
62 rel l2_rst l3_rst 0 -37
63
64 extend -l0_jtr_c l0p_dj parallel demos!dualjn_tr_ic 315
65 rel l0p_dj -l23_dj_ic 0 -37
66 part l23_dj ^dualjn_peco_r ic
67
68 extend l23_dj_oa l3_sh uptoang 180 -315
69
70 #---------- box
71
72 layer l5
73 extend l3_pbl sq_bl_o upto l3_lst
74 rel sq_bl_o sq_bl_i 0 0 -90
75
76 extend sq_bl_i sq_tl_o upto l5_ptl
77 rel sq_tl_o sq_tl_i 0 0 -90
78
79 extend sq_tl_i sq_tr_o upto l3_rst
80 rel sq_tr_o sq_tr_i 0 0 -90
81
82 extend sq_tr_i sq_br_o upto sq_bl_i
83 rel sq_br_o sq_br_i 0 0 -90
84
85 extend sq_br_i sq_bl_o2 upto sq_bl_o
86
87
88 #---------- station branch curve
89
90 layer 10
91
92 rel sq_tl_i l4_ct 352 37 180
93 rel l4_ct l5_ct 0 37
94 extend l4_ct l4_cl ang 90 -315
95 extend l5_ct l5_cl ang 90 -352
96
97 extend l3_lst l3_tlc5 ang 30 389
98 extend l2_lst l2_tlc5 ang 30 352
99 extend l0_lst l0_tlc5 ang 30 315
100
101 extend -l3_ptl -l3_tlc7 ang 60 -389
102 extend -l2_ptl -l2_tcl7 ang 60 -352
103 extend -l0_jtl_c -l0_tcl7 ang 60 -315
104
105
106 #---------- hill branch (figure of 8)
107
108 layer 20
109
110 rel sq_bl_i h_bl_l 230 0 180
111 extend h_bl_l h_bl_b ang 90 -230
112
113 extend -h_bl_l -h_bre upto l0_lst 230
114 extend -h_bre -h_brj1 len 20 230
115 extend -h_brj1 -h_brjm len 30
116 extend -h_brjm -h_brj0 len 30
117 extend -h_brj0 -h_brh  len 80 230
118 extend -h_brh -h_8m uptoang -35 230
119 extend -h_8m -h_8b uptoang 245 -230
120
121 rel l0_jbl_c -h_pbl_c 0 -45
122 rel l0_jbl_b -h_pbl_b 0 -45
123 join h_pbl_b h_pbl_c 230
124 extend -h_pbl_b -hj_p ang 40 -270
125 join hj_b hj_p 230
126
127 extend h_pbl_c h_ub upto h_brh 270
128 join h_ub h_8b 230
129
130 #---------- hill stations turntable
131
132 defobj tt_corner
133  layer 20
134  abs mid 200 200 0
135  extend mid out len 80
136  extend -mid -in len 80
137  extend out sout ang 45 -230
138  extend -in -sin ang 45 230
139
140  layer l20
141  rel in forcirc0 80 80 0
142  rel forcirc0 forcirc1 0 -160 180
143  join forcirc0 forcirc1 0
144  join forcirc1 forcirc0 0
145
146  layer s20
147  extend sin cnr upto sout
148 enddef
149
150 part tt tt_corner cnr -sq_br_i
151
152 rel sq_br_i tc_in 230 0 -180
153 extend tc_in tc_out ang 90 -230
154
155 eof