This commit is contained in:
Nick Estes
2026-09-07 12:11:43 -07:00
parent 518fe64b13
commit 59ab496f17
13 changed files with 168 additions and 32 deletions
+8
View File
@@ -152,6 +152,10 @@ module MoonModel
end
values["size"] = { "input" => "diameter", "value" => value, "unit" => unit, "meaning" => meaning }
end
shell = values.fetch("shell", {}).dup
shell["interior"] = yes_no("For a one-piece Moon, use slicer-controlled infill instead of a hollow cavity?",
shell.fetch("interior", "solid") == "solid") ? "solid" : "hollow"
values["shell"] = shell
io.say("Terrain sizing at this size:")
[1, 2, 5, 10].each do |factor|
trial = Config.new(values.merge("vertical_exaggeration" => factor))
@@ -179,6 +183,10 @@ module MoonModel
io.say("Datum diameter: #{units(summary.datum_diameter_mm)}")
io.say("Finished envelope: #{units(summary.final_envelope_mm)}; relief #{format('%.3f', summary.relief_range_mm)} mm")
io.say("Maximum safe exaggeration: #{format('%.2f', summary.safe_exaggeration)}x; mode: #{summary.mode.tr('_', ' ')} (#{summary.mode_source})")
if summary.segmented?
values["shell"]["interior"] = "hollow"
io.say("Eight-section output uses hollow sections; the solid/infill option applies only to one-piece Moons.")
end
end
def engineering(values)