1. Detect unprintable area for extruder when slicing
2. Always do filament map again if object pos changed
jira:STUDIO-9473
Signed-off-by: xun.zhang <xun.zhang@bambulab.com>
Change-Id: Ic01b8be8e3b08ba6b34efb2d3c451c9e985a03e8
1. Add protection for building machine filaments.Sometimes we don't
know the info about maahcine filament
jira:NONE
Signed-off-by: xun.zhang <xun.zhang@bambulab.com>
Change-Id: I3198d3a1a8825aa50aa49734f60a32620fc4f890
1.fix crash when deleting filaments after sync ams or inital start up
jira:NONE
Signed-off-by: xun.zhang <xun.zhang@bambulab.com>
Change-Id: I00c96fcebf7e0fbc127414eae44f184e3caf4dd9
(cherry picked from commit 6fb0ef6e68ed673d04c1c2311835e9988b1c70d3)
1.When there are identical materials, try to make the quantity of
materials for each nozzle as similar as possible after grouping.
2.Fix an encoding error
jira:NONE
Signed-off-by: xun.zhang <xun.zhang@bambulab.com>
Change-Id: Iad77d7a995b9c25d004026f409c7e2ecbb8269db
(cherry picked from commit 13d7cd06252678b6b084d17438e99ff808a4191d)
1.Should use idx in used filaments in filament group algorithm
jira:NONE
Signed-off-by: xun.zhang <xun.zhang@bambulab.com>
Change-Id: I5acc849827d84db090e61a45e80a3df2866b2724
(cherry picked from commit 84c55c10edfda91df16843f317ebc7912205b202)
1.Caused by process_arachne.When generating walls in the Arachne mode,
first generate 1 wall, then generate n-1 walls. It is different from
directly generating n walls
jira:NONE
Signed-off-by: xun.zhang <xun.zhang@bambulab.com>
Change-Id: Ifda35a5073531b3a273b9ad416417ca96325ca14
1.Compare stats of AutoForFlush with other filament map modes
2.Refine the function signature of filament group
jira:NONE
Signed-off-by: xun.zhang <xun.zhang@bambulab.com>
Change-Id: Iec2aff069d8c44343df8b82f045c61354c7d1c2a
1. Add filament group pop up when slice
2. Add more filament modes in filament dialog
3. Add capsule button
jira:NONE
Signed-off-by: xun.zhang <xun.zhang@bambulab.com>
Change-Id: I8bc3a2e08696e406b89e550a0335a1a36728ee65
1.Add more filament map modes
2.Filament map and mode are set as project config
3.Plate filament map is only valid when plate filament mode is
manual
jira:NONE
Signed-off-by: xun.zhang <xun.zhang@bambulab.com>
Change-Id: I33b2f853e0b77b9d605be1f2f1172b44df43da15
1.Should get value by filament id instead of extruder id
2.Fix many other issues caused by incorrect usage
jira:NONE
Signed-off-by: xun.zhang <xun.zhang@bambulab.com>
Change-Id: I3278d7de0f8976a97c9e5ccef80bba4a58553f5a
(cherry picked from commit 30c51dd1171fc16ba778308745fab2eb246aedd0)
Jira: none
get z direction continuous info
smoothing speed based on the max speed of the loop
rewite the pipeline
set perset param to enable z smoothing function
Signed-off-by: qing.zhang <qing.zhang@bambulab.com>
Change-Id: Ib0e6a6a353c92a441a0c99a8d3d7902f7aeae6df
Unnecessary warning messages are called when slicing reliefs, because some small overhangs with only one gap layer are set as SHARPTAIL.
jira: none
Change-Id: I9abcebbcfa41d75e32f86efa64ac3bb8848247d7
jira: STUDIO-9131
reason: sometimes the popup window causes Print::Apply using invalid configs
Change-Id: I1764050f7177a65625f4668b2e1f86c80a4d4e5a
(cherry picked from commit 5a32ce3599883b9976e32ef2c864967efd52fbc2)
1.Always set filament retract params to filament_num size.In
gcode export module, we can always use filament idx to get
retract params
2. add logic in update_filament_maps_to_config to update the
retraction related params which can be overiden by filament
jira:NONE
Signed-off-by: xun.zhang <xun.zhang@bambulab.com>
Change-Id: Ia45dd1401aa3565d062d5da1c9f4a2ba8966f693
1. Set shared retract length size to 2. Filaments in one extruder
shares the param
2. Move toolchange function before unretract function in append_tcr
to get the correct logic
jira:NONE
Signed-off-by: xun.zhang <xun.zhang@bambulab.com>
Change-Id: I215a542ce36107071fad39f1f9e30234fb19a3a0
Jira: none
while there is no non support filament
set first print filament to initial_no_support_extruder
Signed-off-by: qing.zhang <qing.zhang@bambulab.com>
Change-Id: If2fee560772c9a7cfa1855efc85116fb7df04760
1.Rely on nozzle change tag instead of T command to detect
extruder free range
2.Support enhance cooling for TPU filaments
3.Fix a negative temperature issue
4.M104 commands add params to specify that command is generated
by slicer
jira: NONE
Signed-off-by: xun.zhang <xun.zhang@bambulab.com>
Change-Id: I2d157e5a84da75e656d3281cf38eea8697bd897a
The length of default value for extruder printable height
should be same with extruder printable area
jira:NONE
Signed-off-by: xun.zhang <xun.zhang@bambulab.com>
Change-Id: I01bf5e2a9ddb2faadbbe0a01f4ff2c5582b8ac45
1.Only do reorder if requseted.In by object mode,we only need
to collect the filaments in the object for filament grouping
jira:NONE
Signed-off-by: xun.zhang <xun.zhang@bambulab.com>
Change-Id: Id88f2449c6d3c5d45b9ff87513308d997fa72da1
1.Always do filament group to get correct filament map
jira:NONE
Signed-off-by: xun.zhang <xun.zhang@bambulab.com>
Change-Id: Ie4e61c310f6c0cfeacb2a49c4f065f9674b6a35f
1. generate filament_self_index for old files in cli
2. set filament_self_index to default for old files using single extruder
jira: no-jira
Change-Id: I6e3f520723ee7f3a75634121604023ba319ff97a
1. modify the start position of wall
2. modify the overlap of wall and infill
3. print wall first
jira:none
Change-Id: I1b3f4a8cb198f84b81aba638cc722dedf84a164c
1. Pre cooling extruder after the extruder used
2. Pre heating before the extruder used
3. Refine the structure of finalize function
jira: NONE
Signed-off-by: xun.zhang <xun.zhang@bambulab.com>
Change-Id: I98c92763c006fc9564db45a4a5d542b891ea1aa2
1. add slicing errors for gcode in unprintable area, also for filament mapping
2. use common area for auto arrange
3. support filament_map/filament_map_mode related params
4. add logic to check the filament maps before slicing
5. uptodate support multi-extruder
6. switch new machine/filament support multi-extruder
7. process config params support transfer between mult-extruder and
single-extruder
8. improve machine-limit logic support multi-extruder
9. flush-volume support multi-extruder
10. add default params to support auto mapping slicing
jira: no-jira
Change-Id: Ice39a365841322ddb586d39c56ff923626822528
* Init port of Cura's MM interlocking
* Refactor a bit
* Fix crash when bottom surface is multi-color
* Fix crash when boundary avoidance is 0
* Add config
---------
Co-authored-by: zhimin.zeng <zhimin.zeng@bambulab.com>
jira: none
Change-Id: I81cacddf46ad5921a7a2a23fff07cc17addceb6f
1. Do not consider empty filament when selecting group for ams
2. Function "collect_filaments_in_groups" is frequently called,
optimize memory allocation to speed up.
jira: NONE
Signed-off-by: xun.zhang <xun.zhang@bambulab.com>
Change-Id: Iad8c9a257bc2dd832c77e650f8c052fb9d8379a0
1. Machine with multi extruder should set length of extruder offset
to extruder num
2. Register retract_restart_extra
jira:NONE
Signed-off-by: xun.zhang <xun.zhang@bambulab.com>
Change-Id: Ic3eb324cb91dc70b091c8922936d2709c361cc38
1.Caused by uninitialized filament map in mapping for AMS
jira:NONE
Signed-off-by: xun.zhang <xun.zhang@bambulab.com>
Change-Id: I71ce6001fc6f2e72eb9303fcaba0bac16ad70dc9
1.Only consider groups with a distance within the threshold
jira:NONE
Signed-off-by: xun.zhang <xun.zhang@bambulab.com>
Change-Id: I91526a796a0f7f1ed3e77c41076c1f85620dd944
1.Use max flow network to handle limit
2.Support setting master extruder id
3.Fix the issue in the KMedoids algorithm where data is overwritten
after each retry.
jira:NONE
Signed-off-by: xun.zhang <xun.zhang@bambulab.com>
Change-Id: Idd2bedf39f61e7a65eb4199852f60b8fbebe0a7d
1.Set the default size of ams filament to 2
jira:NONE
Signed-off-by: xun.zhang <xun.zhang@bambulab.com>
Change-Id: Ie985ecfa44cb9fcaf21406303e32bb56e731f351
1.If the group result differs little in flush,we will choose the one
that best fits the ams filaments
jira:NONE
Signed-off-by: xun.zhang <xun.zhang@bambulab.com>
Change-Id: Icd147b406e3494c841ef13564ad1b1231ad798fd
1. Caused by setting the current filament to filaments used
in machine start gcode
jira:NONE
Signed-off-by: xun.zhang <xun.zhang@bambulab.com>
Change-Id: If6789b1e02aadc6d03610b7b7cc4c829ae767a7d
1.Use float to store the weight copmputed in the procedure.Avoid the
issue where filament weight remains at 0 after changing filaments
jira:NONE
Signed-off-by: xun.zhang <xun.zhang@bambulab.com>
Change-Id: Iff0cfc6e22f34affbc232dbfe196f27ee06d2d9e
Jira: none
if the fist print filement as same as the filament be set on start gcode
not insert filment change
Signed-off-by: qing.zhang <qing.zhang@bambulab.com>
Change-Id: I0114f287fff9be276a90772537d1910df18dec61
1. Nozzle Volume and Nozzle Type support multi extruder now
jira:NONE
Signed-off-by: xun.zhang <xun.zhang@bambulab.com>
Change-Id: Ie171b5105bd3830db3a992cadd365b785008c47a
Should use filament id instead of extruder id
jira:NONE
Signed-off-by: xun.zhang <xun.zhang@bambulab.com>
Change-Id: I669092da6902158ad5f89d4814c78eabdfb2e7c7
1. auto mode dragdrop is not allowed
2. not display filament_map when there is no result in auto mode
jira:none
Change-Id: I0800e0d832e27fe459a17bb1aa829b5e72d0ee8f
1.Use min cost max flow to solve the tool order
jira:NEW
Signed-off-by: xun.zhang <xun.zhang@bambulab.com>
Change-Id: I909845039b67c7fe3ddd42580ad3f1d71d52262d
1. also remove original nozzle_volume_type from printer
and move into project config
2. support save nozzle_volume_type into appconfig
and load from it at beginning or printer switch
jira: no-jira
Change-Id: I01fc82d142fc633fc59a238796a71b9f8d180efb
1.Save multi extruder state in gcode processor
2.Add machine exturder change time
3.Fix some naming issues
jira:NONE
Signed-off-by: xun.zhang <xun.zhang@bambulab.com>
Change-Id: I9785331290515eeb908ff0ff01aad5aac44212d9
1.In auto mode,display the statistics of auto mode and single
extruder
2.In manual mode,display the statistics of manual mode and auto mode
3.Support by object mode
jira:NONE
Signed-off-by: xun.zhang <xun.zhang@bambulab.com>
Change-Id: If54c4db79f33d5278c0f18d01ab0518e8660f9c7
1.Should calculate cost if filament used in that layer is 1,because
we should consider the last filament used in previous layer
jira:NONE
Signed-off-by: xun.zhang <xun.zhang@bambulab.com>
Change-Id: I5838af77f1d73bfa07c65bd6ee12ae352dc3b571
1.Use forcast when filament num in current layer and next layer both
smaller than limit number
jira:NEW
Signed-off-by: xun.zhang <xun.zhang@bambulab.com>
Change-Id: Ia21bb22ce353f0c74eeaf748c6d9f9c4b315ec18
1.Add filament flush,filament change count reduced by multi
extruder
NTOE: cases when printing by object haven't been handled
jira:NONE
Signed-off-by: xun.zhang <xun.zhang@bambulab.com>
Change-Id: Iaaea5f8ffae2345df5a6f1dc605342d835974d48
1.When n becomes large,the original algorithm to get best filament
sequence will cost too much time and memory.Use a greedy algorithm
instead.Always select the next filament with fewest flush
jira:NONE
Signed-off-by: xun.zhang <xun.zhang@bambulab.com>
Change-Id: Iabc924e1bdb0a07af0a6ef0bbdd62e54ce54f052
1. always resize filament count when not matched in full_fff_print
2. remove no-use codes in Preset::normalize
jira: no-jira
Change-Id: Ie15a5977d28f28e0f63ba84f27f98f77d16665c0
1.During the filament change, the extruder will extrude an extra length
of grap_length for the corresponding detection, so the purge volume can
reduce this length.
jira:NEW
Signed-off-by: xun.zhang <xun.zhang@bambulab.com>
Change-Id: I14f55a3200c1dd48b1603e50280d0c29e1319ebe
1.When filament <10, do the reorder with next layer.This can reduce
10% flush in some cases
2.Support custom filament seq
3.Use caches to speed the algorithm
jira:NEW
Signed-off-by: xun.zhang <xun.zhang@bambulab.com>
Change-Id: Ie1af9841f7165802d350eae962efe8febafbb357
1.When capacity is greater than the num of filaments, always choose the
map result that can be accommodated
2.In BestFit strategy,always try to fill up the existing capacity
3.In BestCost strategy, just try the group with fewest flush
jira:NEW
Signed-off-by: xun.zhang <xun.zhang@bambulab.com>
Change-Id: Ifd6d64b77774039e57ffff26cf2243a4d3f89054
and fix bug when switching printer preset between single-nozzle and double-nozzle, prompt the modification of extruder_count
jira:none
Change-Id: I1d5f0b2f002493378d2f482d08cfd5a72b35b99f
1.When n<10, calc all case cost
2.When n>10, first k-medoids algorithm first
3.Enable setting group size
jira:NEW
Signed-off-by: xun.zhang <xun.zhang@bambulab.com>
Change-Id: I625f47e0235c70e440c6d489b052a156fbffca3f
1. backend support multi_extrude data structure
2. Compatible with third-party calibration
3. fix bug when get extruder in gocde export process
Change-Id: I5dac9abdd9907a521a1ba9b480f9e05640591bc1
1. support recommended filament map when print by object
2. placeholder_parser support function filament_change
3. extruder_id of filament_map is start from 1
Change-Id: Ide8019cd4a165a25972f22706ff685c3005aa031
jira:none
code is from OrcaSlicer, thanks for OrcaSlicer and Noisyfox
commit bf4d59a6764ddadd23ae566bf178f98e06bc3b5c
Author: Noisyfox <timemanager.rick@gmail.com>
Date: Tue Feb 27 21:57:31 2024 +0800
QoL: 3D navigator (#4181)
Change-Id: I19f83d6dd7244c4daaa9c9993378cbd90333c3b9
(cherry picked from commit 74903968fdc8bd25ab48a722f893c38c801417d3)
In file included from /run/build/BambuStudio/src/slic3r/GUI/Gizmos/GLGizmoMeshBoolean.cpp:5:
/run/build/BambuStudio/src/libslic3r/CSGMesh/PerformCSGMeshBooleans.hpp: In lambda function:
/run/build/BambuStudio/src/libslic3r/CSGMesh/PerformCSGMeshBooleans.hpp:281:35: error: ‘info’ was not declared in this scope; did you mean ‘tbb::v1::info’?
281 | BOOST_LOG_TRIVIAL(info) << "check_csgmesh_booleans fails! mesh " << i << "/" << csgrange.size() << " is empty, cannot do boolean!";
| ^~~~
| tbb::v1::info
/run/build/BambuStudio/src/libslic3r/CSGMesh/PerformCSGMeshBooleans.hpp:295:35: error: ‘info’ was not declared in this scope; did you mean ‘tbb::v1::info’?
295 | BOOST_LOG_TRIVIAL(info) << "check_csgmesh_booleans fails! mesh " << i << "/" << csgrange.size() << " does_self_intersect is true, cannot do boolean!";
| ^~~~
| tbb::v1::info
Check if boolean operation is possible first, just like in context menu.
jira: STUDIO-6471
Change-Id: I9c201010dad90bbfa615178aa835c7e371755cd2
(cherry picked from commit db8a02e8328b5529123fb83c0373eb01cb925f0a)
1.The stored layer height differs too much from the generated layer
height.Use a more direct way to locate the layer
github:5253,5275
Signed-off-by: xun.zhang <xun.zhang@bambulab.com>
Change-Id: Ie2428e700c72386349a4f2d64076c940ac4eea71
Jira: STUDIO-8627
On scarf seam mode or spiral vase mode
if the last layer is empty,layer height would be wrong
need to move extra data, and update layer range
Signed-off-by: qing.zhang <qing.zhang@bambulab.com>
Change-Id: I802ec266f4cebc8079fac2444061f362fd620381
(cherry picked from commit 7311dda480cb0deb1feba8ed2b29c36113a93a16)
A simple way to avoid collision of seq printing by object of A1 series
printers, at the cost of reduced area of sequential printing.
Add new option extruder_clearance_dist_to_rod.
jira: STUDIO-8137
Change-Id: I033220e090b071c76f5c5be0d0b471e428d807ec
Jira: none
BBS: get scarf seam angle detection from OrcaSlicer, thanks SoftFever
original msg:
Scarf joint seam enhancement: conditional scarf joint and slowdown for
scarf joint only
allow apply scarf joint seams to perimeters without sharp corners only
Signed-off-by: qing.zhang <qing.zhang@bambulab.com>
Change-Id: I07f8083ad07b5eb55901ab76824b12549dbac2ee
(cherry picked from commit 3a032d9aefb936ba757105c4183cd2f8aeaeadd6)
1. fix the issue that setting top z distance=0 not working
2. remove too small extrusions of tree support
jira: STUDIO-8578
Change-Id: I8c3face9d6a756698a6fab876fdb1acc0686647c
/run/build/BambuStudio/src/libslic3r/Support/SupportParameters.hpp: In constructor ‘Slic3r::SupportParameters::SupportParameters(const Slic3r::PrintObject&)’:
/run/build/BambuStudio/src/libslic3r/Support/SupportParameters.hpp:172:39: error: ‘warning’ was not declared in this scope
172 | BOOST_LOG_TRIVIAL(warning) << "tree support default to organic support";
| ^~~~~~~
/run/build/BambuStudio/src/libslic3r/Support/SupportParameters.hpp:172:21: error: ‘BOOST_LOG_TRIVIAL’ was not declared in this scope
172 | BOOST_LOG_TRIVIAL(warning) << "tree support default to organic support";
| ^~~~~~~~~~~~~~~~~
/run/build/BambuStudio/src/libslic3r/Support/SupportParameters.hpp:175:39: error: ‘warning’ was not declared in this scope
175 | BOOST_LOG_TRIVIAL(warning) << "tree support default to hybrid tree due to adaptive layer height";
| ^~~~~~~
/run/build/BambuStudio/src/libslic3r/Support/SupportParameters.hpp:175:21: error: ‘BOOST_LOG_TRIVIAL’ was not declared in this scope
175 | BOOST_LOG_TRIVIAL(warning) << "tree support default to hybrid tree due to adaptive layer height";
| ^~~~~~~~~~~~~~~~~
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
Due to accuracy issues, some points are not within the boundingbox.
github: 4615 associated with 3749
Change-Id: Ic2fb359d9779191c8c98660e13275147b0cc09cd
src/libslic3r/Support/TreeSupport.cpp:3204:41: error: ‘format’ was not declared in this scope; did you mean ‘boost::format’?
3204 | BOOST_LOG_TRIVIAL(trace) << format("plan_layer_heights0 (%.2f,%.2f)->(%.2f,%.2f): ", z1, h1, z2, h2);
| ^~~~~~
| boost::format
In file included from src/libslic3r/FlushVolPredictor.cpp:1:
src/libslic3r/FlushVolPredictor.hpp:44:34: error: ‘string’ in namespace ‘std’ does not name a type
44 | FlushVolPredictor(const std::string& data_file);
| ^~~~~~
src/libslic3r/FlushVolPredictor.hpp:49:5: error: ‘uint64_t’ does not name a type
49 | uint64_t generate_hash_key(const RGB& from, const RGB& to);
| ^~~~~~~~
In file included from src/libslic3r/FlushVolPredictor.cpp:1:
src/libslic3r/FlushVolPredictor.hpp:44:34: error: ‘string’ in namespace ‘std’ does not name a type
44 | FlushVolPredictor(const std::string& data_file);
| ^~~~~~
src/libslic3r/Brim.cpp: In function ‘Slic3r::ExPolygons Slic3r::outer_inner_brim_area(const Print&, float, std::map<ObjectID, std::vector<ExPolygon> >&, std::map<ObjectID, std::vector<ExPolygon> >&, std::vector<std::pair<ObjectID, unsigned int> >&, std::vector<unsigned int>&)’:
src/libslic3r/Brim.cpp:1084:18: error: ‘spin_mutex’ is not a member of ‘tbb’
1084 | tbb::spin_mutex brimMutex;
| ^~~~~~~~~~
1) exploys in brimMap are not modified
2) the overlap judgment is processed in paralleling
jira: STUDIO-8443
Change-Id: I8638071cfc06776975034f39aa994fc4dc7ae1be
Use support_islands for all types of suports to avoid gaps between
support regions of the first layer.
jira: STUDIO-8443
Change-Id: Ic65b47640d8352d406bb11eeff7390532631712b
1.[STUDIO-8385] Fix switch to split tool crash;
2.[STUDIO-8406]brim ears only works in manual mode;
2.[STUDIO-8410] Disable brim width modification when brim type is manual;
3.[STUDIO-8382] Warning message not cleared;
4.[STUDIO-8239] Translation issues;
5.[STUDIO-8380]Disable brim ears for non-part models
6.[STUDIO-8285]Clicking the delete brim button did not recalculate;
jira: details
Change-Id: Id333179236d6b6f23de5081bd9b8d94b08c7dd62
jira:none
code is from PrusaSlicer,thanks for PrusaSlicer and YuSanka
Author: YuSanka <yusanka@gmail.com>
Date: Tue Mar 5 15:13:31 2024 +0100
Fix for #12206 - Dowel connector hole often disappears after one of the resultant objects is cut with a dovetail cut
Change-Id: Ib21be385f6df3b4ed41c2eb91dc33dd43132f276
1. Use cie de2000 as color distance
2.Consider colors with de < 5 as the same color when calculating
flush
jira:NONE
Signed-off-by: xun.zhang <xun.zhang@bambulab.com>
Change-Id: I4b451910a21c9db3471c63c270f1f120e3c5d160
1.Put commctrl.h into pch precompilation(OCCT conflicts)
2.Replace input wxWidgets to support loss focus verification(STUDIO-8101)
3.Optimize slider interaction and trigger mesh when push up slider(STUDIO-8099)
4.Optimize step loading method, separate import of step and mesh
5.Fix dialog cancel button logic;
6.mesh tasks into sub-threads to prevent blocking the UI;
JIRA: STUDIO-8101 STUDIO-8099
Change-Id: I50bbb43953a5128f358c6880032d20693531333b
During the printer connection cycle, each Filament and slot is only judged once
When deleting custom filaments or modifying the temperature of custom filaments, re evaluate
Jira: XXXX
Change-Id: If495a343efdb1be6f46d11dd20f6ec7934266e87
1. fix hybrid tree support may go outside plate
github: #4769
2. fix false alarm of empty layer warning
jira: STUDIO-8178
Change-Id: I7bcc3959b06184901cbec946e8840c7a94bc1cab
Change the behavior of "tree support wall count" option, let it control precisely.
0 means auto.
jira: STUDIO-8068
github: 4780
Change-Id: I6d1a64cff9b121f5c0a3e910c5ddbfe6db198687
1.The default diameter setting is 16 times the init layer line width
2.Fixed the slice button was not reset after data changed
3.Fixed normal is initialized to the wrong value
4.Fixed delete button crash
jira: nojira
Change-Id: I3b331d81e762aa02f92edf0fd5067b97857f2f8e
1. keep all polygon nodes in drop_nodes
2. prevent generating too small polygon nodes
jira: STUDIO-8107
Change-Id: I1311158ab15097eb10727a8d6884b0bcd8136ef1
jira:STUDIO-7406
most of code is from PrusaSlicer and OrcaSlicer,thanks for Filip Sykala - NTB T15p(PrusaSlicer) and Noisyfox(OrcaSlicer)
Port Emboss & SVG gizmo from PrusaSlicer (#2819)
* Rework UI jobs to make them more understandable and flexible.
Change-Id: I765c7658b0881869754bdb161d720e4cbb180c92
(cherry picked from commit 3cef4611793899fa0ac39cb4d3a3abed7270a8e9)
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
this function crashes if there are empty elements in entities.
jira: STUDIO-7975
Change-Id: I0dbeb6b1151dd089be7617ebc3271691f64ac61e
(cherry picked from commit df30728617a89891c68e36cce771fb6380355b82)