From 2ccdc970ceae32e199dc44e5af9308211d432c28 Mon Sep 17 00:00:00 2001 From: sladro Date: Thu, 12 Feb 2026 10:57:03 +0800 Subject: [PATCH] =?UTF-8?q?feat:=20=E6=B7=BB=E5=8A=A0=E4=BA=86=E8=87=AA?= =?UTF-8?q?=E7=94=B1=E9=94=BB=E6=97=A0=E5=9C=86=E5=A4=B4=E6=AF=9B=E5=9D=AF?= =?UTF-8?q?=E7=9A=84=E7=BB=98=E5=9B=BE=E5=8A=9F=E8=83=BD=E3=80=82?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- Cad/BlockRawFreeForgeNoRoundHeadDrawer.cs | 11 ++++++----- 1 file changed, 6 insertions(+), 5 deletions(-) diff --git a/Cad/BlockRawFreeForgeNoRoundHeadDrawer.cs b/Cad/BlockRawFreeForgeNoRoundHeadDrawer.cs index a490173..6d31b70 100644 --- a/Cad/BlockRawFreeForgeNoRoundHeadDrawer.cs +++ b/Cad/BlockRawFreeForgeNoRoundHeadDrawer.cs @@ -147,14 +147,14 @@ namespace CadParamPluging.Cad // 绘制左侧框线(连接左端圆弧和中间剖面框) // 用户需求: - // 1. 去掉最外侧的圆角 -> filletR 传入 0 + // 1. 去掉最外侧的圆角 -> filletR 传入 innerFilletR (Updated per requirement) // 2. 横向闭合:水平线需延伸到中间框圆角结束的地方 (xSectionLeft + innerFilletR) 以实现无缝连接 - // 3. 竖向不闭合:DrawBoxSideFrame 内部不 Closed,且不画连接处的竖线 - DrawBoxSideFrame(ctx, xInnerLeft, xSectionLeft + innerFilletR, oy, H, 0, isLeft: true); + // 3. 竖向不闭合:DrawBoxSideFrame 内部不 Closed,且不画连接处的竖线 (Now Closed=true in Helper) + DrawBoxSideFrame(ctx, xInnerLeft, xSectionLeft + innerFilletR, oy, H, innerFilletR, isLeft: true); // 绘制右侧框线 // 类似的,水平线起点延伸到 (xSectionRight - innerFilletR) - DrawBoxSideFrame(ctx, xSectionRight - innerFilletR, xInnerRight, oy, H, 0, isLeft: false); + DrawBoxSideFrame(ctx, xSectionRight - innerFilletR, xInnerRight, oy, H, innerFilletR, isLeft: false); // 3. 剖面填充 - 只在中间区域 if (innerFilletR > 0.01) @@ -242,7 +242,8 @@ namespace CadParamPluging.Cad double xOuterRight = ox + visualTotalW; // 修正:由于去掉了最外侧圆角,标注界线起点直接对齐最外侧边界 - double xDimOrigin = xOuterRight; + // Refinment: 减去倒角半径,使尺寸界线能够接触到直边,避免因为圆角产生悬空 + double xDimOrigin = xOuterRight - innerFilletR; AddLinearDim( ctx,