WIP refactor of the profile generator #5
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.
Hi,
I've been spending some time over the last two weeks trying to refactor the profile generator with a slightly more modular approach - this is currently only done for Simplify3D profiles, but the idea is that the same logic can be reused for Cura as well, cutting down on a lot of duplication in the code. It brings in a dependency on Jinja2 to render profiles, keeping the rendering separate from the logic.
I've made some successful single extrusion prints with results from the refactored generator, but there are some differences in some calculations that make the results difficult to compare to the original.
I'm putting this up here mostly as a starting point for a discussion - it'd be quite difficult to actually merge this as it is, as there are a lot of potential regressions. So mostly I wanted show this around to see how you feel about this and to ask for some help concerning some of the calculations that might currently be wrong because I'm lacking some context.
Some notes:
Please let me know what you think! Again I don't think this should be merged as it is, but hopefully if I can get some more context I can make my code behave just like the old code, integrate changes from the development branch, and add cura profile generation, to bring it to a state where it can be merged.