Commit graph

1427 commits

Author SHA1 Message Date
Jason M-H
7a3971eca5
Add Lift Z only Above/Below, On Surface (e.g. Only on Top) (#1562)
* Added config options for Enforce Lift Z (from SS, doesn't affect Gcode
yet)

* working, minus first layer override; also fixed m_last_extrusion_role not being set

* fixed logic to match SS

* minimize to just one config

* removed first layer override

* Cleaned up logic, working as intended

* added lift above z, lift below z; somehow broke filament overrides

* fixed overrides not working, but lift above/below and enforce don't override

* fixed filament overrides

---------

Co-authored-by: SoftFever <softfeverever@gmail.com>
2023-07-22 21:07:13 +08:00
thewildmage
777c7c68f9
Add Ellis' pattern method for pressure advance calibration (#1547)
* Add pattern method to Pressure Advance dialog

* Convert calib_pressure_advance to more unique calib_pressure_advance_line

* Share move_to function with PA lines and patterns

* Add PA pattern to calib.hpp

* Implement move_to(Vec3d). Combine with Vec2d version

* Add call to PA pattern in GCode.cpp

* Add helper functions

* Add directionality to draw_digit

* Extract shared number drawing variables

* Extract convert_number_to_string function

* Use in-class initializers for pattern variables

* Add max_numbering_height function

* Add helper functions

* Extract shared delta helper functions

* Add pattern generate_test() and associated helpers

* Clarify use of math functions

* Remove unused move_to overload, accept move_to comments

* Add get_distance() and draw_line()

* Extract set_nozzle_diameter()

* Clean up and simplify

* Rearrange and clean up

* Start work on print_pa_pattern

* Complete basic draw_box function

* Add more helper functions

* Add struct for pattern config, more helpers

* Rearrange

* Add encroachment member variable

* Add structs to manage optional arguments

* Simplify optional arguments structs

* Update opt args usage. Finish draw_box function

* Complete print_pa_pattern function

* Reuse PA Line STL

* Fix forward declaration error

* Fix invalid comparison

* Fixing complier errors

* Make DrawDigitMode options more clear

* More compilation error fixes

* Yet more compile error fixes

* Fix incorrect default step value

* Handle top-level dialog changes, consolidate params definitions

* Add layer change G-code, set more print variables

* Simplify optArgs constructors

* Fix pattern drawing, minor misc. clean up

* Make draw_box() G-code comments more helpful

* Make more of draw_line() const

* Fix sequential number draw direction

* Extract shared e_per_mm function

* Fix misplaced decimal in PA Line

* Move short constructor into .hpp

* Fix inverted Y direction in pattern digit drawing

* Use placeholder STL to create needed layers

* Rearrange and clean up

* Proof of concept: Adding custom G-Code at layer

* Use new scaling method

* Reorganize Plater::calib_pa()

* Restructure calib

* New strategy for adding custom G-code

* Remove redundant invocation

* Use cube primitive as positioning handle

* Move logic to Plater

Modifications to model in GCode cancelled _do_export from within itself

* Consolidate m_starting_point and pattern_start functions

* Replace bed_center() with m_starting_point

* Fix and consolidate number tab creation

* Fix off by one layer bug

* Use correct bounding box

* Use Vec3d instead of Vec2d for m_starting_point and m_last_pos

* Add translate_starting_point function

* Vec3d fix

* Store CalibPressureAdvancePattern with model

* Formatting adjustments

* Move pattern when handle moves

* Improve const correctness

* Improve/fix pattern writer and config

* Fix speed setting bug

* Pass model into generate_gcodes to improve consistency

* Re-generate pattern on reslice

* Make pattern actually move with handle

* Fix overzealous m_last_pos initialization

* Use clearer function names

* Use correct model

* Remove unused member variable

* Don't hard-code print config settings

* Remove unused lines, formatting clean up

* Make sure set_key_value operates on existing keys

* Remove asserts which limited life of key/value set

* Update Calibration.md

* Update licensing info

* Actually use speed in draw_line

* Don't speed_adjust twice

* doc: Make width and speed settings used more clear

* Bugfix: Shouldn't need to move handle to see pattern

* Clean up

* Move mp_gcodegen into line method alone

* Fix wrong number thickness in PA Line

* Remove unnecessary middleman PatternSettings

* Give value of config to const m_initial_config, not ref

* Fix incorrect DrawBoxOptArg default

* Use line_width_anchor() for all of initial layer

* Use clearer function name

* Replace "anchor" with "first_layer" for better consistency

* Update Calibration.md

* Update Calibration.md

* Make number tab infill explanation more clear

* (Hopefully) fix missing origin

* Add GCodeProcessor tags

* Fully refresh config

* Don't store is_bbl_printer

* Move set_starting_point to private

* Don't constantly recreate GCodeWriter

* Use different step value for pattern test

* Remove redundant processor tags

* Label glyph G-code

* Fix comparison typo

* Set number print speed

* Fix mixed up draw_number parameter

* Don't use line_width_first_layer for pattern

* (Hopefully) fix temp tower generating PA pattern

* Start with pattern centered on plate

* Add gap between pattern and handle

* Fix overly persistent pattern

* Revert "(Hopefully) fix temp tower generating PA pattern"

This reverts commit 0aa1206886.

---------

Co-authored-by: SoftFever <softfeverever@gmail.com>
2023-07-22 20:48:56 +08:00
ZdDroid
87f6c43784
Display print end time for in BL device page (#1568)
Show progress increase end time
Supplementary translation

Co-authored-by: ZdDroid <601865048@qq.com>
2023-07-22 10:40:15 +08:00
SoftFever
40a17695c5 fix vs2022 deps 2023-07-16 10:58:18 +08:00
qing.zhang
1223d6f900 FIX: pressure advance unrecogized
while the newer version of 3mf be load to older software
pressure_advance be unrecogized

Signed-off-by: qing.zhang <qing.zhang@bambulab.com>
Change-Id: Ie160759f58e573f8ad01a2941763016e9b070e9e
2023-07-13 10:35:05 +08:00
梨子
bc469bdcb6 NEW:Revert "add pause print message"
This reverts commit f24178896e2e9701165a3a5df8e711489beb34e5.

Reason for revert: pause

Change-Id: Ie55d14143a9e5ea9d593cb2ff0196688f3b0345e
2023-07-13 10:35:05 +08:00
salt.wei
989e4214c5 ENH: apply fan speed immediately after changing layer
What: As title. The original code is always apply
at the end of last object of last layer, whichi is before
layer change

Why: the fan spped will be skipped if the last object is
skipped. So we must move the layer time fan speed setting
after changing layer, where is common gcode block and does
not belong to any object.

Signed-off-by: salt.wei <salt.wei@bambulab.com>
Change-Id: I442f80e00778b524576210b451f81dd15e25e14c
2023-07-07 17:52:43 +08:00
maosheng.wei
8975562e8b FIX: [STUDIO-3529] Error prompt deduplication
Change-Id: Ic14d7938fd6f70c5280bc8c4c70360b5c82ac8af
2023-07-07 17:52:43 +08:00
zhimin.zeng
e5e66cb3dd ENH: support recover after close Studio
fix flow_ratio not change according preset

Change-Id: I048d1183ffcfc2d4470725528aa62f12b32c6216
2023-07-07 17:52:43 +08:00
zhimin.zeng
2565a66b6d FIX: set uniform_scale false modify the scale ratio
STUDIO-3364

Change-Id: Idd5f5640cb7bb6eb5b5dbb2c829f6dce2e61fe3c
2023-07-07 17:52:43 +08:00
salt.wei
6fde6747c4 ENH: fix some assert in debug mode
Signed-off-by: salt.wei <salt.wei@bambulab.com>
Change-Id: I2d5796269d512672a3c3be7d6ebdc41f6cc58da8
2023-07-07 17:52:43 +08:00
Arthur
fcda0e5f2c FIX: mesh boolean may take forever with CGAL
Only use MCut to do boolean, with a little modification to allow input
mesh to have multiple components.

Jira: STUDIO-3167

Change-Id: I4f53010f76fbcacfe966c2ef48e465f97d6516fe
(cherry picked from commit 92d0eb11744820466ee2f67c02d4764e496b7e60)
2023-07-07 17:52:43 +08:00
chunmao.guo
1c4d0e9bc1 FIX: use prefer preset after reset project presets
Change-Id: Idadee17f28f345cccccf35ec2da2b0786799840d
2023-07-07 17:52:43 +08:00
chunmao.guo
a4b3a5c000 FIX: [STUDIO-3571] not skip auxiliary for send gcode
Change-Id: I2dd1e36c571261c93ac899db5bbd3ad38fc40bc9
2023-07-07 17:52:43 +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
lane.wei
8b42a8b7e9 ENH: refine the skip_object&&cached_object logic
when the cached object is skipped
we need to reslicing it;

also do overhang detect for all objects

Change-Id: Ic842fd5a441426983a760145aeff9285e398d430
2023-07-07 17:52:43 +08:00
salt.wei
5e36c36f70 ENH: don't need to skip object in cali mode
Signed-off-by: salt.wei <salt.wei@bambulab.com>
Change-Id: I3c71f442e8d1e94786912ddf6a4367597073cbac
2023-07-07 17:52:43 +08:00
Stone Li
2368d929fe NEW: rearch calibration
Change-Id: I20ee304eba1a63e08d0a36abdf06ebe6a6e4451f
Signed-off-by: Stone Li <stone.li@bambulab.com>
2023-07-07 17:52:43 +08:00
lane.wei
ced9e43be6 FIX: fix a typo in GCodeProcessor
Change-Id: I56b9eaedc3cb062d17facf7352eb469524db5b60
(cherry picked from commit 1bb3b64cfc1aabad9ece3e5d5c0f55a9cb3367c5)
2023-07-07 17:52:43 +08:00
Arthur
04bfe7e405 ENH: ease removal of tree supports
Previously tree supports are harder to remove than normal
supports. We learn from normal supports and improve the gap between
object and supports.

Jira: STUDIO-3530

Change-Id: I229a7b869b334bdf4c5aba96c9450213b83457f2
2023-07-07 17:52:43 +08:00
salt.wei
73059c79af ENH: move filament compatibility checking to public
As title. This function need to be used in calibration
page.

Signed-off-by: salt.wei <salt.wei@bambulab.com>
Change-Id: Ia4228cbd195d87f433b59bc14129bd4acdd9df68
2023-07-07 17:52:43 +08:00
chunmao.guo
dac0a90605 FIX: xml_escape thumbnail paths
Change-Id: I781b529162b70945156c13796806db507042ad7c
2023-07-07 17:52:43 +08:00
lane.wei
c06e47069f FIX: config: fix a typo of skip_objects
Change-Id: I986da5d677820dfb73fbab5bff43ee26147e431a
2023-07-07 17:52:43 +08:00
chunmao.guo
d63316fe7e FIX: [STUDIO-3130] skip parse object in slice_info.xml
Change-Id: Iae50320f06404ba1bfddcda351f8b642bc35debb
2023-07-07 17:52:43 +08:00
salt.wei
7910e681e4 ENH: remove duplicate height pair in layer height profiles
This is fix for jira-3493

Remove duplicated height pairs when add height range

Signed-off-by: salt.wei <salt.wei@bambulab.com>
Change-Id: If74c1f8af1c911d709b9582a15ea8852630c1a67
2023-07-07 17:52:43 +08:00
lane.wei
7c76cf99b9 ENH: CLI: add option repetitions for future use
Change-Id: I97bdc04b542f9725a047348450c2c677d8807427
(cherry picked from commit d5a20f689cade6cc5b28bbec70931c6d122ef6f4)
2023-07-07 17:52:43 +08:00
Arthur
ecfffca12d FIX: raft contact distance should not trigger warning
Jira: STUDIO-3344
Change-Id: I1d0e7431cad468acaf4830caf002a47c6a33be41
(cherry picked from commit f2a926da614443fdf8631f4412f70fa741a8bf11)
2023-07-07 17:52:43 +08:00
salt.wei
145d7a4f8e ENH: add protection for filament_id in height range
See comment in code...

Signed-off-by: salt.wei <salt.wei@bambulab.com>
Change-Id: I5c68a86e1d740a54d4ca6c647fd923575600b1ca
2023-07-07 17:52:43 +08:00
lane.wei
d385384907 ENH: skip_objects: optimize the label_id logic in ModelInstance
Change-Id: Id20fe9b084426036d6cf4f54859655579bec7197
(cherry picked from commit ebb5343eef6aea9e54d11f3d6b98cf11ff941aa5)
2023-07-07 17:52:43 +08:00
zhimin.zeng
0962b23904 FIX: sync the modify from master
Change-Id: I8d1ab3803d0c0813923192569354f93e6022a1e7
2023-07-07 17:52:43 +08:00
chunmao.guo
1be8ea44e5 FIX: [STUDIO-3406] load/save thumbnail relationships
Change-Id: I515fd2339ec16ff39b8fcfbc278a0d998b8b53f4
2023-07-07 17:52:43 +08:00
salt.wei
a29507dfa3 ENH: avoid invalid gcode when id is duplicated
Signed-off-by: salt.wei <salt.wei@bambulab.com>
Change-Id: Ia710f4423d0c95ff24e4c73d4a0aee19543feed4
2023-07-07 17:52:43 +08:00
lane.wei
ef06dfc931 ENH: object_skip: use identify_id for cli when skipping object
Change-Id: Ibbe3262b4817f82b7ac824ba6d4b3efd7f0ed886
2023-07-07 17:52:43 +08:00
xun.zhang
7b0b24e64e ENH: add PLA-AERO,add default key in common json
Change-Id: Ia6551f50e0f921a196a3a94659b367ca1ec4424f
2023-07-07 17:52:43 +08:00
liz.li
257e2e0bbb ENH: calibration: filaments compatibility
Change-Id: Ibdbf25905b7f0fff2371247437624ec4645b35ee
2023-07-07 17:52:43 +08:00
Arthur
0cad88309c FIX: fitst layer bbox was wrong for multiple plates
brim bounding box is now shifted w.r.t. plate origin, need to modify the
no-brim shift the same way.

Change-Id: Iefa7287e2848aadbfc4a468bca394ecec48a1e7c
2023-07-07 17:52:43 +08:00
salt.wei
c5d70a846e ENH: add setting of extruder type
Signed-off-by: salt.wei <salt.wei@bambulab.com>
Change-Id: Ic126466f6b579dd6a55a1ba16a63c015d538c750
2023-07-07 17:52:43 +08:00
Arthur
40b8d9b87f ENH: improve mesh boolean
1. Don't use mcut on splitable volumes
2. If MCut fails, try again with CGAL.

Change-Id: I55d352b166633db9e4548b5c9e6913cf931f5f8f
(cherry picked from commit c1bde5358524d2291db6efa584ff072308ed9d20)
2023-07-07 17:52:43 +08:00
qing.zhang
1368501508 ENH: add Generic HIPS
Signed-off-by: qing.zhang <qing.zhang@bambulab.com>
Change-Id: I0fd861db6137c39f59630ae443661ddeb7a7b060
2023-07-07 17:29:08 +08:00
liz.li
9b2e13a0fa FIX: fix some issues about CalibrationWizard
1. fix STUDIO-3238、STUDIO-3233、STUDIO-3138、STUDIO-3210
Change-Id: Id7586a8a7a9e4ea04c2616099759c3527acdb1de

Change-Id: Ibb943e587edc464e2982bfee0d02a072dcf9ffd3
2023-07-07 17:29:08 +08:00
zhimin.zeng
e6a03b48ad ENH: get result for pa and flow ratio cali
Change-Id: I78c967abcdaf8c75fe6b31f1697377b72ad10e06
(cherry picked from commit fb6cd5a7c71fe6e5c4e9fed71f0c61f3a7a0c8e4)
2023-07-07 17:29:08 +08:00
chunmao.guo
03054a3b80 FIX: [STUDIO-3313] fix preset selection on load_user_presets
Change-Id: I46849869d2b84211b1b7802cf886bb0d83d10649
2023-07-07 17:29:08 +08:00
salt.wei
0d1b8b18ed FIX: should not throw in noexcept function
Signed-off-by: salt.wei <salt.wei@bambulab.com>
Change-Id: I6753615903d218698fb5cabafcba46e97b8fdf18
2023-07-07 17:29:08 +08:00
salt.wei
766abf92fa ENH: add back use_relative_e for third party printer
Useless for BambuPrinter. But used by third party printer

Signed-off-by: salt.wei <salt.wei@bambulab.com>
Change-Id: Ib6a63e78816b25696c25952508f76c3d9221e363
2023-07-07 17:29:08 +08:00
Arthur
501e73913c FIX: empty layer replacement may crash
When there are multiple empty layers needs to be replaced, error_msg is
assigned multiple times simutaneously by tbb, which causes problem.

Jira: STUDIO-3320
Change-Id: I52a48c9fe284d15aeb8e4e9e5d1db7e0c3321ad6
(cherry picked from commit fba54c063637a1bab4d835e2e5f8558b2affa4e6)
2023-07-07 17:29:08 +08:00
salt.wei
2fe7629388 ENH: normalize comment from OrcaSlicer
Mark code from OrcaSlicer with same comment tag for follow easily

Signed-off-by: salt.wei <salt.wei@bambulab.com>
Change-Id: If4db502a1b0e6d0648c73f2f383b6d1cc8e1aa01
2023-07-07 17:29:08 +08:00
salt.wei
53ea77b67b ENH: show filament vendor in develop mode
Signed-off-by: salt.wei <salt.wei@bambulab.com>
Change-Id: Ice9c3a86ce22c4c6dde784afb2e7c23e929ac7d2
2023-07-07 17:29:08 +08:00
Stone Li
14cb2449c6 FIX: fix plate name encoding issue
Change-Id: Ia89b2c5bbb4519ed938ae23ff124719cfe6203de
Signed-off-by: Stone Li <stone.li@bambulab.com>
2023-07-07 17:29:08 +08:00
liz.li
e2934516ed NEW: support restore calibration status of printer
1.store each printer's calibration status to appconfig.
2.add retraction calibration
3.add choose fine calibration directly at flowrate calibration
4.add start pages for every calibration
5.add history window for pa calibration

Change-Id: I117fd46e689e0573e70e8579f5a52ba62d99f3d6
2023-07-07 17:29:08 +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