Commit Graph

270 Commits

Author SHA1 Message Date
b14290b9f6 Make tests happy 2015-07-02 14:29:20 +02:00
6dc3caa8b2 Typo 2015-06-15 17:08:12 +02:00
539cde8d7a Raise the thickness threshold used for generating thin walls. TODO: don't enforce this at the segment level but consider the average thickness of an entire polyline and compare it to the total length. #2910 2015-06-15 17:00:10 +02:00
bc69d6da81 Minor adjustment of infill_overlap math 2015-06-14 11:28:33 +02:00
7c31134a66 Fixed one little regression in gap detection causing some very very narrow gaps to be skipped when external perimeter extrusion width was much smaller than perimeter extrusion width. Also, push a bit more material in gap fill. #2560 2015-05-25 00:03:38 +02:00
7cc745969c Bugfix: some gaps were filled twice. #2836 2015-05-22 11:21:49 +02:00
97211f35e7 More robust medial axis pruning. #2800 2015-05-13 20:50:30 +02:00
7a695a4a2f Change the behaviour of infill/perimeter overlap to handle some edge cases. #2632 2015-02-23 23:44:34 +01:00
5574e376d6 More aggressive gap fill #2560 2015-02-15 18:25:24 +01:00
bb3bf28e59 Ported prepare_fill_surfaces() to XS/C++ 2015-02-01 12:43:58 +01:00
07cd25d0ec New option for customization of infill/perimeters overlap. #2459 2015-02-01 12:08:25 +01:00
d4ba0f17bb Remove artifacts in original slices so that they're not amplified while generating perimeters. #2561 #2416 2015-01-30 18:32:25 +01:00
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
cf4119e169 Populate ExtrusionPath::height correctly in case of bridge 2015-01-18 01:07:22 +01:00
aa69ae11a8 Prune very short thin walls 2015-01-15 22:37:55 +01:00
24e8307e68 Faster algorithm for sorting perimeter loops 2015-01-15 17:42:39 +01:00
bf02062a67 Bugfix: random but frequent crashes after recent perimeter code refactoring 2015-01-14 22:55:11 +01:00
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
b085710a4b Further refactoring to PerimeterGenerator: remove the $traverse closure 2015-01-07 16:16:00 +01:00
82ec03fc23 Refactored perimeter generation code into a new separate class for easier unit testing 2015-01-07 16:04:53 +01:00
73d45dd851 Minor cleanup of Layer::Region::_fill_gaps() 2015-01-03 15:11:33 +01:00
d47e12f05c Bugfix: a wrong optimization caused some top-level perimeters not to be sorted using the nearest-neighbor search. #2322 2014-12-24 00:10:31 +01:00
a0dda36df0 Minor fix to BridgeDetector 2014-12-17 01:21:12 +01:00
9264db7ecd Removed useless thing added in e79aa2e81c 2014-12-17 00:52:01 +01:00
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
807d042d11 Typo. #2401 2014-12-07 19:56:35 +01:00
379cde30e2 Ported Slic3r::BridgeDetector to XS 2014-11-15 22:41:22 +01:00
b69caff93c Ported LayerRegion::make_slices() to XS 2014-11-09 16:24:07 +01:00
67f1cdf76f Bugfix: seam_position = random didn't work with a single perimeter. #2179 2014-11-07 23:53:18 +01:00
16fce2facb Fixed minor regression in recent commit 2014-11-07 22:58:48 +01:00
b6bd527bdc Apply bridge flow and speed to first layer as well, when we have raft layers. This behavior is more consistent when all the other bottom surfaces lying on the void (thus on support material). #2301 2014-11-07 17:17:20 +01:00
ed17c22889 Minor cleanup of imported symbols 2014-10-25 11:15:12 +02:00
7ff13c063f Port PrintRegion::flow() and LayerRegion.flow() to XS 2014-08-03 19:17:23 +02:00
79d55efa0e Relax collision checks when Detect thin walls is disabled 2014-07-23 15:18:57 +02:00
d9f5fdae72 Bugfix: make_perimeters() was not truly idempotent because prepare_infill() split ->slices into typed surfaces 2014-07-15 19:07:38 +02:00
bcc8e356b2 Merge perimeters of adjacent regions having the same perimeter settings 2014-07-12 15:28:21 +02:00
5e80d7a388 Readd use strict and use warnings 2014-06-12 09:23:10 +02:00
6194cbf530 Refactoring: new method in Flow for calculating spacing between extrusions having different width 2014-06-12 09:17:37 +02:00
8ee11b3239 Refactoring: keep height in Flow object and calculate spacing on demand 2014-06-12 01:00:13 +02:00
34750d47fe Move external_perimeters_first to PrintRegionConfig 2014-06-11 22:15:28 +02:00
7ccfd2f024 More work on incremental slicing 2014-06-11 17:51:18 +02:00
ba8148f4ad Merge branch 'printcpp' of github.com:sapir/Slic3r into sapir-printcpp
Conflicts:
	lib/Slic3r/GCode.pm
	lib/Slic3r/Print.pm
	lib/Slic3r/Print/Object.pm
	lib/Slic3r/Print/Region.pm
2014-06-10 14:46:40 +02:00
3599bd0bae Distinct extrusion width for external perimeters 2014-06-09 21:22:15 +02:00
2bce8bb745 Bugfix: detect thin fill loops so that they can be started at the nearest point without unnecessary loops. #1990 2014-05-26 12:09:13 +02:00
8da0bded1d Move Print object storage to C++. (along with its subobjects) 2014-05-24 23:50:29 +03:00
fcdb462abe Failing test cases for Clipper bug returning empty result set. #2028 2014-05-24 00:00:15 +02:00
a3bd1b5302 New seal_position option that replaces randomize_start, start_perimeters_at_concave_points and start_perimeters_at_non_overhang. The two latter options are now always on by default. A new "Aligned" seal position value has been added, that forces starting points to be aligned when not randomized. #1741 #925 2014-05-22 19:34:49 +02:00
ac0a91a162 Move many speed settings to PrintRegionConfig 2014-05-15 18:53:05 +02:00
5d12a03b82 Move Detect Bridging Perimeters to region config 2014-05-12 23:02:33 +02:00
69002b8ea2 No tests were covering randomize-start, which was not working anymore after recent ExtrusionLoop refactoring. #2028 2014-05-12 21:49:17 +02:00