Commit Graph

66 Commits

Author SHA1 Message Date
Arthur 7596b3fed9 ENH: improve auto arranging and by-object printing
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)
2022-12-26 05:31:54 -05:00
miaoxin 9857f7384b ENH: auto-arrange uses inner NFP to simplify fixed_overfit
1. Add inner nfp algo.The final nfp result is inner nfp subtract outer nfp.
2. Leave 5(scaled) room in inflation to allow numeric float eps.

Change-Id: I6be0b205c9811af24a238352b256bf1399ee3716
(cherry picked from commit dbab96efc7bfa16afd9db9607b862886606b0aa0)
2022-12-15 04:38:15 -05:00
miaoxin ad22dec6d9 ENH: large object with size close to bed could arrange into bed
Change large object's inflation to (bedsize-objectsize)/2 when it could actually be placed into bed but couldn't with default inflation.
JIRA: STUDIO-1536

Change-Id: Ibf8ed066ee20a9a7b1c604371a9e030c94711080
(cherry picked from commit 093bad1a1765f05d909984d24a113e125870d55b)
2022-12-15 04:38:15 -05:00
Arthur 4eba8a2a2d FIX: auto-arrange may crash due to clipper
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)
2022-12-15 04:38:15 -05:00
Arthur f6fed97b9d FIX: auto-arrange unable to arrage a large number of small items
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)
2022-12-15 04:38:15 -05:00
wintergua 6dfd598b7f FIX: Auto brim will not be considered during model arrange
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)
2022-12-15 04:38:15 -05:00
Arthur 869b93e270 ENH: improve auto-arrange compactness around wipe tower
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)
2022-12-15 04:38:15 -05:00
Arthur 9f96c8adec FIX: auto-arrange ignores wipe tower due to supports
Wipe tower is needed if support base and interface use different materials.
Jira: STUDIO-1336

Change-Id: I006ece952aac1a0f0a57721c2cd1b52b2ceee28a
(cherry picked from commit 1a387e4b1607dee36f5abe499892f027e244fbeb)
2022-12-15 04:38:15 -05:00
Arthur 5fa771c6cb ENH: improve auto-arrange in several ways
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)
2022-12-15 04:33:48 -05:00
Arthur 8dd401d35f FIX: auto-arrange reads wrongs first_bed_temp
Also change words for extruder clearance parameters.

Change-Id: I736fd9049d184c140b33078d78f764b4fe172765
(cherry picked from commit e70c0c0ea133cffa5788efbfc9633332b196e8df)
2022-11-01 20:52:23 +08:00
Arthur Tang 5544e9602c FIX: rewrite per-object printing order logic
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
2022-11-01 20:52:23 +08:00
Arthur 74a76e026a ENH: improve extrusion calibration region in auto-arrange
1. do not consider extrusion calibration region if no micro lidar on the
   printer
2. do not inflate extrusion calibration region by brim width, just let
   them overlap

Change-Id: I62228d85e8a55d40e22a6ae7f5f065f281936429
(cherry picked from commit 4c456e1f3e675a2ea1358d2983f85a95e58eb49c)
2022-10-20 19:34:37 +08:00
lane.wei 516a960f71 refine the plate's sliced_result logic
1. when the plate is locked, the sliced result is kept after auto-arrange;
2. when only arrange a plate, other plates' results are not affected

Change-Id: I7566e11e9eec0c2b196a2e78d9dc306ea325e9ff
2022-09-29 11:16:43 +08:00
Arthur 07ae246e5f ENH: disable arranging selected items
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)
2022-08-05 16:11:42 +08:00
Arthur ace3c2a231 FIX: auto arranging has stauts report
Jira: STUDIO-305

Change-Id: Ib13ccf4037cd1144177935c1184eaf203aa0eb7f
2022-07-25 22:43:21 +08:00
lane.wei 1555904bef Add the full source of BambuStudio
using version 1.0.10
2022-07-15 23:42:08 +08:00