because [0,0] will cause the wipetower to disappear in low-layer-height models with enable smooth timelapse type.
jira: none
Change-Id: I6fe3d4128e9b284ae7660f7e0f9f8b62f74cf427
1. when some area is need_extra_wall, the whole layer has double walls.
2. set circles above soluble interface with double walls
jira: STUDIO-10505
Change-Id: I5846c712a36e2e5bfc5018013b44e2712229b6ad
(cherry picked from commit 5675d9c14e57c4615249ec665603dd662a9a7ee3)
1.Also add a new field to mark whether enable high low temp mix
jira: NONE
Signed-off-by: xun.zhang <xun.zhang@bambulab.com>
Change-Id: I208e0e7a4ce75feccc8659ecf940447e591d9505
1. keep growing when collison do not contain the circle of the node.
2. when contact_node is nullptr, cannot assign it a type.
jira: none
Change-Id: I6168a3a19ceec087e93c919625c0c3b654fc7d7e
when encountering overhang paths and the current fan speed is low, the fan is set to start 2 seconds earlier by default. This prevents cooling issues caused by delays in fan acceleration.
Change-Id: I9e9267b77f1e4d9a2b81bda16c1441703a7b28e7
still need to check if layers' bottom_z is under initial_layer_height since z_heights[0] is fixed to it.
jira: STUDIO-10282
Change-Id: Ia2d0565039389c8eb7edbb6b5403996b5ee412c2
Rectilinear Interlaced interface pattern not working for normal support.
jira: STUDIO-8847
github: #5307
Change-Id: Ia17c9a0f8f20e3ac7a98ce13b1ea5065c200ac3a
1. Wrong generation of cluster when there are multiple overlapping areas in one layer.
2. set interface_bottom_spacing = interface(_top)_spacing.
jira: STUDIO-10241, STUDIO-10506, STUDIO-10507
Change-Id: Ic7a0d61e43c5cd8d8094cb75ac257f83bc2952b6
Jira: none
Two intersection points have the same pos, which causes the sort function to fail. Each intersection pair type should be LOW and HIGH, sort fail causes the HIGH point to be put first, so the check step will report fail.
make sort function works on that situation
Signed-off-by: qing.zhang <qing.zhang@bambulab.com>
Change-Id: I407146e55265c5b55f4e44ac174ce82b2cb0af05
1. also add a new type: head wrap detect
jira: NONE
Signed-off-by: xun.zhang <xun.zhang@bambulab.com>
Change-Id: I8d3056676958245d44171870b6d21ec0ea8bdfe0
and fix conflict checking when the wipe tower's brim fully encloses the model
jira: STUDIO-10237, STUDIO-10296
Change-Id: I6e2a6640c06ddb6b3af700c9048fa26434411631
1.Support auto flush when change printer and nozzle volume type
jira:NONE
Signed-off-by: xun.zhang <xun.zhang@bambulab.com>
Change-Id: I9dfc2fff095bbf1901afe99556d1e57aa225f482
and fix the nozzlechange's error cleanbox.
and fix some error in interface's nozzlechangle and toolchange.
jira: none
Change-Id: I2fd5c68d90506fcb8f01f09a8246dfb5838baef4
when switch printer, we found some filament preset not visible
and we need to allow it to be selected
jira: STUDIO-9979
Change-Id: I9613747a755f449c2f48563082b6893e426f37ea
1. Try to merge filaments before grouping
2. Set max match num for machine filamnet in match mode
jira:STUDIO-10392
Signed-off-by: xun.zhang <xun.zhang@bambulab.com>
Change-Id: I2451d838e07ee02f493fda4dc702f3d13b2ad37b
and set the contact surfaces of different material types as solid,
and reduce the nozzlechange speed if it occurs at the contact surface,
and recuce the toolchange speed if it occurs at the contact surface.
jira: none
Change-Id: I884d60f4114544dfa959bd654ecc985f5fb9aac4
Use clipper2 and remove colinear points.
Later on we can try to set lightning infill as the default infill pattern of tree support.
jira: none
Change-Id: Id545b15d778071cec6e56d212ab68db1ab90ad2a
Thanks to Prusa!
jira: none
original commit message:
ceb13b1faa33ac096fe7ffd89aa222abca119e02
SPE-2405: Add Zig Zag infill that is rectilinear infill but with a consistent pattern between layers.
This Zig Zag infill is inspired by the Zig Zag infill in Cura.
Change-Id: I798affa99f4b5c3bd67f47643e67530fb7c3e0cb
(cherry picked from commit 2808d04d5deef6f99f9618648e46f11de03efc98)
In the original logic, the gcodeEditor did not parse gcode lines with
leading spaces. In recent changes, all leading spaces in gcode lines
were removed, causing all gcode to be parsed. However, some certain cmd
perform additional actions, leading to incorrect state recording. As a
result, based on the erroneous state, some gcode lines that should not
be deleted are being removed.
This logic needs to be optimized in the future.
jira:10357,10367
Signed-off-by: xun.zhang <xun.zhang@bambulab.com>
Change-Id: If34b9c3b2913768b824030685e0a36708ca3a5ca
1. fill bed crash (jira: STUDIO-10350)
2. reset arranging settings gives wrong sequential printing order (jira: STUDIO-10346)
3. do not show "arranging done" message when there is no model
Change-Id: Ic1c7eac75e3917b9f1d87ab6acc403f78e0c9f7c
1. the nozzle change gcode use double perimeter width
2. fix the error layer height for adaptive layer height
3. limit the nozzle change speed to 50 when a bridge is detected
4. fix the error extrusion flow for filament change gcode when a bridge is detected
jira: STUDIO-10269
Change-Id: I580c618555fe19d000a56e2510a42004722c1b8b
1. Add filament_is_support field. Format the filament type
2. Optimize machine filament info logic
jira:STUDIO-10326
Signed-off-by: xun.zhang <xun.zhang@bambulab.com>
Change-Id: Ia8bfc37095339e73c98209b4e3f1e0804e511e88
1. change type of transition layers below interface to erSupportTransition,
2. fix the number of transition layer above tree branches,
3. change the default setting of support_interface_pattern to smipRectilinearInterlaced,
4. change the default support_style to HybridTree when interface is soluble
5. FIX: conflict between xy_expansion && split_hole
jira: STUDIO-10239, STUDIO-10314, STUDIO-10319
Change-Id: I3eb392ccd005acedb001aa862d5bf3eb104c5293
Clipper2 has added a lot of features in the past 2 years, including "offset to polytree" which is very useful for expolygons.
jira: none
Change-Id: I6f51e243656312d8c7693e1c9f5c52cf2f0034d1
1. The line id in filament block and exturder block
is assigned during first gcode process. So we should
add offset caused by gcode processor to line id
jira:NONE
Signed-off-by: xun.zhang <xun.zhang@bambulab.com>
Change-Id: I6a24b052fdf0daa3506c5f0982b521e85107f193
and fix wipe error when enable timelapse and in single color
and set rib wall as default
jira: none
Change-Id: Ic365bb7ee0ee6715c9d4f4f00b4bca9fd472c61a
1. Filter small sparse infil after doing vertical shell detect.To make
sure the params always work, the logic should also be added after doing
internal bridge detect
jira:STUDIO-9872
Signed-off-by: xun.zhang <xun.zhang@bambulab.com>
Change-Id: I9d48303e156125dfab17ef95b73294013ab9fabd
2. use most used extruder for timelapse without wipe tower
3. apply retract_when_changing_layer for multi_extruder
jira: none
Change-Id: I4ff00573fd8a6ee9fa42877e3e7056d547e4d864
1. some testing code results the strange behavior,
just remove them
jira:NONE
Signed-off-by: xun.zhang <xun.zhang@bambulab.com>
Change-Id: I8339473f7f3796d81fe6f1aebcfcff98b3b9f5d8
for X and P machine
2. remove lift and retract in filament_change_gcode and layer_change_gcode
jira: none
Change-Id: I3da2d3ac7f0100d1963dcbb1228323666a060534
1. Rotation operation should always work on rotation matrix. Euler angles are not reliable.
2. Remove the ambiguous set_rotation on single euler angle.
3. Fix the bug that the rotation of the mirrored object is not correct.
jira: STUDIO-8752
Change-Id: I25d661b732a872b8378af87c0ba52d75afd75c1f
1. support traditional timelapse for H2D when printing by object
2. insert timelapse gcode when close wipe tower
3. remove hard gcode before filament gcode
jira: none
Change-Id: Ib56c21b1f07832f2cbc8ba5ab7f2e8653b3105bf
(cherry picked from commit 7613474cefd210685d16a5585608c0c7cb7efa95)
1.Immediate do lift in eager_lift function
jira:NONE
Signed-off-by: xun.zhang <xun.zhang@bambulab.com>
Change-Id: I931d22e901e2123bb886c31d8d1a5788fddeed42
1. only expand 2mm for BigFlat/ThinPlate overhangs, unnecessary for tree node overhangs without big areas.
2. avoid the situation that some overhangs are extended to fall on models when smoothing.
jira: STUDIO-10177
Change-Id: Icec0bb59627bb85332ad1435cbe29a07f57f922e
only rotate the object if its long axis is significanly larger than its short axis (more than 10%)
jira: none
Change-Id: I63fede8a55f8dc82f4388e630d58b2e62f7922b2
1.Add a Trietree to match command instead of the switch sentence.
2.Support VM104 and VM109
jira:NONE
Signed-off-by: xun.zhang <xun.zhang@bambulab.com>
Change-Id: I5f6b3d1bf87baebc0a20c2589a5138538469dfec
Only update the last group id if there really has filaments
jira:STUDIO-10108
Signed-off-by: xun.zhang <xun.zhang@bambulab.com>
Change-Id: I646f54c0bc4817f0b64364edc52b7263d2833c3c
1.Add automatic calculation of the wipe_tower's brim width by height;
2.modify the min_depth_per_height and the default ridwidth
jira: none
Change-Id: Idd96bc90e8e631aa8481b559e1e9fec24c6b822f