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.
This commit is contained in:
@@ -36,6 +36,7 @@ def panorama(depth=3, alpha=1, subdivide=3, reference=3):
|
||||
|
||||
for name, value in (("Depth Image", image), ("Subdivide", subdivide), ("Reference Distance", reference)):
|
||||
set_value(name, value)
|
||||
set_value("Boundary Smooth", 0)
|
||||
return obj, set_value
|
||||
|
||||
|
||||
@@ -209,6 +210,7 @@ def test_continuous_spherical_slope_does_not_split_at_seam_or_poles():
|
||||
obj, set_value = panorama(depth)
|
||||
original = evaluated(obj)
|
||||
set_value("Split Threshold", 1)
|
||||
set_value("Boundary Smooth", 12)
|
||||
points, faces, uv = evaluated(obj)
|
||||
np.testing.assert_allclose(points, original[0], atol=1e-6)
|
||||
assert faces == original[1]
|
||||
|
||||
Reference in New Issue
Block a user