Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Cura 11227 zseam support #2067

Merged
merged 16 commits into from
May 3, 2024
Merged

Cura 11227 zseam support #2067

merged 16 commits into from
May 3, 2024

Conversation

saumyaj3
Copy link
Contributor

Add support z-seam type to inset order optimization

The implementation of the order optimizer has been updated to account for the z-seam type for support. This includes adjustment of the start point calculation and Both 'InsetOrderOptimizer' and 'PathOrderOptimizer' classes have been modified to accommodate these changes.

CURA-11227

saumyaj3 and others added 2 commits April 19, 2024 16:54
The implementation of the order optimizer has been updated to account for the z-seam type for support. This includes adjustment of the start point calculation and  Both 'InsetOrderOptimizer' and 'PathOrderOptimizer' classes have been modified to accommodate these changes.

CURA-11227
@saumyaj3 saumyaj3 marked this pull request as draft April 19, 2024 14:57
saumyaj3 and others added 5 commits April 23, 2024 13:48
This update tweaks handling of the z-seam by allowing it to shift away from the model based on specific settings. It also introduces better path optimization, by calculating the shortest distance from a point to a line segment, optimizing how the best position is retrieved if such support exists and dealing with edge cases where no optimal starting path is found.

CURA-11227
Refactored the logic of the PathOrderOptimizer function to ensure 'number_of_paths_analysed' is increased and reset only in the suitable scenarios. Also, corrected the case of a warning message related to the 'z seam distance'.

CURA-11227
@saumyaj3 saumyaj3 marked this pull request as ready for review April 23, 2024 12:59
src/settings/Settings.cpp Outdated Show resolved Hide resolved
include/PathOrderOptimizer.h Outdated Show resolved Hide resolved
saumyaj3 and others added 3 commits May 1, 2024 11:31
The code changes revolve around the functionality of the InsetOrderOptimizer and related path optimizers. These changes allow for better handling of support meshes by allowing the optimizer to consider if a layer part is supported or not. Furthermore, the type of paths used in path optimization was switched from 'ClipperLib::Paths' to 'Polygons' providing better performance and cleaner code. Also, the conditions for EZSeamType::SUPPORT in the seam configuration were removed.

CURA-11227
@saumyaj3 saumyaj3 requested a review from casperlamboo May 1, 2024 14:11
saumyaj3 and others added 4 commits May 2, 2024 14:20
Instead of specific case of support away from model, now it is given from Insetoptimiser as disallowed area. this can also be used for other features in future.

CURA-11227
The specific "support away from model" case has been refactored to a more generic "disallowed areas" in the Insetoptimizer. This adjustment enhances flexibility and allows for potential future utilization in other features.

Related to CURA-11227.
Renamed the variable 'disallowed_area' to 'disallowed_areas_for_seams' in different files for more accurate representation.

CURA-11227
@HellAholic HellAholic merged commit fc4266a into main May 3, 2024
20 checks passed
@HellAholic HellAholic deleted the CURA-11227-zseam-support branch May 3, 2024 13:01
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants