From 025398bbb1632cd7b195d8ca3e4b212a7811af1c Mon Sep 17 00:00:00 2001 From: ramox81 <184937705+ramox81@users.noreply.github.com> Date: Thu, 17 Sep 2026 14:54:33 +0300 Subject: [PATCH] Preserve spline grip display mode after smooth solve --- src/entities/spline.rs | 1 - src/scene/parametric_solve.rs | 3 +++ 2 files changed, 3 insertions(+), 1 deletion(-) diff --git a/src/entities/spline.rs b/src/entities/spline.rs index 481d57543..9cdf5c68b 100644 --- a/src/entities/spline.rs +++ b/src/entities/spline.rs @@ -128,7 +128,6 @@ pub(crate) fn replace_with_nurbs(spline: &mut Spline, curve: &NurbsCurve3) { spline.fit_points = fit_points; spline.begin_tangent = acadrust::types::Vector3::ZERO; spline.end_tangent = acadrust::types::Vector3::ZERO; - spline.cv_frame_visible = true; spline.flags.rational = spline.weights.windows(2) .any(|pair| (pair[0] - pair[1]).abs() > 1e-12); spline.flags.closed = false; diff --git a/src/scene/parametric_solve.rs b/src/scene/parametric_solve.rs index fef63b70e..889671264 100644 --- a/src/scene/parametric_solve.rs +++ b/src/scene/parametric_solve.rs @@ -2979,6 +2979,9 @@ fn solve_scope( .collect(); if changed { let mut updated = spline.clone(); + if crate::entities::spline::uses_fit_method(spline) { + updated.cv_frame_visible = true; + } updated.degree = curve.degree as i32; updated.knots = curve.knots.clone(); updated.control_points = control_points;