Remco Burema
78ca8439d8
Merge remote-tracking branch 'origin/5.11'
conan-package / conan-package (push) Waiting to run
Scorecard supply-chain security / Scorecard analysis (push) Waiting to run
unit-test / Run unit tests (push) Waiting to run
conan-package-resources / conan-package (push) Has been cancelled
printer-linter-format / Printer linter auto format (push) Has been cancelled
conan-package-resources / signal-curator (push) Has been cancelled
2025-10-22 14:28:18 +02:00
Erwan MATHIEU
f9f3f92567
Fix clear command for 2nd+ mapped data
...
conan-package / conan-package (push) Has been cancelled
unit-test / Run unit tests (push) Has been cancelled
CURA-12792
2025-10-17 16:11:25 +02:00
Erwan MATHIEU
33671083cd
Make sure undo stroke properly clears all the set pixels
...
conan-package / conan-package (push) Has been cancelled
unit-test / Run unit tests (push) Has been cancelled
CURA-12752
Otherwise, when merging the polygons and undo-ing the whole stroke, there may be some remaining pixels outside the mesh triangles that would not be cleared, because the rasterizing is not 100% identical
2025-10-15 16:43:44 +02:00
Erwan MATHIEU
06a7592483
Do not update stacks at every stroke, but under the anti-bounce timer
...
CURA-12752
2025-10-15 16:01:03 +02:00
Remco Burema
f9c77f8730
For multi-material painting; stack needs to be updated.
...
conan-package / conan-package (push) Waiting to run
unit-test / Run unit tests (push) Waiting to run
... because the extruders used for the current object can change (clear all bits of extruder #2 paint on a single object, which results in the object printed with extruder #1 only, which could result in the prime-tower needing to be gone -- or the other way around).
The _previous_ way of doing that was just spamming the stack changes, but that gave other problems.
part of CURA-12752
2025-10-15 11:15:08 +02:00
Remco Burema
d5fc04684a
Apply suggestions from code review (imports).
...
done as part of CURA-12752
Co-authored-by: HellAholic <alireza.doustdar@gmail.com>
2025-10-15 08:55:10 +02:00
Erwan MATHIEU
8254c64488
Merge remote-tracking branch 'origin/5.11' into CURA-12752_multimat_paint_prime_tower
conan-package-resources / conan-package (push) Has been cancelled
conan-package / conan-package (push) Has been cancelled
printer-linter-format / Printer linter auto format (push) Has been cancelled
unit-test / Run unit tests (push) Has been cancelled
conan-package-resources / signal-curator (push) Has been cancelled
2025-10-13 14:40:33 +02:00
Erwan MATHIEU
375f030c09
Update extruders count only when inactive
...
CURA-12752
The previous method was not efficient enough in case of large models, where a single painting stroke can easily cover almost the whole texture (in bounding box). Reverted to the version where the whole texture is counted, but cached in the SliceableObjectDecorator and updated on timer so that it is not done during painting.
2025-10-13 14:22:39 +02:00
Erwan MATHIEU
0e5442d570
Fix extruders counting method
...
CURA-12752
2025-10-13 13:33:51 +02:00
HellAholic
566b58565f
Merge branch 'CURA-12763_undo-redo-clear-does-not-invalidate-result' into CURA-12750_switch-out-of-paint-when-entering-preview
conan-package / conan-package (push) Has been cancelled
unit-test / Run unit tests (push) Has been cancelled
2025-10-08 16:01:01 +02:00
HellAholic
df5c34b9e4
Merge branch '5.11' into CURA-12763_undo-redo-clear-does-not-invalidate-result
conan-package / conan-package (push) Has been cancelled
unit-test / Run unit tests (push) Has been cancelled
2025-10-08 15:55:44 +02:00
Remco Burema
c412def982
Extruder counts in image was too slow, cache and do per bounding-rect.
...
conan-package-resources / conan-package (push) Has been cancelled
conan-package / conan-package (push) Has been cancelled
printer-linter-format / Printer linter auto format (push) Has been cancelled
unit-test / Run unit tests (push) Has been cancelled
conan-package-resources / signal-curator (push) Has been cancelled
Rewrite the whole 'count pixels to get extruders for paint on materials' so that it's cached outside of the extruder manager instead, so that counting pixels in a 4096x4096 image isn't called xx of times per second.
part of CURA-12752
2025-10-08 09:58:05 +02:00
Erwan MATHIEU
b30a2407d6
Only display paint view in Prepare stage
...
conan-package / conan-package (push) Waiting to run
unit-test / Run unit tests (push) Waiting to run
CURA-12750
2025-10-07 16:40:01 +02:00
Erwan MATHIEU
1fe563d06f
Note that an ungrouped object should be selected for painting
...
CURA-12761
2025-10-07 12:30:31 +02:00
Erwan MATHIEU
c04ca0dde5
Restore initial text to avoid untranslated text
...
conan-package / conan-package (push) Waiting to run
unit-test / Run unit tests (push) Waiting to run
CURA-12761
2025-10-07 12:28:47 +02:00
Remco Burema
107c3503d7
Merge remote-tracking branch 'origin/5.11' into CURA-12752_multimat_paint_prime_tower
2025-10-07 11:34:01 +02:00
Erwan MATHIEU
cb2e1eddcc
Invalidate slice when using undo/redo/clear paint actions
...
CURA-12763
2025-10-07 09:46:50 +02:00
Erwan MATHIEU
d315e0a727
Handle group selection as multi-selection w.r.t painting
...
CURA-12761
2025-10-06 12:31:16 +02:00
Erwan MATHIEU
508886cac7
Merge remote-tracking branch 'origin/5.11' into CURA-12740_multi-material-with-ex2
2025-10-03 12:22:03 +02:00
Erwan MATHIEU
465831ce28
Remove leftover code
...
CURA-12740
2025-10-03 12:09:51 +02:00
Erwan MATHIEU
6ccd0b3b2b
Properly display model extruder when it has no paint data
...
CURA-12740
2025-10-03 12:00:54 +02:00
HellAholic
230c323709
Merge branch '5.11' into CURA-12740_multi-material-with-ex2
conan-package / conan-package (push) Waiting to run
unit-test / Run unit tests (push) Waiting to run
2025-10-02 14:01:22 +02:00
Erwan MATHIEU
02d5612b58
Merge remote-tracking branch 'origin/5.11' into CURA-12743_slow-performance-while-painting
conan-package / conan-package (push) Has been cancelled
unit-test / Run unit tests (push) Has been cancelled
2025-10-02 13:21:27 +02:00
Erwan MATHIEU
495a367539
Optimize painting operations
...
CURA-12743
2025-10-02 12:05:39 +02:00
HellAholic
a06ff9cdd7
Merge branch '5.11' into CURA-12752_multimat_paint_prime_tower
conan-package / conan-package (push) Waiting to run
unit-test / Run unit tests (push) Waiting to run
2025-10-02 10:54:13 +02:00
Remco Burema
f910983616
Spam the signals a bit less.
...
done as part of CURA-12752
2025-10-01 23:12:27 +02:00
Erwan MATHIEU
05b3aeb2bd
Pre-cache faces connectivity during prepare job
...
CURA-12743
This avoids a huge slowdown when starting to paint
2025-10-01 16:38:50 +02:00
Erwan MATHIEU
7504c8be89
Remove getting the faces under the cursor area
...
CURA-12743
2025-10-01 16:29:45 +02:00
Erwan MATHIEU
e8152bf047
Do the cursor projection using uvula
...
CURA-12743
2025-10-01 11:44:14 +02:00
HellAholic
0c0d9e591c
Merge branch '5.11' into CURA-12749_replace-the-placeholder-paint-tool-icon-with-a-brush
conan-package / conan-package (push) Has been cancelled
unit-test / Run unit tests (push) Has been cancelled
2025-10-01 10:27:21 +02:00
Saumya Jain
d86984aca7
Merge branch '5.11' into CURA-12737_model-rotation-stops-over-model-with-painting
2025-09-30 15:28:27 +02:00
Erwan MATHIEU
9bf79cf762
Set brush icon for painting feature
...
CURA-12749
2025-09-30 11:10:03 +02:00
HellAholic
635ae45b5e
Merge branch '5.11' into CURA-12732_fix_slice_paint_hover
2025-09-30 10:50:22 +02:00
Erwan MATHIEU
428faa5777
Do not block rotation while painting is active
...
CURA-12737
2025-09-30 09:52:19 +02:00
Remco Burema
6b6200fc94
Remove spurious method, handle the expected way.
...
conan-package / conan-package (push) Has been cancelled
unit-test / Run unit tests (push) Has been cancelled
This was basically already possible, no need to add an extra method.
done as part of CURA-12732
2025-09-30 09:14:02 +02:00
Erwan MATHIEU
a59481f913
Simplify objects undo stacks management
...
CURA-12740
2025-09-29 10:23:48 +02:00
Erwan MATHIEU
9fa9a7395b
Handle material painting i.r.t to affected object extruder
...
CURA-12740
2025-09-29 10:06:39 +02:00
Remco Burema
cd2d30fd82
Fix moving (paint) cursor also emitted scene-change.
...
This prevented slices from happening if the mouse-cursor came (even near) the model.
originally done as part of CURA-12634 -- attempt to cherry-pick and subsequent rework later for CURA-12732
2025-09-25 12:19:15 +02:00
Erwan MATHIEU
b5f510face
Fix painting when switching between printers with different number of extruders
...
CURA-12730
We now always allocate a data range for all possible extruders (16) instead of only the ones the actual printer can support.
2025-09-24 16:25:23 +02:00
Erwan MATHIEU
b3ea674251
Use per-object undo-redo stacks for painting
...
CURA-12731
2025-09-22 15:54:32 +02:00
Erwan MATHIEU
2eaa4fb820
Make sure paint commands only change their feature
...
conan-package-resources / conan-package (push) Waiting to run
conan-package-resources / signal-curator (push) Blocked by required conditions
conan-package / conan-package (push) Waiting to run
unit-test / Run unit tests (push) Waiting to run
CURA-12731
2025-09-22 14:34:39 +02:00
Erwan MATHIEU
a2db7b3004
Fix clear painting with optimized painting mechanisms
...
CURA-12731
2025-09-22 11:40:56 +02:00
Erwan MATHIEU
4c92ce6644
Fix crash after loading a second model for painting
...
CURA-12731
2025-09-19 16:16:47 +02:00
Erwan MATHIEU
6cf1f2df2a
Optimize painting display performance
...
CURA-12731
2025-09-19 16:01:41 +02:00
Erwan MATHIEU
8e5e655fe0
Merge remote-tracking branch 'origin/main' into CURA-12662_paint_splatter_issue
2025-09-19 13:39:15 +02:00
Erwan MATHIEU
0a133ff92c
Fix shader compatibility
...
conan-package / conan-package (push) Has been cancelled
unit-test / Run unit tests (push) Has been cancelled
CURA-12662
2025-09-19 10:28:20 +02:00
Erwan MATHIEU
9ee0169410
Merge remote-tracking branch 'origin/CURA-12662_paint_splatter_issue' into CURA-12663_paintbrush_preview
conan-package / conan-package (push) Waiting to run
unit-test / Run unit tests (push) Waiting to run
2025-09-18 15:57:57 +02:00
Erwan MATHIEU
889e65e11d
Optimize polygons projection
...
conan-package / conan-package (push) Has been cancelled
unit-test / Run unit tests (push) Has been cancelled
CURA-12662
Use a numpy-vectorized function to process the barycentric projection, this is much faster
2025-09-18 15:51:09 +02:00
Erwan MATHIEU
cf1486b880
Merge polygons rasterization to common function
...
CURA-12662
2025-09-17 13:27:27 +02:00
Erwan MATHIEU
188109c41e
Optimize painting by getting the list of painted faces
...
CURA-12662
2025-09-17 09:18:24 +02:00