Files
AnyImage/openspec/changes/refine-cutout-split-boundaries/proposal.md
nan 31074bd511 Add tests and implement boundary smoothing and cutout functionality
- Introduced tests for boundary smoothing in `test_boundary_smoothing.py`, verifying that smoothing reduces stair-step artifacts while preserving boundary integrity.
- Added tests for cutout boundary behavior in `test_cutout_boundary.py`, ensuring proper handling of boundary triangles and normal blending.
- Created `test_temporary_attributes.py` to check the cleanup of temporary attributes across depth modifier branches, ensuring no warnings are raised.
- Implemented point culling functionality in `test_validity.py`, confirming that invalid points are removed without affecting adjacent geometry.
- Developed boundary smoothing logic in `boundary_smoothing.py`, allowing for depth smoothing while maintaining edge integrity.
- Added cutout boundary management in `cutout_boundary.py`, including functions for removing boundary triangles and tapering thickness profiles.
- Implemented validity checks in `validity.py` to ensure proper deletion of invalid vertices and associated wire edges.
2026-09-11 20:37:20 +08:00

1.4 KiB
Raw Blame History

Why

Depth Cutout 的 Split 新边界仍继承原 Balloon 厚度,容易膨胀成尖脊;Boundary Smooth 在锯齿三角形上可能翻面,进一步改变厚度方向。恐龙头骨实图实验已确认边界厚度收敛、切口圆润和薄厚度下减弱法向平滑的效果,需要将这些行为整理为正式节点实现。

What Changes

  • Split 后清理三个顶点都位于边界的三角面,降低锯齿切口的退化风险。
  • 新切口的 Balloon 厚度在边界收敛为零,邻近区域逐渐恢复;Edge Round 同时控制新切口的圆润过渡。
  • 法向平滑结果按厚度连续混合:薄厚度接近原法向,正常厚度恢复既有平滑效果,默认始终启用。
  • 保留 Split Threshold、Boundary Smooth 及厚度、Edge Round 的实时调节,参数变化后重新计算边界与形状。

Capabilities

New Capabilities

  • cutout-split-boundary-shaping:切口清理、边界厚度收敛、圆润过渡及厚度关联法向平滑。

Modified Capabilities

Impact

  • tools/nodes/groups/image_depth_cutout.py 及必要的 tools/nodes/common 构建函数。
  • tests/tools/nodes 的 Cutout、边界平滑及属性生命周期测试。
  • src/anyimage/assets/O_AnyImage.blend 中的 Cutout 节点资产及对应加载版本。
  • 基于当前工作区的边界深度平滑继续实施,保留已有修改。