# ===========================================================
# FULL-FLOW STAGED-COMBUSTION METHALOX ENGINE - DISPLAY MODEL
# 300 mm tall, 150 mm nozzle exit, editable parameters below
# TrueGeometry Playground recipe - Clean & Run in Script panel
# ===========================================================
$EXIT = 150
$TLEN = 300
$THRT = 40
$CHAM = 90
$WALL = 3
$TUBER = 2.5
$PIPER = 4

# --- bell nozzle: 15 annular stations, parabolic-ish profile ---
/parametric bend 70.77 3 10.93 360
/move 0 5.47 0
/tag_last pa
/setprop @pa color #4a4e54
/parametric bend 65.46 3 10.93 360
/move 0 15.8 0
/tag_last pb
/setprop @pb color #4a4e54
/parametric bend 60.34 3 10.93 360
/move 0 26.13 0
/tag_last pc
/setprop @pc color #4a4e54
/parametric bend 55.42 3 10.93 360
/move 0 36.47 0
/tag_last pd
/setprop @pd color #4a4e54
/parametric bend 50.71 3 10.93 360
/move 0 46.8 0
/tag_last pe
/setprop @pe color #4a4e54
/parametric bend 46.22 3 10.93 360
/move 0 57.13 0
/tag_last pf
/setprop @pf color #4a4e54
/parametric bend 41.96 3 10.93 360
/move 0 67.47 0
/tag_last pg
/setprop @pg color #4a4e54
/parametric bend 37.95 3 10.93 360
/move 0 77.8 0
/tag_last ph
/setprop @ph color #4a4e54
/parametric bend 34.19 3 10.93 360
/move 0 88.13 0
/tag_last pi
/setprop @pi color #4a4e54
/parametric bend 30.71 3 10.93 360
/move 0 98.47 0
/tag_last pj
/setprop @pj color #4a4e54
/parametric bend 27.54 3 10.93 360
/move 0 108.8 0
/tag_last pk
/setprop @pk color #4a4e54
/parametric bend 24.7 3 10.93 360
/move 0 119.13 0
/tag_last pl
/setprop @pl color #4a4e54
/parametric bend 22.24 3 10.93 360
/move 0 129.47 0
/tag_last pm
/setprop @pm color #4a4e54
/parametric bend 20.24 3 10.93 360
/move 0 139.8 0
/tag_last pn
/setprop @pn color #4a4e54
/parametric bend 18.83 3 10.93 360
/move 0 150.13 0
/tag_last po
/setprop @po color #4a4e54

# --- copper inner liner, lower half of the bell ---
/parametric bend 68.52 1.5 10.93 360
/move 0 5.47 0
/tag_last pp
/setprop @pp color #b5651d
/parametric bend 63.21 1.5 10.93 360
/move 0 15.8 0
/tag_last pq
/setprop @pq color #b5651d
/parametric bend 58.09 1.5 10.93 360
/move 0 26.13 0
/tag_last pr
/setprop @pr color #b5651d
/parametric bend 53.17 1.5 10.93 360
/move 0 36.47 0
/tag_last ps
/setprop @ps color #b5651d
/parametric bend 48.46 1.5 10.93 360
/move 0 46.8 0
/tag_last pt
/setprop @pt color #b5651d
/parametric bend 43.97 1.5 10.93 360
/move 0 57.13 0
/tag_last pu
/setprop @pu color #b5651d
/parametric bend 39.71 1.5 10.93 360
/move 0 67.47 0
/tag_last pv
/setprop @pv color #b5651d
/parametric bend 35.7 1.5 10.93 360
/move 0 77.8 0
/tag_last pw
/setprop @pw color #b5651d

# --- throat flange and taper to chamber ---
/parametric bend 23 5 8 360
/move 0 156 0
/tag_last px
/setprop @px color #5a5e66
/parametric bend 21.62 3 5.6 360
/move 0 157.8 0
/tag_last py
/setprop @py color #8a8f98
/parametric bend 27.88 3 5.6 360
/move 0 162.8 0
/tag_last pz
/setprop @pz color #8a8f98
/parametric bend 34.12 3 5.6 360
/move 0 167.8 0
/tag_last paa
/setprop @paa color #8a8f98
/parametric bend 40.38 3 5.6 360
/move 0 172.8 0
/tag_last pab
/setprop @pab color #8a8f98

# --- combustion chamber barrel: one annular shell, hollow ---
/parametric bend 43.5 3 81 360
/move 0 215.5 0
/tag_last pac
/setprop @pac color #8a8f98
/parametric bend 46 4 6 360
/move 0 178 0
/tag_last pad
/setprop @pad color #5a5e66
/parametric bend 46 4 6 360
/move 0 255 0
/tag_last pae
/setprop @pae color #5a5e66

# --- 16 external cooling tubes + inlet/outlet manifold rings ---
/parametric cylinder ($TUBER) ($TUBER) 73
/move 48.5 215.5 0
/tag_last paf
/setprop @paf color #9aa0a8
/pattern circ 16 360 Y @paf
/parametric torus 48.5 4
/rotate 90 0 0
/move 0 179 0
/tag_last pag
/setprop @pag color #cd7f32
/parametric torus 48.5 4
/rotate 90 0 0
/move 0 252 0
/tag_last pah
/setprop @pah color #4a90d9

# --- injector plate with raised injector posts ---
/parametric cylinder 45 45 8
/move 0 260 0
/tag_last pai
/setprop @pai color #6b6f76
/parametric cylinder 3 3 5
/move 30 254.5 0
/tag_last paj
/setprop @paj color #c9a227
/pattern circ 12 360 Y @paj
/parametric cylinder 5 5 5
/move 0 254.5 0
/tag_last pak
/setprop @pak color #c9a227
/parametric bend 45 4 6 360
/move 0 265 0
/tag_last pal
/setprop @pal color #5a5e66

# --- powerhead deck ---
/parametric cylinder 40 40 ($TLEN*0.04)
/move 0 270 0
/tag_last pam
/setprop @pam color #b8bcc4
/parametric bend 41 3 5 360
/move 0 266 0
/tag_last pan
/setprop @pan color #5a5e66

# --- methane (fuel) turbopump housing, starboard ---
/parametric cylinder 22 22 26
/move 58 226 0
/tag_last pao
/setprop @pao color #b8bcc4
/parametric cone 14 8 24
/move 58 243 0
/tag_last pap
/setprop @pap color #cd7f32
/parametric torus 20 3
/rotate 90 0 0
/move 58 228 0
/tag_last paq
/setprop @paq color #cd7f32
/parametric cylinder 5 5 14
/rotate 0 0 90
/move 84 226 0
/tag_last par
/setprop @par color #aab0b8
/parametric bend 6.5 2 4 360
/move 58 213 0
/tag_last pas
/setprop @pas color #5a5e66
# --- LOX turbopump housing, port ---
/parametric cylinder 18 18 22
/move -58 230 0
/tag_last pat
/setprop @pat color #b8bcc4
/parametric cone 11 7 24
/move -58 244.5 0
/tag_last pau
/setprop @pau color #4a90d9
/parametric torus 16 3
/rotate 90 0 0
/move -58 232 0
/tag_last pav
/setprop @pav color #4a90d9
/parametric cylinder 5 5 14
/rotate 0 0 90
/move -83 230 0
/tag_last paw
/setprop @paw color #aab0b8
/parametric bend 6.5 2 4 360
/move -58 241 0
/tag_last pax
/setprop @pax color #5a5e66

# --- methane feed: pump outlet down to cooling inlet manifold ---
/parametric cylinder ($PIPER) ($PIPER) 34
/move 58 198 0
/tag_last pay
/setprop @pay color #aab0b8
/parametric sphere 5.5
/move 58 179 0
/tag_last paz
/setprop @paz color #aab0b8
/parametric cylinder ($PIPER) ($PIPER) 12
/rotate 0 0 90
/move 52.5 179 0
/tag_last pba
/setprop @pba color #aab0b8
# --- methane tapoff: pump top up to injector rim ---
/parametric cylinder ($PIPER) ($PIPER) 21
/move 58 249.5 0
/tag_last pbb
/setprop @pbb color #aab0b8
/parametric sphere 5.5
/move 58 260 0
/tag_last pbc
/setprop @pbc color #aab0b8
/parametric cylinder ($PIPER) ($PIPER) 13
/rotate 0 0 90
/move 51.5 260 0
/tag_last pbd
/setprop @pbd color #aab0b8
# --- LOX feed: pump top riser and side entry into the deck ---
/parametric cylinder ($PIPER) ($PIPER) 29
/move -58 255.5 0
/tag_last pbe
/setprop @pbe color #aab0b8
/parametric sphere 5.5
/move -58 270 0
/tag_last pbf
/setprop @pbf color #aab0b8
/parametric cylinder ($PIPER) ($PIPER) 22
/rotate 0 0 90
/move -47 270 0
/tag_last pbg
/setprop @pbg color #aab0b8

# --- main valves on both feed runs ---
/parametric cylinder 6 6 12
/move 58 206 0
/tag_last pbh
/setprop @pbh color #7a7e86
/parametric cylinder 2.5 2.5 8
/rotate 0 0 90
/move 63 206 0
/tag_last pbi
/setprop @pbi color #aab0b8
/parametric cylinder 6 6 5
/rotate 0 0 90
/move 68 206 0
/tag_last pbj
/setprop @pbj color #c0392b
/parametric cylinder 6 6 12
/move -58 250 0
/tag_last pbk
/setprop @pbk color #7a7e86
/parametric cylinder 2.5 2.5 8
/rotate 0 0 90
/move -63 250 0
/tag_last pbl
/setprop @pbl color #aab0b8
/parametric cylinder 6 6 5
/rotate 0 0 90
/move -68 250 0
/tag_last pbm
/setprop @pbm color #c0392b

# --- 4 mounting brackets (plate + gusset) ---
/parametric box 4 24 14
/move 49 228 0
/tag_last pbn
/setprop @pbn color #6e727a
/pattern circ 4 360 Y @pbn
/parametric box 3 18 4
/rotate 0 0 -25
/move 46 238 0
/tag_last pbo
/setprop @pbo color #6e727a
/pattern circ 4 360 Y @pbo

# --- gimbal bearing, thrust plate, struts, lifting lugs ---
/parametric box 26 12 26
/move 0 282 0
/tag_last pbp
/setprop @pbp color #5a5e66
/parametric cylinder 5 5 36
/rotate 0 0 90
/move 0 282 0
/tag_last pbq
/setprop @pbq color #8a8f98
/parametric cylinder 5 5 36
/rotate 90 0 0
/move 0 282 0
/tag_last pbr
/setprop @pbr color #8a8f98
/parametric box 64 6 64
/move 0 291 0
/tag_last pbs
/setprop @pbs color #7a7f88
/parametric box 4 36 6
/rotate 0 0 -35
/move 40 273.5 0
/tag_last pbt
/setprop @pbt color #6e727a
/parametric box 4 36 6
/rotate 0 0 35
/move -40 273.5 0
/tag_last pbu
/setprop @pbu color #6e727a
/parametric box 4 36 6
/rotate 35 0 0
/move 0 273.5 40
/tag_last pbv
/setprop @pbv color #6e727a
/parametric box 4 36 6
/rotate -35 0 0
/move 0 273.5 -40
/tag_last pbw
/setprop @pbw color #6e727a
/parametric box 8 6 8
/move 24 297 24
/tag_last pbx
/setprop @pbx color #6e727a
/parametric box 8 6 8
/move 24 297 -24
/tag_last pby
/setprop @pby color #6e727a
/parametric box 8 6 8
/move -24 297 24
/tag_last pbz
/setprop @pbz color #6e727a
/parametric box 8 6 8
/move -24 297 -24
/tag_last pca
/setprop @pca color #6e727a
