Commit Graph

377 Commits

Author SHA1 Message Date
Alessandro Ranellucci
92b980b10e Bugfix: superfluous and harmful travel moves between objects when using sequential printing with Avoid crossing perimeters. #2691 2015-03-23 21:38:57 +01:00
Alessandro Ranellucci
13b63d06ed Use thick raft layers as we do for support material layers. #2723 2015-03-09 20:00:55 +01:00
Alessandro Ranellucci
8654537e55 Use support material layer height for raft layer instead of object layer height. #2723 2015-03-09 19:36:23 +01:00
Alessandro Ranellucci
d8ee9dd5f5 Limit first object layer height correctly when using a larger support material extruder. #2722 2015-03-09 19:27:57 +01:00
Alessandro Ranellucci
c2009af1c6 Remove ;_WIPE marks in G-code which were left between objects in sequential printing 2015-03-06 10:25:31 +01:00
Alessandro Ranellucci
722e94513c Refactoring: removed the non-idempotent init_extruders() step. Also, infill_extruder was not limited to the available number of extruders when slicing from the plater, and support material extruder was considered also when support material was disabled 2015-03-06 09:56:58 +01:00
Alessandro Ranellucci
a3b843b24e Bugfix: temperature was not set correctly when using sequential printing. Includes regression test. #2702 2015-03-02 23:56:38 +01:00
Alessandro Ranellucci
bb3feedc31 Bugfix: too many skirt layers were printed when using tall skirts and support material. #2695 2015-02-27 19:59:43 +01:00
Alessandro Ranellucci
70ace8c76f Bugfix: use proper spacing for first support layer instead of trying to align it to upper layers. #2662 2015-02-27 18:43:15 +01:00
Alessandro Ranellucci
45c91b2ae9 Don't trigger extra perimeters when less than 30% of the upper loops would benefit from it. #2664. Also fixes #2610 2015-02-24 00:34:43 +01:00
Alessandro Ranellucci
e88cf466fe A couple notes about infill_only_where_needed 2015-02-23 00:55:00 +01:00
Alessandro Ranellucci
2655f3f816 Better and more robust implementation of infill_only_where_needed 2015-02-23 00:44:51 +01:00
Chow Loong Jin
073681a50a Get first_layer_extrusion_width from PrintConfig instead of PrintObjectConfig
This fixes an issue where the support material doesn't honour a custom first
layer extrusion width.

Fixes: #2662
2015-02-17 13:59:46 +08:00
Alessandro Ranellucci
c0f453f83e Simpler and more robust implementation of extra perimeters. #2395 2015-02-15 21:58:14 +01:00
Alessandro Ranellucci
ba6ae12635 Change end_program() to postamble() 2015-02-15 17:09:17 +01:00
Alessandro Ranellucci
1180a6d83f Merge pull request #2508 from strahlex/machinekit-gcode
added support Machinekit flavour GCode
2015-02-15 17:00:08 +01:00
Alessandro Ranellucci
6eb1fa36ed Bugfix: bridge speed was still used for first object layer above raft when support_material_contact_distance == 0. Includes regression tests. #2656 2015-02-14 12:47:33 +01:00
Alexander Rössler
cc83e9f06d using end_program() function in GCode output 2015-02-07 12:37:00 +01:00
Alessandro Ranellucci
059b00a829 New --before-layer-change option and new layer_z placeholder. #2602 2015-01-30 20:08:00 +01:00
Alessandro Ranellucci
8605969dc5 Don't output slic3r:z attribute in SVG for raft layers 2015-01-30 18:45:30 +01:00
Alessandro Ranellucci
fe4f79ba90 Fixed regression causing random loss of infill because of corrupt thin polygons returned by Clipper. #2539 2015-01-30 10:12:31 +01:00
Alessandro Ranellucci
1d204af6f4 Fixed regression causing rectilinear infill to be misaligned across layers. #2566 2015-01-28 19:49:56 +01:00
Alessandro Ranellucci
229039d3b8 Fixed test and implementation of ooze prevention standby points (wrong test caused wrong implementation). #2103 2015-01-19 15:31:12 +01:00
Alessandro Ranellucci
7b980c1dc9 New option for vertical distance between object and support material, with special handling of the 0 case that disabled bridge flow/speed in order to allow for soluble material. #2491 #2272 #2069 #1942 #2435 #1703 2015-01-19 09:52:24 +01:00
Alessandro Ranellucci
ba4325411b Bugfix: the downwards move in sequential printing was performed in the wrong spot. #2524 2015-01-18 22:08:43 +01:00
Alessandro Ranellucci
9f0283f808 Minor issue when dealing with files with empty layers at bottom. #2553 2015-01-18 12:35:05 +01:00
Alessandro Ranellucci
bf02062a67 Bugfix: random but frequent crashes after recent perimeter code refactoring 2015-01-14 22:55:11 +01:00
Alessandro Ranellucci
04aa240265 Only apply perimeter/infill overlap to the endpoints of rectilinear infill (and do that in a more proper way) 2015-01-13 20:55:20 +01:00
Alessandro Ranellucci
406d045ced The inwards move after an external loop was still randomly generated outwards in some cases. Perimeters are now generated with a distinct iterator for each slice. Nested islands are also correctly supported too. Various regression tests included. #2253 2015-01-08 15:22:13 +01:00
Alessandro Ranellucci
f0de57cbe4 Minor cleanup of the init_external_mp() call 2015-01-06 15:04:09 +01:00
Alessandro Ranellucci
2562070232 Refactored the travel/retract/avoid_crossing_perimeters logic. Several edge cases are now handled correctly. #2498 2015-01-06 14:52:03 +01:00
Alessandro Ranellucci
0f7933c4f9 Bugfix: pressure regulation accumulated too much retraction and didn't discharge at the end of print. Includes regression test. #2470 2015-01-06 00:35:39 +01:00
Alessandro Ranellucci
d38503bf44 Bugfix: downwards interface detection might cause a crash 2014-12-29 14:29:21 +01:00
Alessandro Ranellucci
e8dc981774 Fixes to Ooze Prevention 2014-12-29 00:51:27 +01:00
Alessandro Ranellucci
4848cb7606 Ported PrintObject::bridge_over_infill() to XS 2014-12-24 10:20:55 +01:00
Alessandro Ranellucci
5d3cd792eb Make infill_only_where_needed idempotent. #2198 2014-12-24 01:29:36 +01:00
Alessandro Ranellucci
af446dc7d4 Apply contact distance to first support layer above object's top surfaces too. #1939 2014-12-23 22:18:43 +01:00
Alessandro Ranellucci
473802ce8c Use support material interface extruder for layers above object's top surfaces too. #1939 2014-12-23 01:04:25 +01:00
Alessandro Ranellucci
795c85d30e Apply a true double-ended nearest-neightbor search to thin fills in order to minimize travel moves between them. #2213 2014-12-20 22:40:43 +01:00
Alessandro Ranellucci
c00061678b Use perimeter extruder for brim. #618 2014-12-17 00:45:05 +01:00
Alessandro Ranellucci
e79aa2e81c New --solid-infill-extruder option. Includes a refactoring of the strategy used to order layer extrusions according to their extruder and island; toolchanges and travel moves should be more optimized now. #618 2014-12-17 00:34:00 +01:00
Alessandro Ranellucci
d9cffeca4a Bugfix: adjust skirt flow according to each layer's height. #2307 2014-12-16 18:55:16 +01:00
Alessandro Ranellucci
99deffef62 Bugfix: use the external motion planner when extruding skirt and brim. #2412 2014-12-16 18:13:38 +01:00
Alessandro Ranellucci
e9166a8fe6 Use a semaphore to synchronize threads instead of blocking with join(). Lock threads array in order to ensure all of them are signalled. #2394 2014-12-13 15:01:53 +01:00
Alessandro Ranellucci
360dee862b Keep model objects aligned to Z = 0 in plater 2014-12-12 22:43:56 +01:00
Alessandro Ranellucci
e8ab9ac13a Ported Print::bounding_box(), Print::total_bounding_box(), Print::skirt_flow(), Print:skirt_first_layer_height() to XS 2014-12-12 22:43:56 +01:00
Alessandro Ranellucci
d350241da3 Make combine_infill() completely idempotent. Includes unit testing 2014-12-08 21:23:42 +01:00
Alessandro Ranellucci
9a9ba02d85 Bugfix: infill was not correctly generated when infill_every_layers was used along with raft_layers. Includes regression test. #2396 2014-12-08 20:14:04 +01:00
Alessandro Ranellucci
eb23990d6d Ported PrintObject::total_layer_count() to XS 2014-12-01 00:00:12 +01:00
Alessandro Ranellucci
c7f5753a28 Ported PrintObject::bounding_box() to XS 2014-12-01 00:00:12 +01:00