PrusaSlicer
PrusaSlicer copied to clipboard
feat: initial development of Paint on Brim
The purpose of this work is to introduce support for the Paint on Brims feature. Many people from the community have asked for this feature, including myself, and I'd like to help contribute it.
I'm totally new to PrusaSlicer development and mostly work in Go instead of C++, so please bear with me through this, but I would like to help contribute it. Guidance and any advise would be much appreciated 😄
Related issues and community posts:
If there are others, feel free to include them in the comments section and I'll update this.
https://github.com/prusa3d/PrusaSlicer/issues/8283 https://forum.prusa3d.com/forum/prusaslicer/brim-painting/
TODOs for Me
- [ ] Localization of the Paint on Brim text - refer to the Localization Guide
- [ ] Finish svg designs for the "Paint on Brim" sidebar icons
brim.svg
andbrim_.svg
. Seeresources/icons/seam.svg
andresources/icons/seam_.svg
for examples. - [ ] Add
CustomBrimMarker
toimconfig.h
for ImGui. - [ ] Review
Brim.hpp
andBrim.cpp
to understand how brims work and the "islands" of polygons that define them. - [ ] Modify
PrintObject::project_and_append_custom_facets
to support brim facets. - [ ] Look at
libslic3r/GCode/SeamPlacer.cpp
which uses paint on seam facets as inspiration for aBrimPlacer
or at least modifications to the existingBrim.cpp
implementation based on the model from the brim facets. - [ ] Update
PrintApply.cpp
logic for whenmodel_custom_brim_data_changed
has changed
Cool, thank you so much! Also painting for fuzzy skin would be great :)
Also painting for fuzzy skin would be great
Tbh for me it seems like that should be a separate PR.
Yes, another PR... I wrote in future :) one by one :)
This may help you to save some time and enjoy your life, instead of coding for something that has been possible for several years. It's not paint on but you might agree, this makes paint on a moot point. however your efforts were note worthy.
I mean, who knew?
https://www.youtube.com/watch?v=dhsbMmosbLU&t=4s
This may help some of you. I'll post it around.