Files
AnyImage/docs/internals/operators/mask.md
nan f5aff50b13 Refactor and clean up codebase by removing unused functions and reorganizing imports
- Removed unused model keys and functions from properties.py.
- Deleted projection.py as its functions were no longer needed.
- Cleaned up model_catalog.py by removing unused model directory function.
- Updated imports in various test files to reflect new module structure.
- Removed deprecated test cases related to image editing tools.
- Added new tests for ONNX runtime provider selection logic.
2026-09-09 10:31:56 +08:00

1.0 KiB
Raw Blame History

Mask Alpha 编辑

operators/mask_tool.py 定义 EditImageAlpha 和 MaskTool,使用 common/viewport.py 的 ImageGesture 管理 Lasso、Brush 与 Polyline。

flowchart TD
    A[冻结 Scene 的 Gesture、Mode、Radius] --> B[屏幕手势与 Overlay]
    B --> C[完成后投影并生成覆盖 M]
    C --> D[读取源 RGBA]
    D --> E[按模式计算 Alpha]
    E --> F[保留 RGB 和源画布尺寸]
    F --> G[替换 Packed Image 并提交一个 Undo]
模式 源 Alpha A 与覆盖 M 的结果
Set A × M
Add max(A, M)
Subtract A × (1 − M)

Brush 拖动时维护简化屏幕路径、圆形印记与连接条的并集预览;释放时一次生成图片覆盖。Polyline 使用逐点路径,至少三个点后通过闭合圈、双击或 Enter 完成,Backspace 删除末点。

结果保留 Empty 的身份、矩阵、显示尺寸和偏移。全透明结果有效,取消或切换工具清理未提交的 Overlay;共享 Image 通过统一替换入口分流。