From 6c07892d07d0a5a3d780b68531c95dc4fc7e6d35 Mon Sep 17 00:00:00 2001 From: ramox81 <184937705+ramox81@users.noreply.github.com> Date: Fri, 11 Sep 2026 10:39:12 +0300 Subject: [PATCH 1/2] Complete rectangular and polygonal revision clouds directly --- src/modules/draw/draw/revcloud.rs | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/src/modules/draw/draw/revcloud.rs b/src/modules/draw/draw/revcloud.rs index 516f0e23a..74a7ecc05 100644 --- a/src/modules/draw/draw/revcloud.rs +++ b/src/modules/draw/draw/revcloud.rs @@ -199,6 +199,12 @@ impl RevCloudCommand { entity.common_mut().handle = Handle::NULL; } } + if replacement.is_none() + && matches!(self.creation, CreationMode::Rectangular | CreationMode::Polygonal) + { + self.message = None; + return CmdResult::CommitAndExit(entity); + } self.stage = Stage::Reverse(PendingCloud { entity, replacement, From 6747cce1a86412f70c36cbcd7afd91f46187abe3 Mon Sep 17 00:00:00 2001 From: ramox81 <184937705+ramox81@users.noreply.github.com> Date: Fri, 11 Sep 2026 11:18:48 +0300 Subject: [PATCH 2/2] Accept close keywords for polygonal revision clouds --- src/modules/draw/draw/revcloud.rs | 3 +++ 1 file changed, 3 insertions(+) diff --git a/src/modules/draw/draw/revcloud.rs b/src/modules/draw/draw/revcloud.rs index 74a7ecc05..61170d971 100644 --- a/src/modules/draw/draw/revcloud.rs +++ b/src/modules/draw/draw/revcloud.rs @@ -725,6 +725,9 @@ impl CadCommand for RevCloudCommand { return self.on_undo_step(); } Stage::Create => match keyword.as_str() { + "C" | "CLOSE" if self.creation == CreationMode::Polygonal => { + return Some(if self.points.len() >= 3 { self.on_enter() } else { CmdResult::NeedPoint }); + } "A" | "ARC" | "ARCLENGTH" => self.stage = Stage::ArcLength, "O" | "OBJECT" => { self.stage = Stage::Object;