feat: Implement depth cutout symmetry and associated functionalities
- Introduced a new proposal for depth cutout symmetry, allowing for the reuse of depth replacement and geometry operations. - Added requirements for maintaining default thickness values for cutout nodes and ensuring proper initialization during object creation. - Enhanced symmetry node to handle existing geometry, including alignment, mirroring, and boundary filling. - Implemented fill smoothing to control the geometry of generated walls while preserving original surfaces. - Created tests to validate the functionality of the new symmetry features against baseline geometry. - Updated existing assets and node groups to support the new symmetry capabilities without introducing additional dependencies.
This commit is contained in:
@@ -83,7 +83,7 @@ def test_split_profile_tapers_within_boundary_band(resolution, aspect):
|
||||
|
||||
@pytest.mark.parametrize("mode", [0, 1])
|
||||
@pytest.mark.parametrize("reference", [0, 2])
|
||||
def test_normal_blend_converges_to_raw_and_reaches_full_smoothing(mode, reference):
|
||||
def test_normal_blend_weights_balloon_and_keeps_full_shell_smoothing(mode, reference):
|
||||
obj, set_value = surface(resolution=2)
|
||||
group = obj.modifiers[0].node_group
|
||||
# The production interface renames the Shell thickness socket after building.
|
||||
@@ -117,6 +117,9 @@ def test_normal_blend_converges_to_raw_and_reaches_full_smoothing(mode, referenc
|
||||
results.append(np.array(mesh.attributes["normal_result"].data[0].vector[:]))
|
||||
finally:
|
||||
ev.to_mesh_clear()
|
||||
np.testing.assert_array_equal(results[0], [0,0,1])
|
||||
np.testing.assert_array_equal(results[-1], [1,0,0])
|
||||
assert np.linalg.norm(results[1]-results[0]) < np.linalg.norm(results[2]-results[0]) < .001
|
||||
if mode:
|
||||
np.testing.assert_array_equal(results, [[1,0,0]] * len(results))
|
||||
else:
|
||||
np.testing.assert_array_equal(results[0], [0,0,1])
|
||||
assert np.linalg.norm(results[1]-results[0]) < np.linalg.norm(results[2]-results[0]) < .001
|
||||
|
||||
Reference in New Issue
Block a user