From 71e6a12ebf87a844a9fed70c4c99ec0aa0545e58 Mon Sep 17 00:00:00 2001 From: ramox81 <184937705+ramox81@users.noreply.github.com> Date: Fri, 9 Oct 2026 19:29:33 +0300 Subject: [PATCH] Record a region loft section as its boundary curve A lofted surface's region cross sections are recorded as the curve round each region, as the reference records them; a region recorded as a region made the reference refuse to open the drawing. Co-Authored-By: Claude Opus 5.5 --- src/scene/model/loft_command_model.rs | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/src/scene/model/loft_command_model.rs b/src/scene/model/loft_command_model.rs index 9577096a8..7d1394374 100644 --- a/src/scene/model/loft_command_model.rs +++ b/src/scene/model/loft_command_model.rs @@ -9,7 +9,9 @@ use super::sweep_model::embedded_path; pub(crate) fn embedded_section(entity: &EntityType) -> Option { match entity { - EntityType::Region(region) => Some(EmbeddedEntity::Region(region.clone())), + // A region as the curve round it, as the reference records it. + EntityType::Region(region) => Some(super::sweep_model::region_boundary_entity(entity) + .map_or_else(|| EmbeddedEntity::Region(region.clone()), |(curve, _)| curve)), EntityType::Point(point) => Some(EmbeddedEntity::Point(point.clone())), _ => embedded_path(entity), }