Commit Graph

98 Commits

Author SHA1 Message Date
Arthur 82c72b19bd FIX: enable circle fitting of tree support with larger threshold
jira: STUDIO-8588
Change-Id: Ia566fa14f7f786ff905fc3484885634811a6d686
2024-11-12 15:35:32 +08:00
Arthur 7697eb3dc8 ENH: improve tree supports
1. speedup organic tree support by using parallel for intersection of bed area
jira: STUDIO-8451
2. add extra wall for hybrid tree support's tall branches
3. disable circle fitting for tree support. This feature produces inconsistent
   circles for tree supports.
4. expose the option tree_support_branch_diameter_angle. Tree supports'
   strength can be improved by increasing this value.

Change-Id: If3688ca895df98a77f6ca538077daf8fe94e53f1
2024-10-28 20:51:35 +08:00
Arthur 20784d845f ENH: speedup brim generation
Use support_islands for all types of suports to avoid gaps between
support regions of the first layer.

jira: STUDIO-8443
Change-Id: Ic65b47640d8352d406bb11eeff7390532631712b
2024-10-15 15:50:26 +08:00
xun.zhang 4fc54affdf FIX: fail to use tbb
1.this cause slice become very slow

jira:NONE

Signed-off-by: xun.zhang <xun.zhang@bambulab.com>
Change-Id: Ied3ffe74533c1f822780fdc3a20af4ff657c1853
2024-10-15 15:50:26 +08:00
qing.zhang f1d774f6c0 ENH: apply filament scarf seam
Jira: none

Signed-off-by: qing.zhang <qing.zhang@bambulab.com>
Change-Id: Ia565da8d280c0f7e51097f1d601240376c1e380e
2024-10-15 15:50:26 +08:00
qing.zhang 872978d61b ENH: Revert z smoothing function
Jira: none

Change-Id: I067033c3beb4b29b8da11ff0c9f12b126bcf61dc
2024-10-15 15:50:26 +08:00
qing.zhang f82b599bd4 FIX: z speed smoothing crash while by object print
Jira: none

and add protect for calculating loop connection

Signed-off-by: qing.zhang <qing.zhang@bambulab.com>
Change-Id: Ie74280403d8afc55e699a30f3d1e69afdc41a86d
2024-10-15 15:50:26 +08:00
qing.zhang b52a9de509 ENH: smooth z dir speed and layer time
Jira: none

generate continuitious outer wall speed in z dir
generate continuitious layer time in z dir

Signed-off-by: qing.zhang <qing.zhang@bambulab.com>
Change-Id: I0ade543d2f9ee40f5cd65c533eb261d85e5eaa34
2024-10-15 15:50:26 +08:00
Arthur 68625a6e60 ENH: add vertical support enforcer
Previously painting support enforces on vertical faces doesn't work, as projecting the facets downwards will give empty polygons.
Now we use a different mechanism to enable vertical paint-on enforces, by directly adding contact nodes.
Note: this feature only works with tree support as only tree support has contact nodes.

jira: none
Change-Id: Id171b1665566d142a6427285baccb40c0aa00949
(cherry picked from commit 9c882f61eb37350a4486df58de48f0ae489f2d15)
2024-10-15 15:50:26 +08:00
Arthur f2fc996652 ENH: improve hybrid tree support
1. do not add interface for small overhangs so supports are easier to
   remove
2. calculate avoidance more accurately using real layer height
  jira: STUDIO-6285
3. hybrid nodes won't collide with lower layers
4. calculate max move more accurately
5. do not increase radius if next layer has collision
  jira: STUDIO-2296, STUDIO-7883
6. rewrite plan_layer_heights to prevent support layers overlap.
  Now the tree support layers are completely independent to object layers.
6. increase collision areas for interface. The top layers may be too
close to interface with adaptive layer heights and very small overhang angle

Change-Id: I052c3f66e68afb7663e2d70c846dd09ed7086071
(cherry picked from commit aca511caebfdeec270d4fc0ec6bbbadde77cddc9)
2024-10-15 15:50:26 +08:00
qing.zhang 04beaae9e3 ENH: imprve scarf seam
Jira: none

fix missing wipe while avoid acrossing wall on

set wipe speeed base on previou path
first implement by orca

add slope gap params

Signed-off-by: qing.zhang <qing.zhang@bambulab.com>
Change-Id: I45655f087f5a165b52b1007ef5afe0b20d0b13a4
2024-10-15 15:50:26 +08:00
xun.zhang 791abec8e1 FIX: wrong bridge area
1.Caused by removing the hole stored in polygon

jira:NEW

Signed-off-by: xun.zhang <xun.zhang@bambulab.com>
Change-Id: I36c776dd6466b09ae8627eea59a93656f14d297d
2024-10-15 15:50:26 +08:00
Arthur 65a87ed03b FIX: bottom surface type was incorrect with soluable support
jira: STUDIO-6200
github: #3507
Change-Id: Ia5aee1a0a9e54674588b949428e993d1c0c5efac
2024-10-15 15:50:26 +08:00
qing.zhang 0efa2db823 ENH: imprve overhang quality
Jira: none

add speed transition between discontinuity speed
detect bridge-wall and only use bride speed on bridge wall
fix the bug that not use overhang speed while support z
distance is 0 on arachne mode

Signed-off-by: qing.zhang <qing.zhang@bambulab.com>
Change-Id: I72a1504544fe1ed7bd184ca073bd1b52cd2dcd75
2024-08-26 17:23:33 +08:00
Arthur 4bebe9eb6a ENH: remove tree_support_brim_width
This option is duplicated with raft_first_layer_expansion. Now we
use raft_first_layer_expansion for all support types. Note: the name starts with raft, but it actually controls first layer expansion of both raft and support.

jira: none
Change-Id: I3d2bfc86d36c87d75f0bc1d077c6855f668b19b6
(cherry picked from commit 241a77bd6371330aff58b92b63d066054d4920ce)
2024-08-26 17:23:33 +08:00
zhimin.zeng bce7bc9a97 FIX: modify top_shell_layer should reslice
jira: none
Change-Id: Ied85b87ea4e036a60024977c50ac926c7293a5e1
2024-06-11 18:17:08 +08:00
zhimin.zeng 96365a517b FIX: the height range is not valid in assemble object
github: 3876
Change-Id: Id38672bbf0c01bc9b9f0a3e2bf1052d945b45131
2024-05-13 09:20:46 +08:00
xun.zhang dab3f24553 FIX: surfaces wrong detection
1. Top surfaces are detected as internal bridge. Can be seen in FDMTest
2. Fix bridge line overlap wall line

jira:NEW

Signed-off-by: xun.zhang <xun.zhang@bambulab.com>
Change-Id: I73c47e8b3aba862f46c8438fc69e3fcc382d16cc
2024-05-13 09:20:46 +08:00
jianjia.ma 6540855ff7 ENH: Improve CrossHatch transation layers
jira: 6701

Change name from Flippingline to CrossHatch.

Reduce noise, improve speed by 6.5%. Improve transation layers by
gradually increasing rotation angle and overshoot the transation
layer while direction changed.

Change-Id: I17fcc45b409074d121bf5bb5702e15553d925b51
2024-04-23 20:07:49 +08:00
xun.zhang 95106f3523 FIX: wrong chain sequence caused by narrow bridge
1.Add filtration for bridge area

github:#3873

Signed-off-by: xun.zhang <xun.zhang@bambulab.com>
Change-Id: I03f7c1ef5bfb86aafdc15065008f0eedfb1a0036
2024-04-23 20:07:49 +08:00
jianjia.ma 427deda14e FIX: Top surface bridging fail on 3DHC & FL infill
Add 45 degree angle offset when processing the bridge.
Need to raise infill_direction to invalidate posPrepareInfill

jira: 6774
Change-Id: I5e6bef3aa814b01c5f30398ac745937a67e3ef4c
(cherry picked from commit 7b12cab10b88f432a11414f8caa1c6427777a1ba)
2024-04-23 20:07:49 +08:00
xun.zhang 0e1eafecbe FIX: redo prepare_infill when change infill dir
As title

jira:NEW

Signed-off-by: xun.zhang <xun.zhang@bambulab.com>
Change-Id: I1f59ea5ab44835ea14e690d836e76b5c1ef7340e
2024-04-23 20:07:49 +08:00
xun.zhang 385e7ffe3e FIX: crash when change infill pattern
1. Fix crash when change infill pattern. Now change infill pattern will
influence prepare infill
2. Remove with loop param, no longer use now

jira:NEW

Signed-off-by: xun.zhang <xun.zhang@bambulab.com>
Change-Id: Ibee8808e462bd418d83b7e5781dd2bc5cc772eb1
2024-04-08 19:50:03 +08:00
xun.zhang 609a133336 ENH: disable internal_bridge_support_thickness
1.In the new algorithm,we no longer use this param

jira:NEW

Signed-off-by: xun.zhang <xun.zhang@bambulab.com>
Change-Id: Ie7660c0f9744cb1f33bce4fa1ccbfef06b3df712
2024-04-08 19:50:03 +08:00
xun.zhang 081ac40f38 ENH: readd ensure vertical thickness option
1.The new algorithm still generate unnessary infill some time.
So we readd the option

jira:NEW

Signed-off-by: xun.zhang <xun.zhang@bambulab.com>
Change-Id: I65fdd58e19db85582d89facb5038adf8e87f299a
2024-04-08 19:50:03 +08:00
xun.zhang 3d75210ad1 ENH: port of new infill algorithm from prusa
1. initial port of new ensure vertical thickness algorithm from prusa
2. initial port of new internal bridge algorithm from prusa
3. readd interface shell

Based on prusa commit 11c0e567a68979e96085b3763a76464cb793ea12
and commit f8e7d1b01c114b4d45f9e221c6b5bb935065d650
Thanks prusa.

original author:
PavelMikus <pavel.mikus.mail@seznam.cz>
Vojtech Bubnik <bubnikv@gmail.com>

jira:NEW

Signed-off-by: xun.zhang <xun.zhang@bambulab.com>
Change-Id: I0d36be065a29cf87315918d720f726975a43ef9f
2024-04-08 19:50:03 +08:00
Noisyfox ad89f63fce ENH: Merge Scarf seam method from orca
Jira:none

BBL:Merged scarf seam and
add imorovemnt to improve seam on defalue setting
--as default setting wipe before rectract get good seam on end
--clip slope at start and end
--clip more on inner wall slope start than outer wall
--slowdown slope speed to get better sea
--todo-slope path had error double dE
  reduce it could improve seam,but slope could not stick well.
--check slope path overhang and avoid it while on conditional scarf mode

Co-authored-by: qing.zhang <qing.zhang@BambuLab.com>

Change-Id: I583a1c25e534b2aa5c9d710dcf207aefbea64347
2024-03-25 15:29:19 +08:00
XunZhangBambu c96d472af5 ENH: recover the origin order of prepare infill
1.Change small sparse infill to solid infill after doing expand
introduces too much solid infill.

jira:NEW

Signed-off-by: XunZhangBambu <xun.zhang@bambulab.com>
Change-Id: If8ac07356185729c192d42bae8d9325ebe5fee87
2024-03-25 15:29:19 +08:00
Arthur 29da3bc441 NEW: add support_object_first_layer_gap option
jira: STUDIO-6202
github: #3521

Change-Id: I6f1ce9f5312e9482c0f5bf6ac3215861c501106c
(cherry picked from commit 83027d923a6e67fa0013e5d9f627283c68e996de)
2024-03-25 15:29:19 +08:00
XunZhangBambu 117a2aa2d9 ENH: do not split top/bottom when shell param is 0
1. When detect surface type,do not detect top/bottom
surface if top/bottom shell layers is zero

jira:STUDIO-5843

Signed-off-by: XunZhangBambu <xun.zhang@bambulab.com>
Change-Id: I844b24d061f3fc9aef56dab941140c567340eeae
2024-03-25 15:29:19 +08:00
lane.wei 07f965313a FIX: seq_print: fix an invalid warning caused by sinking
github: https://github.com/bambulab/BambuStudio/issues/3007
Change-Id: I1111910f2c625d5a871ea01b37dbfa7b04a849ee
(cherry picked from commit a3db95bb0940d5afe07ef0bb07113cc2acd7cd0a)
2024-03-25 15:29:19 +08:00
Arthur fa61ee6abd FIX: Checking support necessity not working
Only early stop detect_overhangs if support is disabled AND not checking support necessity.

jira: STUDIO-6158
Change-Id: I2d9662231d941827d6392d57344f7d911f641e09
(cherry picked from commit b811a6031d1afe0e7b1cb73050fe6391a65411ef)
2024-03-25 15:29:19 +08:00
Bastien Nocera 4c836314a6 libslic3r: Fix Slic3r::format declaration 2024-01-02 17:42:37 +08:00
SoftFever bdaba79455 ENH: add small perimeter speed and threshold
The original param is added by Prusa. Thanks orca for adding threshold.

1. Re add small perimeter speed and threhold.

github: #2221

Change-Id: I35b269b26f085d80f0edca28650bb21fc04898d7
2023-11-22 08:23:38 +08:00
Arthur a006286465 FIX: organic support doesn't work with raft
Fix organic support issues by syncing with Prusa's changes. Thanks to Prusa.

Jira: none

Change-Id: I96fa1a939767bb0b0d2e8a5fd72966bb10a2042e
(cherry picked from commit 89607dc73313e1b5d389674ed2d8f4f358bcb8b9)
2023-11-09 10:09:10 +08:00
xun.zhang 9719fa81ef ENH:support interface filament not for body option
1. Add a option to prevent support interface filament being used in
support body

jira:STUDIO-4847

Change-Id: Ic6e9f663b71a7e4d9cd1bca399c0da2ce22bb5b5
Signed-off-by: xun.zhang <xun.zhang@bambulab.com>
2023-11-09 10:09:10 +08:00
salt.wei 560c33c452 ENH: save overhang polygons in cache data
JIRA: none

Signed-off-by: salt.wei <salt.wei@bambulab.com>
Change-Id: I6887774f986843b094c05da48de3e2d6234a2c9e
2023-11-01 09:33:21 +08:00
Arthur ad9fa81b01 ENH: add a new support style "Tree Organic"
Add a new suport style "Tree Organic" from Prusa, as organic support is
faster and seems more strong in some cases. Thanks to Prusa.

Feature detection including sharp tail, small overhang, long cantilever,
are still kept.

Known issue: first layer support path may go outside build plate.

Jira: STUDIO-2358
Github: #2420

Change-Id: I4cec149bf4fa9eb733ae720ac1a7f65098e3b951
(cherry picked from commit d977bc5d3b4609f4fec0aa68152a33cacf184c4a)
2023-11-01 09:33:21 +08:00
lane.wei 80e1b74703 ENH: Support: set the float air warning also to non-critical
JIRA: STUDIO-4217
Change-Id: Ic587acde0a566e4ea5217a5dc4f1ab8b6b155f5c
2023-11-01 09:33:21 +08:00
Lukáš Hejl 11b55ccd73 ENH: Added option for enabling interlocking between segmented regions
by the multimaterial painting.
This commit is cherry pick from Prusa, the commit number is
9bce0fcf9bb479c289c396e7e23ce95841a61628
Thanks to Prusa.
Jira: XXXX

Change-Id: I29ad1fa9ab3ccc393a1e2affde1ae869d0a33afa
2023-11-01 09:33:21 +08:00
lane.wei 60333adc96 ENH: CLI: optimize the logic for message
1. treat the critical slicing warnings as error
2. save more information into result
including the triangle counts and the non-critical warnings

JIRA: STUDIO-4217

Change-Id: I25b746d06c9a1ef2d642c67852577982a2986322
2023-11-01 09:11:19 +08:00
qing.zhang 7a7a9f4296 ENH: add top_area_threshold param
Jira: 4136

Signed-off-by: qing.zhang <qing.zhang@bambulab.com>
Change-Id: Ic8a3d05cea769ae92dd5f2f2fcd685d660075c95
2023-11-01 09:11:19 +08:00
qing.zhang 0d837e2587 ENH: top one wall for arachne
split to 3 mode
not apply
all top surface
topmost surface

Signed-off-by: qing.zhang <qing.zhang@bambulab.com>
Change-Id: Id9bb1a6ded7414b2f093ac01e4ecb4b93057d022
2023-11-01 09:11:19 +08:00
salt.wei bc0273d734 ENH: should apply instance shift in is_through_overhang
Signed-off-by: salt.wei <salt.wei@bambulab.com>
Change-Id: I07ca04d459c3e98650c8e5a33f56dac20f99b9a2
2023-07-07 17:52:43 +08:00
qing.zhang 546322d1cc ENH: add solid infill pattern
Signed-off-by: qing.zhang <qing.zhang@bambulab.com>
Change-Id: I8878c8d5f0024c9cbde6040f317d0783dfc5eccd
2023-07-07 17:29:08 +08:00
qing.zhang 739d8c9b28 ENH: filter small gap
thanks SoftFever

Signed-off-by: qing.zhang <qing.zhang@bambulab.com>
Change-Id: I9bffe629419455b2a7b4494aa595b711619939da
2023-07-07 17:29:08 +08:00
qing.zhang 4f4516357f ENH: add seam parameters and increase wall loops
Signed-off-by: qing.zhang <qing.zhang@bambulab.com>
Change-Id: Id5c6cd6e97493f8912ce1857aed56eecace66cee
2023-07-07 17:29:08 +08:00
Arthur 0ce835dcd4 ENH: add option "remove_small_overhang"
Let the user choose remove or not.

Github issue: #1810
Jira: STUDIO-2992

Change-Id: I9c5e087d171d16d8d7318b36efe825a6cbc29c33
2023-07-07 17:29:08 +08:00
salt.wei 3a1e112d49 ENH: separate the simplifying of infill and wall
This can avoid to simplify wall twice when
the only invalid step is infill.

Signed-off-by: salt.wei <salt.wei@bambulab.com>
Change-Id: Ie5a9ccc10d5331c29c716aece08cdb195352cfe3
2023-07-07 17:25:51 +08:00
salt.wei 3ea602091e ENH: add back infill anchor for special case
These two settings is necessary for some
specific user case.

Signed-off-by: salt.wei <salt.wei@bambulab.com>
Change-Id: I9d70679932ac90c34296393d0e8bb8aebd8ebe48
2023-07-07 17:25:51 +08:00