1. async fetch user presets from server (in thread)
2. always load default user presets
3. load user presets from cache immediately
4. not remove user presets cache
5. hide some loading ui
Change-Id: I1d29ed18e09606d0b2f69a69eea2eb5042c26223
Previously we used layer_nr-1 as the next support layer below layer_nr,
which was not right when we used independent support layer heights.
And this would make it difficult for the tree branche to avoid the object.
Change-Id: Ic705fbd093e4bd555470646044380703ca259904
(cherry picked from commit 245e1cf4fd071b1f1fea4c5d616ff87432a76911)
When fuzzy skin is used, it's unmeaning to calculate
the overhang degree of extrusion line, because there
are a lot of random fuzzy point which change the line.
Disable in this case. This can also speed slicing up
when fuzzy skin is used.
Signed-off-by: salt.wei <salt.wei@bambulab.com>
Change-Id: Ia65e20e24fd7a5cd224635fd69a272387135ba12
Brim will be croped to ensure it does not exceed the bed area. However,
plate offsets are not considered and thus the croping does not work in
multi-plate cases. This can be fixed by this patch.
Change-Id: Iffcce6cba23a82de1fdd9fffe8c48c4e303e9e15
(cherry picked from commit 9c53fb12153cc8a31448ae4a670171c495243dae)
This is fix for z hop issue that z hop of
layer change is always spiral list even when set
to normal lift
Signed-off-by: salt.wei <salt.wei@bambulab.com>
Change-Id: I7b235a640b0538bedfe4cef61ca24108c1ba7246
If a travel path goes through an overhang expolygons, and their distance
is shorter than threshold, lift type will be set to SpiralLift.
Signed-off-by: yifan.wu <yifan.wu@bambulab.com>
Change-Id: I345788711755dd8611ecf385818e6052cd8abe9e
allow generate wipe tower when print ByObject if there is only one object
Change-Id: I199e9cab7bd7c963edf58e829c663bb91c12f4f8
(cherry picked from commit 7153c30800022f3afb9811c67f88ba28c9b25d20)
even though there is only one color, the wipe tower is still exist
Change-Id: I5c68a4ca7239cfc74aba452a6588d74f6d622f47
(cherry picked from commit 032c2e6718c65aa4c5b18eecd0ccce27f3f489bb)
1. When sharp tail region suddenly grows a lot, it means it connects to
a well supported region and is no longer a sharp tail.
Jira: STUDIO-1862
2. First layer of sharp tail can not be reducible (must have extrusion,
i.e. won't disappear after slicing), otherwise thin spikes at the
top of the object are also treated as sharp tails.
Model: knight_seadra
3. Increase sharp_tail_max_support_height to 16mm
Model: Crane_reversed
Jira: STUDIO-1859 (for this issue I don't what is the exact cause,
but adding these three improvements solves the problem)
Change-Id: I3cd57b184d78dba8862ab3c214057ae78fe49d1f
(cherry picked from commit 9242c6a6d1f23f11ebc43a9049ce10229a15c60e)
Detour travel is wrong in multi color printing when
current position is unclear.
Don't generate detour travel in this case to avoid
colour mixture.
Signed-off-by: salt.wei <salt.wei@bambulab.com>
Change-Id: I2d24b04d99b8a0b34a46c9f88e522e97cb0fe354
1. Previously we used integer Point type to detect corner, which was wrong.
2. Delete duplicate points more aggressively to prevent too many points
around curved overhangs.
3. Do not generate roof_1st_layers if there is no interface at all.
Change-Id: I1167ac04c533ec8f29dc9e656ba7072d1b54197f
(cherry picked from commit 1329347c4bf9c8207cf21e591a6ad113bb565673)
auto select grid infill for tree hybrid, and set default wall count to
1.
Change-Id: Icbecd540d06f353da2e63533f8f7cf7d7f20fbdb
(cherry picked from commit 246335cc195c88a4101dddd1eeda42d9ca16589f)
1. fix possible empty layers (caused by continues walls)
2. fix normal node may be absorbed in drop_nodes in "tree hybrid"
3. popup message to ask the user to select best parameters for tree strong
and tree hybrid.
4. auto select lightning infill for tree hybrid.
Change-Id: I7d172887a9b0e4f268267684e83fc02dc7ec6a0c
(cherry picked from commit bc6d130e86c252d7fc1f84c4df7da95050dd5d51)
1. change base pattern "None" to "Hollow", and add an icon image
2. fix a bug of not initializing m_highest_overhang_layer
3. fix a bug where normal(auto) with Tree* styles won't generate any
supports.
4. add popup message when selecting support material for interface.
5. draw connected loops when wall count is larger than 1
Change-Id: I7ea211d2971b25c65724bb10d0f6cf6e0b68c6a1
(cherry picked from commit 4c1ae7f937239fc3e1397ec2cb3b290d886bb0f0)
1. smooth nodes' positions
2. draw ellipse along movement direction
3. fix a bug of radius not smooth
4. fix a bug of Tree Strong having too large radius
5. fix a bug in plan_layer_heights: when wipe tower is
enabled, independent_support_layer_height is false, and all support
layers should be exactly the same as the object.
Jira: STUDIO-1785
6. move support style popup message to on_value_change, so only show the
popup when the user changes support type or style.
Change-Id: Ibced7a28f436d96000ee35a7194b68bb5a20a32d
(cherry picked from commit 0d814b07e433533c8de1b7a04bf52b577de0778d)
1. In auto arranging bed temp can be higher than vitrify temp by no more than 15 degrees.
2. In by-object printing we use max radius for clearance
3. Add P1P max radius
Change-Id: If595f3e19fd74f6f36d2f394edbb835c413cc800
(cherry picked from commit 2af42420ad3770f0728adb583082600544519a58)
1. Add a new style "Tree Slim". If enabled, tree
support branches are merged more aggressively, and the support volume
is minimized.
2. Enable support style, add back Snug for normal support.
3. Remove hybrid(auto) type and use "Tree Hybrid" style to represent it.
4. Fix a bug in plan_layer_heights that may generate empty layers when
layer height is set to 0.3mm.
5. Fix a bug where no raft is generated if there is no overhang.
6. Fix the bug where no bottom interface or bottom gap is generated when
tree slim is selected.
7. Use physical distance to calc radius
Change-Id: Iacd57018ae5496cdc9acd28551c44d1c88c53fe0
fix bug of empty layers when meeting similar large layer height of tree support
TODO: hybrid(auto) still has dangling layers at the botttom.
Github#826
Change-Id: I6d5dfa9a610403e51ea82c1d86444f8645dc3210
(cherry picked from commit ea38988f0b5ba22c5b7c3b212d510f649dd23301)
New function plan_layer_heights added for pre-planning maximum layer heights
Previous adjust_layer_heights function has been commentted out.
Change-Id: I8ec5bb7b7e700ed7655d18a17d0b15de5f026592
(cherry picked from commit 55995c138e0375b8055f31768eea1392cd64168d)
If don't do this, laoding old 3mf generated by version 1.3 or lower will
have problem, e.g. normal support will be replaced with normal(auto).
Change-Id: Iaa8e1f8badaacc74479d99a6e4153d8850945279
Add large cost when bed temp is greater than object's vitrify temp
STUDIO-1623
Change-Id: Ib73d312fce7b80999f11d1f6c172a9c1575937b4
(cherry picked from commit aed896d44776c9cd2fd55202420a3811bc117896)
[STUDIO-1717]:
1. Add area filter during finding the orientation vectors.
The vector with largest area will be selected.
2. Area_accumulation function return the accurate normals.
Change-Id: I917e29a0def4904a82d30cf0a92524bbb0da14c1
(cherry picked from commit a79cf2fa89c7247cab37ebd36974529df79f0990)
[STUDIO-1676]:Auto-orientation not OK but manually OK.
When accumulating overhang, the bottom condition should select 0.5* layer
height rather than previous 1 * layer height.
Change-Id: Ide96817b8f98827388b7cb73ca33518b3ff25235
(cherry picked from commit 9f90151236340d3a10790112be65c816dcc3ae30)
As title
Signed-off-by: salt.wei <salt.wei@bambulab.com>
Change-Id: I82a17cd8f82a87a898f933b5437836667136d834
(cherry picked from commit aedfffc4565113f186a55efa0e89366880a22fc6)
This is useful and need to be tuned
for some special 3-rd party filament.
Signed-off-by: salt.wei <salt.wei@bambulab.com>
Change-Id: I0527484d47c1bb9c89d5cc70bbaa34b5078b7e43
when loading third party 3mf, sometimes there is no object name
just named these object to 'Object_index'
Change-Id: Ie73f49ffa79e996114b7a2095de4de7d41bfec24
1. export compatible related values to 3mf
2. process compatible related values when loading
Change-Id: Ib7ed3d165cda5d62e0074652d474567494141631
(cherry picked from commit 989fe6439d573457fa78afc5376d04d3120dbbfd)
For some corner case, the bridge detect may choose the long
distance rathan than the short distance.
Calculate the percentage of archored lines and choose
the shortest length
Signed-off-by: salt.wei <salt.wei@bambulab.com>
Change-Id: Ia74842f3135681373f649a014c270a1b9d1755e7
It's necessary to edit nozzle diameter and releted
setting for 3rd printer.
For BBL printer, keep it read-only
Signed-off-by: salt.wei <salt.wei@bambulab.com>
Change-Id: I97e32967bb686b7fbb7ac306a2bb7e03b5d8c5c5
1. flush_multiplier will be apply the the flush volume during slicing
rather than only in auto-calc
2. mark too small flush volume as red instead of a warning dialog
3. do not forbidden flush volume lower than the nozzle volume
4. fix incorrect focus status of text input box in WipeTowerDialog
5. check the minimum flush volume based on flush_multiplier
6. limit the decimal digit to two places
Signed-off-by: yifan.wu <yifan.wu@bambulab.com>
Change-Id: Icdcc50c88ecd9463fb9ce73f996d57c2d9f0187f
(cherry picked from commit 60e01edc511f117b05a8a9b92aaf6fd55325e485)
1. undef SUPPORT_TREE_DEBUG_TO_SVG
2. change default tree branch angle to 45 degrees
3. encourage tree neighbors merge faster
4. draw more loops at the top of trees for stronger support
Change-Id: I2edf6a2dddb3b6165c2519ee15e9a7ffaba9de94
(cherry picked from commit 3a9723b2e88a033b3298cd68daf9400265e984a1)
1. don't sort automatically
2. enable the dragging on the object list to adjust the arrange order
3. adjust the object list order after auto-arrange
4. turn off label by default
5. add the snapshot key for label
6. check the the validation of the order
Change-Id: I91461c475cda5335b01a9a608143aa1df31741ab
Refer to prusa and enable arachne for wall.
Arachne also has corner case and cause strange
slicing result and bad quality when print, while
class engine is much better for these cases.
Provide option for user to choose.
Signed-off-by: salt.wei <salt.wei@bambulab.com>
Change-Id: Ieb3a1c6a457ca610561f8734de4a122d74165afd
Default infill pattern is lightning now, which has
a crash bug when no overhang is provided.
Change-Id: I1e70b8458d1eef670a78d698c68b21d7f48bc3eb
(cherry picked from commit 777af3aa1dbb9869209945f3a6dbcc07cba0b84a)
1. convert instance to object when loading previous 3mf
2. fix an exception issue caused by previous commit caused by nil value of import_project_action
Change-Id: Ieed853f0e8d458aab1716acf52307c5d672ebe22
1. fix the thumbnail white issue in some random case
2. fix the thumbnail not update issue under preview panel
3. fix the previous panel's toolpath not clear issue while switch panel
under preview
4. fix the toolpath not clear issue while switch from 3d to preview in
some corner case
Change-Id: I158eba35e3b5d8a1e77f19ee9f86801e6a6dbd86
For very narrow bottom bridge, it's useless and even
harmful to be printed as bridge. Eliminate it.
This is handling for github issue #298
Signed-off-by: salt.wei <salt.wei@bambulab.com>
Change-Id: I1dc614781a028716a6de59454577f0b7f3b5b1f5
1. Use nlopt and clipper offset togather seems not stable, very easy to
crash. We do the offset outside nlopt now.
2. Fix a bug with finalAlign where objects may be translated to overlap
with excluded region.
3. change the words of support_expansion
Change-Id: I22e37b20e4ae16f47bde206de90845616e4cefad
(cherry picked from commit 1c26e5d2862fd3f3292971b5c749420bfb2cdf0e)
1. add default support base pattern (lightning for tree support,
rectilinear for normal)
2. change default support interface pattern to "Default" (concentric for
absoluble material, rectilinear for others)
3. delete tree_support_with_infill, replace no-infill optio with "None" infill type
4. delete HAS_LIGHTNING_INFILL macro (lightning is impossible to be
removed now)
5. fix the issue that tree support base may grow above interface by
adding virtual nodes (distance_to_top<0).
Change-Id: I5affa44e1f72d0dc54052927f2b315de83702870
(cherry picked from commit a2b41b1dfd9227e68ac6d971312133ec3382baa7)
Should not insert new line in post process
which changes the the final line id in gcode
file
Signed-off-by: salt.wei <salt.wei@bambulab.com>
Change-Id: Ib8b837cf313a1308260db88bf5390fefe9708cc8
Open the "Support xy expansion distance" setting for users who can set
expanding and shrinking distance along xy to change normal supports' overhang area.
Jira: STUDIO-1297
Change-Id: If3a1efe99acaced12216966a6f8abd0dc3734757
(cherry picked from commit c1fd588a181b17403109b64a0019818f428252da)
When travel in x-y-z move, the acceleration should
be limited by trivector rather than one axis.
Signed-off-by: salt.wei <salt.wei@bambulab.com>
Change-Id: If8e5d394cf5d8772d324b9c851c047d9235d9b6b
Add paint-on support on vertical faces of slender rods
ENH STUDIO-970/1285
FIX STUDIO-1183
Change-Id: I36b398f9c1c1341bce080ec3d454dcc6e6f991e8
(cherry picked from commit 65ee2c8d74284b21bfd34a1059e2005998d749c5)
Always draw a wall before infill for 1st interface.
Jira: STUDIO-1402
Change-Id: I9cba46f9bcacbe6c78a82bbb7099cc1d1182cb97
(cherry picked from commit d7381adb78c99414f538db82f0ac1f2de2e968cf)
Users can set distance between support bottom contacts and object
once enable normal/tree support.
Jira: STUDIO-1383
TODO:Func seems good though, some details (e.g., bottom_interface
detection) need to be optimized furthur. Will keep follow-up.
Change-Id: I85815e7aa6cf1a5d0249633cd8ab995873461e8a
(cherry picked from commit eab39e89c94d749ebe6266ab745cbb70a068277d)
1. use face_normals as convex_hull normals instead of quantized normals.
2. The quantized normals will result in bad orientation because of accumulated error.
Change-Id: I8e554905dcec430738135cb8a9f08d8e0fdfecae
(cherry picked from commit 33c474f6f6e7469aed75e981e700e0279cb23de3)
[STUDIO-1079] Large plane not stick to bed
[STUDIO-1437] Model auto flipping bug
1. Changed the orientation threshold so that some tiny rotations wont be ignored.
2. Added flipping detection. Rotation with same unprintability will not be excuted.
3. Added the weight of first layer area to improve large planar face orientatio performance while not influence other objects with small first layer areas.
Change-Id: I1efc9252c90bc053e65cb71e7770cb8d0305cb6e
(cherry picked from commit 1eda67e4fd0cd2536af219e0c225fc08949b5023)
1. change default bed_type to "1" in app_config
2. if old app_config.bed_type is 0, change it to 1
Signed-off-by: yifan.wu <yifan.wu@bambulab.com>
Change-Id: I9923187ab480b0a4991bfbc13892bfb43b2a990b
support_critical_regions_only may generate wrong supports on sharp tails
Test case: calicat.stl
Change-Id: I73671d9bf0f9c27ef70efa5765cd291761c4d18d
(cherry picked from commit 8ff2ac7ce437dc2f9eee6068d596294c054dee1b)
1. Should start from bottom left if there is excluded regions
2. avoid exclusion regions in fixed_overfit_topright_sliding
Jira: STUDIO-1422
Change-Id: If88ecf86a0485bd478a77df8cfd4942df8ca27ac
(cherry picked from commit a8393de51bd178b731ef4c7201a5fe3247d97a1f)
Add default type to plate bed types.
Signed-off-by: yifan.wu <yifan.wu@bambulab.com>
Change-Id: I26f3a64dba4a19b0d882b828f1ee54c84df1879c
(cherry picked from commit 1ebed465d2b3bcd482dd4ba7a5930b721c79fc13)
if the brim of an object exceeds the bed area, it will be clipped before transformed to G-Codes
Change-Id: I68d700a85e1d28a5e337e53d614266f6e5e0a653
(cherry picked from commit d19ffaa7bdf4b0ab750119d9ef6252491d936f3e)
1. improve auto-arrange compactness around wipe tower
2. do not show "Avoid extrusion calibration region" for P1P
3. encourage objects with similar height to be arranged together
Jira: STUDIO-1364
Change-Id: I5efa61a676c453618cdb3915fb98928d07138deb
(cherry picked from commit 571ee0c6d91d8a5f6a60838052f09d49d85f12ed)
The tolerance of orientation filter is too large.
Jira: STUDIO-1375,1376,1382
Change-Id: I794a161e74acbcf2e13c03dcc6e5e51d6b4e1f23
(cherry picked from commit 9d8f838fb06b8c0d4efed3e50d33db410efae360)
Wipe tower is needed if support base and interface use different materials.
Jira: STUDIO-1336
Change-Id: I006ece952aac1a0f0a57721c2cd1b52b2ceee28a
(cherry picked from commit 1a387e4b1607dee36f5abe499892f027e244fbeb)
1. only show label of object in current partplate
2. disable label under gizmo
3. fix a issue of label not updated in time
4. add some logs
Change-Id: If20196a566cc45a4a0c2bcc6bbe212aaa9f74dd3
(cherry picked from commit 3e92ed61e9687d5351a9bb2bc6d25b568cd1c973)
Add loop inside sparse infill of lower layer
to provide archor for internal bridge.
This option controls how many lower layers generate
loop path.
Signed-off-by: salt.wei <salt.wei@bambulab.com>
Change-Id: Ifdb6db9090115732aa2cacf5d155b587a10e18fc
(cherry picked from commit 4fdb87ecd5c2e680f6bad2d018ba39cd05f787ce)
1. parallel load object files
2. only load object used by some plate(cli)
3. improve the loading speed when generate objects by using reference
Change-Id: I2719651e715f2e35326e760c4b7cdb3114f54992
I improve the cost function to align big item better.
JIRA: https://jira.bambooolab.com/browse/STUDIO-1221
Change-Id: Id5a16c127ec51bf7463e331058cb1a8f78b764ca
(cherry picked from commit 39773a901df82081c7d9d089807a52aa09e6a498)
if the region is top surface as well as bridge
use bridge path
Signed-off-by: qing.zhang <qing.zhang@bambulab.com>
Change-Id: Ia23910e4c49daeacf12d2f40d21a7ca319ddcfb7
1. support bed_type for each plate in CLI
2. don't render the calibration thumbnail under CLI
3. fix the plate box not generated issue
4. refine the slice_all button's status logic: from all slicable to one slicable
5. fix serveral issues in multiple plate's switch and slicing
Change-Id: I6193a799da0367068169ce315d1fcc9098357fd1
1.recalculate layout of filament page
2.add fan speed and temperature page
3.fix that value of time and percent too small to display correctly
Change-Id: I5d0cfaea03aa6e9286fe2d7243de7dd413fe7982
when support material is used in first tool change
Change-Id: If06459b8404fd599b42187859f476efded57deba
(cherry picked from commit 71f9ed69a3eff4cf3139d04a76176f798a1e1e0d)
Add (manual) to normal and tree for better understanding.
Change-Id: I6d39764a16510707912dfdeb80787d63a6e5ad96
(cherry picked from commit 46a0e9a1bb5da747f7d8c90a9235ae59ddf68bc4)
Add back even-odd mode to support slicing 3DLabPrint
airplane models
Signed-off-by: salt.wei <salt.wei@bambulab.com>
Change-Id: Id3efcfb0ecf98350add7a19885750df74d4fdedd
(cherry picked from commit 553371e61e35355b3a73694d4cf9acb179b2a427)
1. return error when there is object partly inside the plate;
2. add the status callback for progress indicating
3. add the version in help
4. fix the return state of validation from 1 to -51
Change-Id: I716057bd5b28a4beb2871614b94708a0860af1a2
Jerk handling has been changed in printer.
Changed in slicer as well.
Signed-off-by: salt.wei <salt.wei@bambulab.com>
Change-Id: Ic3aef43a534a7f0b85b734e747dc3ca883faaa46
the print object updating is behind the .normalize_fdm
which will cause some issue in corner cases
Change-Id: I57e9e7aa2acff81b89aedd95ffc7a7effb76cc6b
1. reduce expansion of exclusion regions
2. expand extrusion calib regions to let them touch bed boundary, to
greately simplify auto-arranging with avoidance option on
3. improve dist_for_BOTTOM_LEFT to allow objects be put left to
exclusion regions temporarily
4. improve on_preload for better handling objects around exclusion regions.
5. improve debug tools
6. fix a bug with wipe tower estimation (don't estimate if wipe tower is
explicitly disabled)
7. use larger y-overlap threshold to estimate rod height confliction
better in per-object print ordering (now we use half the clearance
radius)
Change-Id: Iab29d47a072d8515f28a09855432f92fcffa8c5f
(cherry picked from commit 3a4f242a3a6fd2f82dcc8306cde4d1cb107a5099)
For PA-cf material, forcing cooling for all outer
wall and using lower fan speed for infill and inner
wall can get more high strength.
Add this cooling strategy.
When set overhang fan threshold to be 0%, then bridge
and all outer wall will be force to cool with
the overhang fan speed.
Signed-off-by: salt.wei <salt.wei@bambulab.com>
Change-Id: Ideed1ac8690f1eeb68aad760678db76bb4dae8ec
See the new requirement of the latest update at
github issue #317
Signed-off-by: salt.wei <salt.wei@bambulab.com>
Change-Id: I68c9922a272b1d426126a531bfdee7a4f7e53620
This patch can make sure that the cooling fan will not
be enabled during change fimanet.
Signed-off-by: salt.wei <salt.wei@bambulab.com>
Change-Id: I9f480b99116d62fe7522233b69b5bca209663821
hrc determine which filament could be printed by the nozzle
if the filament required hrc smaller than the nozzle hrc
the fillament could be printed
either of it be zero means use other printers
or user want to print it anyway
Signed-off-by: qing.zhang <qing.zhang@bambulab.com>
Change-Id: Ic32dfaed4f9c80774a670c362de612254f3a5ed0
In some complicated cases or irregular shape, the direction
of external bridge is not good when calculated automaticlly.
So user may use modifier to change bridge direction.
This is handling for github issue #340
Signed-off-by: salt.wei <salt.wei@bambulab.com>
Change-Id: I3baf313f47925fa7e6aa087f5896b0af560f902d
When fuzzy skin is enabled, show more related settings
so that user can tune.
This is enhancement for github issue #44
Signed-off-by: salt.wei <salt.wei@bambulab.com>
Change-Id: I35e3883983b62117c4306dd894a04edd40c70f8e
We discover a good quaility interface can help remove support. When
enabling interface, directly generating circles from overhang polygons
gives fairly good quality.
Change-Id: I5d347fa7abaacea839650b6fd3a8c2c73abd5e56
(cherry picked from commit 474cbf7d59beda63e9ef1ec8b52636f2674811c7)
So we can set lower acceleration for outer wall now.
Signed-off-by: salt.wei <salt.wei@bambulab.com>
Change-Id: Ib4728bf16f6c540afca62f423c8aab4c9e0c4d02
Some sentenses are only slightly different which is
unnecessary. Making them the same can save a
translation and also keep consistency.
Change-Id: Ie59c0bf788a31ee0c6a0d792af7b3d532fe34f75
(cherry picked from commit eb69195569518e3be61e5a8887ea317fbe3e7302)
The first layer order should be outer wall first,
when the object indeed has brim.
So must regenerate wall when switch to manual brim.
Signed-off-by: salt.wei <salt.wei@bambulab.com>
Change-Id: I44fd0686b7a0e836337f5e6ff8ee311ea0c7bceb
Change-Id: I48f34039635803c3f1cee4cc2c853a0ffa5b451a
Signed-off-by: Stone Li <stone.li@bambulab.com>
(cherry picked from commit 387ba2a5aac05d3b3af0923f88415188ae8cb44e)
Signed-off-by: Stone Li <stone.li@bambulab.com>
This reverts commit ccf1746530a6f68d38a9b6714e70a0acdbec5b8c.
Reason for revert: multi color printing has problem
Change-Id: Ibc53b99a715b987ee447d7c3b03407de2790abaf
Also change words for extruder clearance parameters.
Change-Id: I736fd9049d184c140b33078d78f764b4fe172765
(cherry picked from commit e70c0c0ea133cffa5788efbfc9633332b196e8df)
1. use strict ordering to ensure the printing order is right
2. reduce height-to-lid to 100mm considering towline is lower than lid
and may collid with objects
TODO: printing brim may still collide, need to subtract inflated boundary of
others during brim generation
Change-Id: Icf0cba10c579d28fabd97764c1b3abec267ebd9b
(cherry picked from commit 46c6f5ff94488b2f4481bf1d34555f4a7c45e135)
This may cause tall objects be printed before short ones. There are two
possible solutions:
1. do strict ordering only when y-overlap is large enough (the one
chosen in this commit)
2. when considering vertical collision with rod, the actual expansion
can be much smaller (because the rod is only slightly off extruder).
But this solution requires an extra parameter. Let's hold it for a
while.
Change-Id: Icc9a4796d49dad93cbcc20d4103e641a48886e5e
(cherry picked from commit 6a958b1fa9e58e4ca3be63b4918da77bcdc53314)
(cherry picked from commit ceff67789c27ea576afd663a2e5bae9a10241728)
1. Previous logic can't guarantee left-to-right printing order, so
toolhead may crash on the right side. In the new algorithm printing
order is guaranteed.
2. Clearance radius should be the max of 3 directions (left, bottom,
up), not including right, otherwise collision may happen on bottom or
up directions.
3. Add is_extrusion_cali_object property to handle extrusion brim
overlap better.
Change-Id: I44868b9925d983f5cca0c31d35dfa28d895fadbf
The original patch can't fix empty layer issue
Revert.
This reverts commit 152a650fb80a84523e977b15f5f30d28837d80e9.
Change-Id: Ib6d47ac981fca24ca953b45068703bbcd231cf95
Copied objects share extrusion paths but they should be treated
seperately.
Signed-off-by: yifan.wu <yifan.wu@bambulab.com>
Change-Id: I891c70d261a2fa5b198ec776694d74eeb8fd987f
Revert "ENH: save uniform scale to an app_config item" Revert "ENH: do uniform scale if uniform_scale is true"
Change-Id: I069baecec143e77d796247f29cd5478b877971fb
(cherry picked from commit c7cf95cf5c365f314a53fead6612fac84a0a5f71)
This is a bug when printing multi filament
When the filament changing is finished before printing
first layer, the temperature should be resumed to be
initial layer nozzle temperature as well.
Signed-off-by: salt.wei <salt.wei@bambulab.com>
Change-Id: I82231f8a47fac1995d8f1ba12c4f7797afce2891
Copied objects share extrusion paths but they should be treated
seperately.
Thanks hisptoot for the fix.
Signed-off-by: yifan.wu <yifan.wu@bambulab.com>
Change-Id: I24d3050df7d284e92fc50a0213023a43ee8c529c
Add paint-on support on vertical faces of slender rods
Jira: Studio/STIDIO-970
Change-Id: If280b570a8076059b5583f385ba6517bf305723b
(cherry picked from commit 6832ee98ac146421c061fa90840c2751c3b3d875)
Root cause:
support_floor_layers_above is not properly set,
so adjust_layer_height() fails to detect extremes,
and then deletes the middle layers.
Also reduce max_bridge_length to 10mm.
Jira: STUDIO-1084
Change-Id: I1e72a0600ec7e2b812705e45b47b76189152daac
1. fix the prefer_model issue
2. when a printer is visible and no filament is selected, just set its default materials to visible
3. add some log for shutdown debug
Change-Id: I599dbd9c8b180c944ff4086c7638267ff002f94a
1. create user folder if not exists
2. add a tips for binding a printer
3. fix sdcard tips
4. modify icons
5. refine layout of task options
Change-Id: Ic0529cf1e8bdde0128052bc42454f6e6aaae87ca
Signed-off-by: Stone Li <stone.li@bambulab.com>
Add bed temperature checker in gcode processer. And
save slice warning into GcodeProcessorResult.
Signed-off-by: salt.wei <salt.wei@bambulab.com>
Change-Id: Iee96e4ab165a3171a5a1e165450bfc360401647f
now we save volume's matrix seperately,
so we don't need to adjust the vertex order anymore while saving to 3mf
Change-Id: I71b865c44f0d99e2e88e34cd253fcfba583f345c
empty region after adding the modifier cube
this fix for STUDIO-1025
Signed-off-by: salt.wei <salt.wei@bambulab.com>
Change-Id: I5ed35b54f8ee9d2fdc387d1b4391021e4e82aaad
Provide related two options to avoid crossing wall
when travel.
This is handling for github issue #106
Signed-off-by: salt.wei <salt.wei@bambulab.com>
Change-Id: I127adbb70f33c3954a08f3087e64c4e75212c7f0
Lighting infill has not been enabled on this branch.
Signed-off-by: salt.wei <salt.wei@bambulab.com>
Change-Id: Ic3c8d1f57fd36e73eaec190a43bf9f5868667d9b
Add custom gcode back, which can be inserted in
gcode viewer layer slider.
Signed-off-by: salt.wei <salt.wei@bambulab.com>
Change-Id: I270cc438bedf11b30f07f8f9bad6ae5436d5a2dd
Sync some code change and fix from Prusa.
Thanks Prusa.
This also can fix github issue #317
Signed-off-by: salt.wei <salt.wei@bambulab.com>
Change-Id: If6993e0149733ccf85ed85f82553caa03df7ac60
Thanks SoftForever for your works to support
sending a gcode file to third-party printer
Change-Id: I3cba43c8bd878f1f1c2fd5fae202ed4d922e8727
Signed-off-by: Stone Li <stone.li@bambulab.com>
During filament changing, additional cooling fan may
be closed to reduce strings. Force to resume after
changing filament.
This logic is same with part cooling fan.
So no side effect.
Signed-off-by: salt.wei <salt.wei@bambulab.com>
Change-Id: I207c8692dbe5b0450ed0a3d11c4c9b70eda0e28c
Too large margin for bridge will cause overflow for
shell model. But too small margin for top/bottom will
cause infill area discontinuous.
Using different margin for top/bottom and bridge to
make a balance.
Signed-off-by: salt.wei <salt.wei@bambulab.com>
Change-Id: I9ba8388b85b978ae39caf2df04f96c704b5d2e05
As title. Make calibration to use printing acceleration,
although no-using has no influence on calibration.
Signed-off-by: salt.wei <salt.wei@bambulab.com>
Change-Id: I98cb791c1e0fba6b77360b60567c29511cff75b8
When the model has no overhang, user may disable overhang
slowing down.
In this case, it's unnecessary to calculate overhang
degree which make slicing slow when model is complex.
This is improvement for github issue #331.
Signed-off-by: salt.wei <salt.wei@bambulab.com>
Change-Id: I2eaeca3ee4068f76709fe97535bbf05c0d27c062
1. hybrid(auto) on_buildplate_only option not working correctly because
parent is not set.
2. tree(auto) on_buildplate_only not working correctly because unsupported
branch isn't deleted completely. I add child to track the dangling nodes
and then delete nodes with no child.
Change-Id: I24c69a7cf400d2961b22a720a6069cf95db6c1a5
(cherry picked from commit bce77c16128d35c668b175e7135b9fe9acd71d13)
Find some problem for the change of bridge, revert.
Signed-off-by: salt.wei <salt.wei@bambulab.com>
Change-Id: Ib195a9b4425fa54408bcd3842bbafc41a3c79409
1 move thick bridge from support to quality page
2 Fix the issue that some times the external bridge angle
is not the best, and the bridge line is not the shortest one.
Signed-off-by: salt.wei <salt.wei@bambulab.com>
Change-Id: Ie26570fb289898f6b62960f9333e79aa92c08ae4
When this option enabled, only generate supports for sharp tail, cantilever,
thin pillar (not well supported). So holes are safe from unnessary supports.
Currently only works for tree supports, will need to copied to normal
supports if it works fine.
Change-Id: I5eb86484a5b503149e3bfdee8ce73f76a0a849e4
This is fix for crash issue for some specific step
file, which generate empty mesh.
Signed-off-by: salt.wei <salt.wei@bambulab.com>
Change-Id: I910e3d2da670b623570665265a12361492bd706b
1.show flush of every filament
2.modify first-layer text display
3.show time in seconds when time cost < 1h
4.forbid add-filament when print by-object
Change-Id: Ib8a94b9f620797e367bfc9e8a33abd5d7ab648ec
Enable arachne for concentric pattern by
referring to PrusaSlicer
Also remove useless pattern we added.
Signed-off-by: salt.wei <salt.wei@bambulab.com>
Change-Id: Ie2574f7fc4751ebdf1caab4de52013f3101e104f
This is fix for github issue #216 that
sometimes the infill layer is empty.
Signed-off-by: salt.wei <salt.wei@bambulab.com>
Change-Id: Ie3be08b75506e48f5ae9dd6aae2ae729ba666e01
the max length of linux's thread name could only be 16 bytes
bambustudio_main can not be set by pthread_setname_np
Change-Id: Idab83896c81787b32f6a4dde869b101da1d69e5c
add tips when both print by object and smooth mode are selected
Change-Id: I13f4cc14f2ff7c33c23dcd1708fdb784aef5afa3
(cherry picked from commit a0bfe48df21d4eecf105d41387838f14b22fff3c)
Fix the issue that the first 2 layers of prime tower are not generated
when timelapse is set to smooth mode. This issue only happens in single
filament printing.
Signed-off-by: yifan.wu <yifan.wu@bambulab.com>
All extruder offset should be extruder_offset[0] when
it is single extruder multi material.
Add handling when load config from gcode.
This is fix for github issue #213
Signed-off-by: salt.wei <salt.wei@bambulab.com>
Change-Id: Ia881b2bfbbdffa98e3c3db7b35201dc86b520b29
keep only one repeated opt_key when old software open new 3mf file
Change-Id: I4f35d2f15e0cb9e5fa4a7523cfcba7b601afd795
(cherry picked from commit a25c42f31437b4562b8fe71a836a421c014c6cf9)
1. memory explosion when enable timelapse.
2. Models with only one color become multicolor after slicing.
Change-Id: Iab3ace70c08d03ab612158d52ff67eef8d5bc718
In current studio, a brim area will be ignored if it does not be connected to any object island.
After patching, a brim area will be ignored if it does not connected to any object island and other brim areas.
Change-Id: I1aef5cd1af12cf76746f7614807aa03956d625ad
1. unsupported sharp tails and large overhang have different messages
2. do not popup warning for total area (only warning for one single
large overhang)
Change-Id: I153e559915a92c6676468539cf619dafe915f997
(cherry picked from commit 67b593150f8de847d9b1999bf0d7a549eb1ef154)
1. fix a crash when loading a 3mf painting with color idx larger than 15
2. fix the facets not display issue if painted with color 15
Signed-off-by: yifan.wu <yifan.wu@bambulab.com>
Change-Id: Idb53b6bb2d3665412815222ab9a1d47948afed56
1. fix sequential printing tall objects. Now the print order is not determined by auto-arrange,
so wee need to add a new rule: lower objects should not exceed height_to_rod.
2. sequential printing is better centered.
Change-Id: Ic320722654f0335d2589060fa14c71a5aaa3f571
ConcentricGapFill pattern was used for internal narrow
solid infill. Use arachne engine instead to remove
gap fill inside the pattern and improve the extrusion path
Signed-off-by: salt.wei <salt.wei@bambulab.com>
Change-Id: I758d7c72eb71cc37026b7cebf746cc345014c3f5
(cherry picked from commit 0b6bacd21a091afc13d7b36a69e5b10f155bc6f8)
display hms msg in HMS tab of Monitor
Change-Id: I4df1c63b104463ba62cdf7eb079a540a4176f8c5
Signed-off-by: Stone Li <stone.li@bambulab.com>
(cherry picked from commit f4635d18f3383e70177536dfbe5edf2e1370b746)
filament_max_volumetric may be 0 which cause zero
flushing speed. Add protection for this issue.
Signed-off-by: salt.wei <salt.wei@bambulab.com>
Change-Id: I866b9d97c9c6d97122a4a2beaf508ce9c72ee3b2
Requirement from user to set filament_start_gcode
and filament_end_gcode. Set these two settings to
advanced mode
Signed-off-by: salt.wei <salt.wei@bambulab.com>
Change-Id: I0d8ddb394b37614d0ef0f10f8434553cb20e9ffd
In auto brim mode, first layer of common support may be apart from object island, which is controled by support object distance.
if support object distance is lower than "flow width + brim_object_gap", the brim will not work.
Therefore, if first layer of common support is interesected with object island, the distance will be brim_object_gap in auto brim mode.
Change-Id: Icbb98af8fd9e84e3ac1977794ca2b60629dd53dd
1) if an object has a slender footprint but its height is small, brim will not be generated;
2) two volumes are treated as intersected if their distance is larger than 0.3mm, instead of 0.8mm.
Change-Id: Iaf7ab644ba9bcc1a8d404acd455f1d8b57e1eb91
0. disable arranging selected
1. fix bug where brim is not correct.
2. fix bug where big circle objects are not arranged properly
3. disable default enable_rotation
Change-Id: Ifc69f35d900ff63ec1e9ec8bf8638afc6ea7d54b
(cherry picked from commit 2ed1b0dd8573a1e10aaf77f0d9f8896cef304427)
Disable the spacing adjustment by bounding box before
fixing, to avoid overflow in some cases.
Signed-off-by: salt.wei <salt.wei@bambulab.com>
Change-Id: I13c751c8d46040156d79c1fdfc513f22f5e40fe2
bbl cloud can not parse character '&’
use xml_escape to convert to xml format
Change-Id: I9a2c0abb3c80c26be6f3add507c133f72b2bf7d1
Signed-off-by: Stone Li <stone.li@bambulab.com>
when logout, if the preset selected is still there
we should not select it by force, which will cause the edited preset cleaned
Change-Id: I930cfcb04eae7473f6bc5f037d26b852013b6f42
Filament type of Bambu PA-CF in RFID is PA-CF.
Change it to PA-CF as well in preset to avoid
failure of AMS mapping.
Signed-off-by: salt.wei <salt.wei@bambulab.com>
Change-Id: Ic6b6269123d59863fea2b7d262a124468c95b8af
As title. User can delete the value to enable 256x256 printable
size
Signed-off-by: salt.wei <salt.wei@bambulab.com>
Change-Id: Ia10454b7a7a1b28c04d8d41df9f3251875f6e74e
1. first formal version of macos
2. add the bambu networking plugin install logic
3. auto compute the wipe volume when filament change
4. add the logic of wiping into support
5. refine the GUI layout and icons, improve the gui apperance in lots of
small places
6. serveral improve to support
7. support AMS auto-mapping
8. disable lots of unstable features: such as params table, media file download, HMS
9. fix serveral kinds of bugs
10. update the document of building
11. ...