gjm
|
bbb899c0a0
|
fix: HLR 退化圆弧按来源实体直径判断,并支持爬梯
在删除圆心角为 PI 的退化圆弧时,增加直径比较:
- 弯头(eElbow / eReduceElbow):带法兰(连接类型 3/5)取法兰外径 m_dInterfaceD,
否则取画法直径 m_dD;
- 爬梯(AecDbClimbStair):取踏管直径 ClimbStair::dd。
仅当圆弧直径大于来源实体直径时才删除。
getElbowDiameter 改为 getSourceDiameter,removeFittingDegenerateArcs
改为 removeDegenerateArcs(已不止管件)。
|
2026-10-16 23:20:57 +08:00 |
|
gjm
|
c0c04952dc
|
fix: HLR 结果中删除 AecDbEwFitting 产生的退化圆弧
原 isDegenerateArc 以 弧长/半径 比值判断退化圆弧,且无法区分结果来源。
改为按来源实体类型判断:
- result1 的键是数据库实体 id,直接判断该 id 是否为 AecDbEwFitting;
- result2 的键是无 id 的补充实体指针,先经 mpAdditional
(数据库实体id -> 其产生的补充实体) 反查归属的数据库实体 id,再判断。
删除规则:结果实体是 AcDbArc 且圆心角为 PI 时删除。
|
2026-10-16 21:34:08 +08:00 |
|
company-desktop-computer
|
a1c7d39dc6
|
fix(HLR): 清理剖切结果中的退化圆弧,避免圆心角溢出生成反向大圆弧
AecDbXCamera::hlrCalc 在 HLR 计算后新增 isDegenerateArc 判定:结果为 AcDbArc 且 弧长/半径 < 1e-6 时视为退化圆弧(圆心角极小),从 result1/result2 中删除,防止数值溢出把"很小一段"翻转成"反向的大圆弧"。
|
2026-10-16 13:11:21 +08:00 |
|
gjm
|
164968b62e
|
chore
把非utf8-bom编码的cpp/h文件改为 utf8 bom 编码, msvc识别utf8编码时,如果不是bom格式的,会使用当前cp_oem来解码.
|
2026-10-04 00:04:20 +08:00 |
|
gjm
|
345044cb46
|
初始化提交
|
2026-09-28 15:28:50 +08:00 |
|