From 0a50d9098ea417b926a7ed8c1aa217c4893700bd Mon Sep 17 00:00:00 2001 From: ganjihong Date: Fri, 28 Aug 2026 16:45:26 +0800 Subject: [PATCH] =?UTF-8?q?fix(json=5Fto=5Fcdsl):=20=E8=A1=A5=E5=85=85?= =?UTF-8?q?=E5=80=92=E8=A7=92=E8=A7=92=E5=BA=A6=E7=BC=BA=E5=A4=B1=E5=85=9C?= =?UTF-8?q?=E5=BA=95=E9=80=BB=E8=BE=91=E6=B3=A8=E9=87=8A?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- json_to_cdsl/evidence_v2_to_cdsl.py | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/json_to_cdsl/evidence_v2_to_cdsl.py b/json_to_cdsl/evidence_v2_to_cdsl.py index 717ab613..719c27a0 100644 --- a/json_to_cdsl/evidence_v2_to_cdsl.py +++ b/json_to_cdsl/evidence_v2_to_cdsl.py @@ -611,8 +611,14 @@ def _deferred_params(family: str, feature: dict[str, Any], props: dict[str, Any] params: dict[str, Any] = {"distance_mm": distance} angle = _number(props.get("EdgeChamferAngle")) if angle <= 0 and len(raw_dimensions) > 1: + # 兜底:EdgeChamferAngle 缺失时,第二个 raw 值按角度(弧度)解释。 + # 注意:SolidWorks 角度 system value 为弧度;Distance-Distance 倒角的 + # 第二距离(米)也会落入该兜底,但真实数据中倒角均为 Distance-Angle + # (第二值为 π/4 等弧度值),runtime 通过 distance_2_mm/angle_rad + # 契约消费第二参数,不会把角度静默当等距。 angle = raw_dimensions[1] if angle > 0: + # Distance-Angle 倒角:角度单位为弧度(build123d 侧由 runtime 换算)。 params["angle_rad"] = angle return params, [] if family == "LPattern":