[REFACTOR] Reorganize dual contouring vertex overlap logic into separate modules#49
Merged
[REFACTOR] Reorganize dual contouring vertex overlap logic into separate modules#49
Conversation
- Made `apply_overlap_to_surface_pair` a public function by removing the leading underscore. - Updated all relevant references to use the new function name for consistency.
- Moved `_compute_vertices` to a new `_gen_vertices_legacy.py` module for better code organization. - Updated references to use the legacy implementation where appropriate.
… vertex averaging - Added `find_and_inject_multi_surface_constraints` to inject cross-surface weighted QEF constraints at shared voxels. - Enhanced `_gen_vertices` to incorporate extra constraints and apply weight scaling during QEF computation. - Implemented `_average_overlapping_vertices` for watertight vertex alignment across overlapping meshes. - Updated tests to validate the weighted QEF pipeline, vertex overlap resolution, and high-resolution stress scenarios.
…moval - Replaced pairwise vertex averaging with all-surface averaging for watertightness at overlap voxels. - Introduced `_remove_fault_overlap_triangles` to handle removal of triangles from overlapping fault and layer meshes. - Reduced `DEFAULT_CROSS_SURFACE_WEIGHT` to 10.0 for better constraint handling. - Updated tests to validate triangle removal at
Member
Author
This stack of pull requests is managed by Graphite. Learn more about stacking. |
This was referenced Mar 13, 2026
Merged
- Disabled `plt.savefig` calls in `test_finite_fault_splines.py` and `test_finite_fault_uv_map_plots.py` for cleaner test outputs. - Streamlined test behavior by focusing on plot display without file generation.
Member
Author
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.

[CLN] Refactor dual contouring vertex overlap logic and remove unused parallel processing code
Remove unused parallel processing code
_parallel_process,_parallel_process_surfaces_v2, and_process_surface_batch_v2from_dual_contouring_v2.pySplit vertex overlap logic into focused modules
_vertex_overlap.pyinto three specialized modules:_find_vertex_overlap.py: Contains voxel overlap detection logic_apply_vertex_overlap_logic.py: Handles relation-based overlap application_apply_mesh_modifications.py: Contains mesh modification operationsapply_overlap_to_surface_pairpublic by removing underscore prefix_apply_relations_to_overlapstoapply_relations_to_overlapsSeparate legacy vertex generation code
_compute_verticesfunction from_gen_vertices.pyto new_gen_vertices_legacy.pymodule_dual_contouring.pyand_sequential_triangulation.pyto use legacy implementation_gen_vertices.pyto focus on core vertex generation functionalityUpdate interface references
dual_contouring_interface.pyto import from the new module structure_apply_relations_to_overlapstoapply_relations_to_overlaps