Refactor Cutout and Image Editing Logic

- Renamed "Base Plane Depth" to "Reference Depth" across validate_cutout.py for consistency.
- Introduced a new specification for Cutout mesh sampling to ensure source pixel spacing is preserved and limits are applied correctly.
- Unified naming conventions for image editing results to maintain consistency across Remove Background, Upscale, and Crop operations.
- Updated the handling of Refine Selection to ensure it retains the original bounds and does not apply unnecessary cropping.
- Enhanced material generation logic to connect image color directly to IOR Level, improving the rendering of dark areas.
- Established clear requirements for geometry depth controls and image result materials to ensure consistent behavior across different components.
- Removed outdated logic and ensured all changes are documented and tested for regression.
This commit is contained in:
2026-09-03 01:02:10 +08:00
parent a6041cbe03
commit bdbde1a10d
47 changed files with 1120 additions and 257 deletions

View File

@@ -712,7 +712,7 @@ def build_node_group(shape):
options = group.interface.new_panel(name="Options", default_closed=True)
reference_depth = _float_input(
group,
"Base Plane Depth",
"Reference Depth",
1.0,
0.0,
None,
@@ -736,7 +736,7 @@ def build_node_group(shape):
options = group.interface.new_panel(name="Options", default_closed=True)
reference_depth = _float_input(
group,
"Base Plane Depth",
"Reference Depth",
1.0,
0.0,
None,
@@ -771,7 +771,7 @@ def build_node_group(shape):
"Depth Image",
"Depth Scale",
"Uniform Scale",
"Base Plane Depth",
"Reference Depth",
"Depth Direction",
},
)
@@ -796,7 +796,7 @@ def build_node_group(shape):
controls.outputs["Uniform Scale"],
controls.outputs["Depth Direction"],
controls.outputs["Depth Image"],
controls.outputs["Base Plane Depth"],
controls.outputs["Reference Depth"],
)
output_location = (5100.0, 600.0)
else:
@@ -806,7 +806,7 @@ def build_node_group(shape):
controls.outputs["Thickness"],
controls.outputs["Depth Scale"],
controls.outputs["Uniform Scale"],
controls.outputs["Base Plane Depth"],
controls.outputs["Reference Depth"],
controls.outputs["Depth Image"],
)
output_location = (8200.0, 400.0)
@@ -877,7 +877,7 @@ def build_cutout_modifier_group(shape_groups):
reference_depth = _float_input(
group,
"Base Plane Depth",
"Reference Depth",
1.0,
0.0,
None,