Commit Graph

383 Commits

Author SHA1 Message Date
Alessandro Ranellucci
0ddcefe956 Use support material speed for skirt and brim instead of perimeter speed so that perimeter speed can be set on a per-region basis 2014-05-18 17:02:18 +02:00
Alessandro Ranellucci
58ffaca2df Bugfix: ooze_prevention brought the extruder too far. Includes regression test 2014-05-15 19:23:57 +02:00
Alessandro Ranellucci
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
Alessandro Ranellucci
7ba08c90cf Refactoring to Model API for making it stricter and safer 2014-05-09 14:24:35 +02:00
Alessandro Ranellucci
93c1ae92c9 Added failing test case for contains_point() not working on Windows. #1950 2014-04-30 16:44:25 +02:00
Alessandro Ranellucci
4680bbdfe2 Make sure spiral vase mode is not enabled for multi-island layers. #1938 2014-04-30 12:23:07 +02:00
Alessandro Ranellucci
a31b2e6ca2 Stricter implementation of the overhang detection. Includes unit tests 2014-04-29 19:58:58 +02:00
Alessandro Ranellucci
7a9dec3720 One more change to multi-value placeholders: indices start from 0. #1899 2014-04-29 17:12:00 +02:00
Alessandro Ranellucci
a4b6075600 Fixed regression and ambiguity about multiple-value placeholders like [first_layer_temperature_1]. Includes several unit tests covering regression. #1899 2014-04-29 17:06:31 +02:00
Alessandro Ranellucci
913ab54a2b Bugfix: gap fill was not inserted in the correct order before leaving island. Includes regression test. #1907 2014-04-29 15:25:14 +02:00
Alessandro Ranellucci
129b6651f6 More correct test description 2014-04-26 16:09:00 +02:00
Alessandro Ranellucci
148c773319 Exclude support from bridged areas 2014-04-26 16:07:43 +02:00
Alessandro Ranellucci
6201aacf88 New coverage detection for bridges. Includes implementation of ExPolygon::get_trapezoids() 2014-04-24 13:44:39 +02:00
Alessandro Ranellucci
d458a7c4d2 Merge pull request #1956 from ledvinap/fix-bridges
Fix bridges
2014-04-23 12:09:02 +02:00
Petr Ledvina
4c1ffecfc4 Fix test to check for correct direction and accept result close to 180 degrees. 2014-04-23 11:40:37 +02:00
Will Miles
fbce8e6730 Avoid integer overflow in arc test. Fixes #1918 2014-04-22 23:01:01 -04:00
Alessandro Ranellucci
9989ebaabd Refactored the BridgeDetector class to expose a cleaner API and make it stateful 2014-04-22 00:59:14 +02:00
Alessandro Ranellucci
f7e8a99078 More tests and related fixes to bridge detection. #1917 2014-04-21 20:44:21 +02:00
Alessandro Ranellucci
c4bfe64fb8 Test coverage for retract_layer_change 2014-04-19 19:28:43 +02:00
Alessandro Ranellucci
a248c98192 Fixed regression when concentric infill was used as solid infill. Includes regression test. #1650 2014-04-19 16:53:37 +02:00
Alessandro Ranellucci
f51921a11a Default extruder wasn't applied to perimeter extruder. Includes regression test. #1868 2014-04-19 11:43:41 +02:00
Alessandro Ranellucci
62e19469bc Fixed regression in --infill-only-where-needed. Includes a minimal test suite for such feature. #1871
Conflicts:

	t/fill.t
2014-04-18 21:48:32 +02:00
Alessandro Ranellucci
15628a90ed Regression test for numerical issues causing thin gaps between perimeters and infill. #1803 2014-04-18 17:30:35 +02:00
Alessandro Ranellucci
e02d33bbce Remove weak test. #1803 2014-04-15 00:57:43 +02:00
Alessandro Ranellucci
43ffb7d3e8 Bugfix: sometimes a tiny gap was left between infill and perimeters. Includes regression test. #1803 2014-04-15 00:22:31 +02:00
Alessandro Ranellucci
26bdbf0210 Test bridges when infill flow is larger than perimeter flow. #1917 2014-04-09 12:09:25 +02:00
Alessandro Ranellucci
627f23d5fe Make angle increment (i.e. angle resolution) configurable 2014-04-08 16:53:32 +02:00
Alessandro Ranellucci
20ca6cea05 Test Clipper's buggy behavior with polylines having coinciding endpoints 2014-04-08 15:26:31 +02:00
Alessandro Ranellucci
38f6e3b643 More unit tests for bridge angle detection 2014-04-08 15:18:37 +02:00
Alessandro Ranellucci
9be57f750d Some fixes to bridge direction detection. Includes regression tests 2014-04-08 14:51:55 +02:00
Alessandro Ranellucci
23e6abff49 Added first unit test for bridge direction 2014-04-08 13:08:42 +02:00
Alessandro Ranellucci
e4709068b9 Some more unit tests for arc fitting 2014-04-06 22:32:53 +02:00
Alessandro Ranellucci
1d35701f99 Incomplete work on arc fitting. Results are still incomplete. More unit tests are needed 2014-04-06 22:10:34 +02:00
Alessandro Ranellucci
e9e23119fc Failing test for broken command line scaling. #1889 2014-04-05 11:21:26 +02:00
Alessandro Ranellucci
d6d6a51e0d Fix for incomplete extrusion on solid surfaces 2014-04-05 10:54:24 +02:00
Alessandro Ranellucci
d2a6194960 Fix the 'extruder' behavior in CLI and test that Print::Simple accepts an incomplete DynamicConfig object 2014-04-05 10:18:00 +02:00
Alessandro Ranellucci
6f3844c1ba Fix crash when using multiple skirts with a single, non-zero, extruder. Includes regression test 2014-04-05 10:09:05 +02:00
Alessandro Ranellucci
9c7cc484bc Update t/support.t still assuming default support material pattern was honeycomb 2014-03-27 00:28:26 +01:00
Alessandro Ranellucci
071097d3f1 Fix extruder assignment and tests 2014-03-27 00:01:33 +01:00
Alessandro Ranellucci
10bf334a58 Added one more failing test to address bad option priority hierarchy 2014-03-26 19:42:01 +01:00
Alessandro Ranellucci
a058994b20 Disable thin wall test failing on Linux. A more robust implementation is needed. #1825 2014-03-25 14:23:11 +01:00
Alessandro Ranellucci
432a87e73d New option for forcing the generation of interface shells. #1847 2014-03-25 01:11:28 +01:00
Alessandro Ranellucci
6feff7fe53 Test that stacked cubes with distinct extruders don't generate any internal interface shells. #1847 2014-03-24 23:44:47 +01:00
Alessandro Ranellucci
5ce4de0544 Bugfix: wrong inwards moves were calculated for 2+ copies because ExtrusionLoop objects were modified in place. Includes regression test. #1842 2014-03-24 20:01:14 +01:00
Alessandro Ranellucci
7421a7bf63 Turn fill_density into percentage 2014-03-22 16:23:33 +01:00
Alessandro Ranellucci
34f1511e0c Better fix for non-global options not being replaced in filename placeholders. Includes refactoring and a new PlaceholderParser class. Also includes regression tests. #1831 2014-03-17 00:39:07 +01:00
Alessandro Ranellucci
bc054e613c Fix regression causing non-global config options to be ignored when replacing placeholders in output filename format. #1831 2014-03-15 20:45:10 +01:00
Alessandro Ranellucci
2a73ab988f Recursive pruning. Some more unit tests 2014-03-09 17:46:02 +01:00
Alessandro Ranellucci
33da6adc3c Better pruning 2014-03-08 11:36:48 +01:00
Alessandro Ranellucci
3c77b301a7 Promising approach to medial axis pruning 2014-03-04 23:33:13 +01:00
Alessandro Ranellucci
ba5435cde1 More medial axis tests 2014-03-03 02:14:02 +01:00
Alessandro Ranellucci
b49a652736 Rewritten half-edge traversal in a more robust way. Includes first medial axis unit test 2014-03-03 01:48:05 +01:00
Alessandro Ranellucci
bc44611f24 Fix failing test after recent changes to thin wall thresholds 2014-03-02 22:26:52 +01:00
Alessandro Ranellucci
2295d48947 Better pruning of thin walls to avoid unwanted extra extrusions. Includes regression test. #1794
Conflicts:

	lib/Slic3r/Layer/Region.pm
2014-03-02 00:31:17 +01:00
Alessandro Ranellucci
a344d68257 Use bridge speed for first solid layer above sparse infill. Includes unit test. #1792 2014-03-01 20:35:44 +01:00
Alessandro Ranellucci
344a517ce8 Regression test for #1808 (crash when using non-consecutive extruders), already fixed in master branch 2014-02-26 11:56:34 +01:00
Alessandro Ranellucci
e837183327 Fixed regression when using --infill-only-where-needed. Includes regression test. #1721 2014-02-16 12:48:07 +01:00
Alessandro Ranellucci
4c650a6d80 Fix regression about percent extrusion width not being validated. Includes regression test 2014-02-13 18:42:49 +01:00
Alessandro Ranellucci
8331c54b67 Updated test count in t/shells.t 2014-02-13 16:17:32 +01:00
Alessandro Ranellucci
49d290accf Fixed spiral vase regressions. Includes regression tests. #1773 2014-02-13 16:11:12 +01:00
Alessandro Ranellucci
0060873f1c Regression test and incomplete fix for bug affecting wrong spiral vase output. #1773
Conflicts:

	lib/Slic3r/GCode/Layer.pm
2014-02-13 16:11:02 +01:00
Alessandro Ranellucci
634ccb33ab Fix regression in Config->setenv affecting post-processing scripts. Includes regression test 2014-02-09 23:14:32 +01:00
Alessandro Ranellucci
ffc891d885 Bugfix: when processing with fill_density = 0, top/bottom solid shells were missing regions thinner than 3 * extrusion width. Includes regression test. #1602
Conflicts:

	lib/Slic3r/Print/Object.pm
	t/fill.t
2014-02-07 02:07:21 +01:00
Alessandro Ranellucci
66045faf81 Fix error in t/support.t 2014-01-14 13:41:39 +01:00
Alessandro Ranellucci
89d3dbaa5a Bugfix: incorrect number of raft layers was generated when too few were requested. #1678
Conflicts:

	lib/Slic3r/Print/Object.pm
2014-01-11 23:26:48 +01:00
Alessandro Ranellucci
c99b9d91db Fix bug in regression infill causing bad clipping at very low layer heights. Includes regression test. #1669
Conflicts:

	lib/Slic3r/Fill/Rectilinear.pm
2014-01-11 21:34:26 +01:00
Alessandro Ranellucci
ea173cf815 Bugfix: ambiguous semantics of the layers_count() method caused M73 to go beyond 100%. #1670
Conflicts:

	lib/Slic3r/GCode.pm
	lib/Slic3r/Print.pm
	lib/Slic3r/Print/Object.pm
2014-01-11 17:40:09 +01:00
Alessandro Ranellucci
ed3a6349c7 Adapt the new gcode.t test to master (and subtract final retraction from used filament length) 2014-01-11 14:42:31 +01:00
Alessandro Ranellucci
529d1b19c3 Test that absolute_E is positive at the end of print (and document that it accounts for the final retraction) 2014-01-11 14:26:19 +01:00
Alessandro Ranellucci
b17d06f9d1 Finished porting BoundingBox to XS 2014-01-07 12:48:09 +01:00
Alessandro Ranellucci
07b9b12475 Make tests pass 2014-01-05 00:36:33 +01:00
Alessandro Ranellucci
a2cbb261cb More work for refactoring Flow/Extruder 2014-01-03 20:02:00 +01:00
Alessandro Ranellucci
8ed738d3f7 More incomplete work for Flow/Extruder refactoring 2014-01-03 18:27:46 +01:00
Alessandro Ranellucci
5bf0942f45 Satisfy test suite and CLI 2014-01-02 17:24:23 +01:00
Alessandro Ranellucci
bd133d9434 Update Clipper to 6.1.2 2013-12-24 12:40:46 +01:00
Alessandro Ranellucci
1a690589a8 Satisfy test suite 2013-12-24 12:03:30 +01:00
Alessandro Ranellucci
2956c1a2e5 More work for removing references to $Slic3r::Config 2013-12-24 11:58:36 +01:00
Alessandro Ranellucci
7ddf4f3ddf Fixes to complete_objects to make t/gcode.t pass 2013-12-24 01:13:02 +01:00
Alessandro Ranellucci
20f1f3d2b4 Fix regression preventing raft from being generated for the entire object footprint. #1614 #1567 2013-12-23 20:31:50 +01:00
Alessandro Ranellucci
fc5aac0ff6 Bugfix: fan wasn't turned on for bridges when vibration limit or another internal post-processor was enabled. Includes regression test. #1533 2013-12-23 01:19:53 +01:00
Alessandro Ranellucci
38ea5f79d7 Merge branch 'xs-model' 2013-12-18 19:20:23 +01:00
Alessandro Ranellucci
916a0a0e58 Fix compilation and test suite 2013-12-18 16:34:31 +01:00
Alessandro Ranellucci
12db58c9d0 Merge branch 'stable' 2013-12-07 14:54:07 +01:00
Alessandro Ranellucci
00e8ba4781 Fix regression causing complete_objects to skip Z moves after first object is complete. Includes regression test. #1582 #1541 2013-12-07 14:52:59 +01:00
Alessandro Ranellucci
bd8c430afd Merge branch 'stable'
Conflicts:
	lib/Slic3r/Geometry/Clipper.pm
	lib/Slic3r/Layer/Region.pm
2013-11-24 22:48:31 +01:00
Alessandro Ranellucci
387df3b900 Fix regression causing toolchange_gcode to crash Slic3r. Includes regression test. #1545 2013-11-24 13:04:16 +01:00
Alessandro Ranellucci
5217bc370a Fix regression causing retraction restarts to ignore extrusion_axis. Includes regression test. #1547 2013-11-24 12:37:36 +01:00
Alessandro Ranellucci
a29eeb7789 Fix t/geometry.t 2013-11-24 00:59:45 +01:00
Alessandro Ranellucci
0045f84ed2 Removed chained_path_points() 2013-11-23 21:42:01 +01:00
Alessandro Ranellucci
4577f0725c Incomplete work for XS-based convex_hull 2013-11-22 21:43:35 +01:00
Alessandro Ranellucci
a950fbe0c2 Removed more unused functions and fixed tests 2013-11-22 16:19:15 +01:00
Alessandro Ranellucci
518798beb3 Incomplete work for porting simplify() to XS 2013-11-21 20:25:24 +01:00
Alessandro Ranellucci
5f2b2c90b6 Fix error in contains_point() port 2013-11-21 18:42:16 +01:00
Alessandro Ranellucci
5f81292f3f Ported encloses_point() to XS and renamed to contains_point() 2013-11-21 16:21:42 +01:00
Alessandro Ranellucci
3025c77675 Use Clipper for line clipping 2013-11-21 14:15:38 +01:00
Alessandro Ranellucci
50c0081d25 Update Clipper to 6.0.0 2013-11-20 11:35:58 +01:00
Alessandro Ranellucci
beb7939e22 Rename standby_temperature to ooze_prevention. #1523 2013-11-15 16:01:15 +01:00
Alessandro Ranellucci
5e78f8a0b0 Make sure all extruders are outside skirt at toolchange when standby_temperature is enabled 2013-11-15 15:52:11 +01:00
Alessandro
e024b08762 Round Perl coordinates instead of truncating them to integers. #1486 #1445 #1464 2013-11-11 13:00:50 +01:00
Alessandro Ranellucci
849d69d178 Fix regression in chained_path() introduced in fb763b0187. Includes regression test. #1184 2013-11-02 18:00:55 +01:00
Alessandro Ranellucci
0b63afb370 Fix complete_objects after XS port. Includes regression test. #1511 2013-11-02 14:44:30 +01:00
Alessandro Ranellucci
c08d4cc798 Fixed support unit tests and reduced dependency on $object 2013-10-26 17:56:59 +02:00
Alessandro Ranellucci
4c2c31b554 Fix speed math for wipe, which was causing too fast retraction. Includes regression test. #1468 2013-10-13 17:05:22 +02:00
Alessandro Ranellucci
ed529b62f3 Fix threading issue with GUI. #1443 #1444 2013-09-19 16:00:47 +02:00
Alessandro Ranellucci
032698fb07 Test that toolchanges happen outside skirt when standby-temperature is enabled 2013-09-19 10:44:29 +02:00
Alessandro Ranellucci
40fd7418cd Added test for standby_temperature 2013-09-19 01:29:34 +02:00
Alessandro Ranellucci
a7989e382c Bugfix: enabling raft layers generated support for the whole model. Includes regression test. #1375 2013-09-17 23:51:30 +02:00
Alessandro Ranellucci
d69c956e75 Update t/support.t 2013-09-17 23:32:01 +02:00
Alessandro Ranellucci
ea0e136b45 Prevent superfluous extra perimeters added when a region has an acute angle 2013-09-17 20:18:54 +02:00
Alessandro Ranellucci
39449f9245 Revert a recent change made to shells generation, causing too much solid infill. Includes regression test. #1431 2013-09-17 19:24:16 +02:00
Alessandro Ranellucci
7bd2ce21ca Fix wrong bridge flow used for overhangs and bridge perimeters. Includes regression test. #1407 2013-09-17 10:37:01 +02:00
Alessandro Ranellucci
aef5c05c57 Update brim generation code. Includes regression test. #1440 2013-09-16 10:33:30 +02:00
Alessandro Ranellucci
5f54d0eb90 Fix concentric infill and add regression test. #1432 2013-09-12 11:14:54 +02:00
Alessandro Ranellucci
747fd25f6d Fix threads, tests and require the most recent Moo version 2013-09-12 11:09:03 +02:00
Alessandro Ranellucci
a821eb7f3c More work to avoid working with vertices outside XS 2013-09-11 11:55:08 +02:00
Alessandro Ranellucci
566d38a472 Replace TriangleMesh with the XS port 2013-09-10 00:40:46 +02:00
Alessandro Ranellucci
4dd12b57a1 Fixed wipe (includes regression test). #1421 2013-09-06 19:14:06 +02:00
Alessandro Ranellucci
a49dc603cc Many changes and fixes to remove leaks and return objects by reference 2013-09-03 19:26:58 +02:00
Alessandro Ranellucci
0ffb0f6a58 Fix tests 2013-09-02 22:10:52 +02:00
Alessandro Ranellucci
1cfdf7e955 Ported Slic3r::Polyline::Collection 2013-08-30 00:06:10 +02:00
Alessandro Ranellucci
bd7b0e2aed Ported ExtrusionPath::Collection->chained_path 2013-08-29 11:47:59 +02:00
Alessandro Ranellucci
5f17fa342b Move arc fitting code to its own post-processing filter and remove the built-in ExtrusionPath::Arc class 2013-08-28 20:40:13 +02:00
Alessandro Ranellucci
055273fbc8 Huge speed boost by reducing the number of method calls in GCode.pm 2013-08-28 20:38:22 +02:00
Alessandro Ranellucci
73c05a6092 Moved vibration limit to its own G-code filter 2013-08-28 20:37:56 +02:00
Alessandro Ranellucci
fb763b0187 Removed dependency on Math::Clipper 2013-08-27 01:26:44 +02:00
Alessandro Ranellucci
49040db9a3 Fixes to pass all tests 2013-08-26 16:25:42 +02:00
Alessandro Ranellucci
fa07c512b4 Merge branch 'master' into xsdata
Conflicts:
	lib/Slic3r/Layer/Region.pm
	lib/Slic3r/Print.pm
	lib/Slic3r/Print/Object.pm
2013-08-16 09:09:56 +02:00
Alessandro Ranellucci
b5df61df2c Update test now failing because of some numerical instability 2013-08-13 10:46:46 +02:00
Alessandro Ranellucci
dbe429cf73 Regression test for fix 36596bf569. #1387 2013-08-13 10:05:40 +02:00
Alessandro Ranellucci
b38cc2c244 Merge branch 'master' into xsdata
Conflicts:
	lib/Slic3r.pm
	lib/Slic3r/ExPolygon.pm
	lib/Slic3r/Fill.pm
	lib/Slic3r/Fill/Rectilinear.pm
	lib/Slic3r/GCode.pm
	lib/Slic3r/GUI/Plater.pm
	lib/Slic3r/Geometry/Clipper.pm
	lib/Slic3r/Layer/Region.pm
	lib/Slic3r/Print.pm
	lib/Slic3r/Print/Object.pm
	lib/Slic3r/TriangleMesh.pm
	t/shells.t
	xs/MANIFEST
2013-08-08 02:10:34 +02:00
Alessandro Ranellucci
4e13d61aed Fix retraction/Z/lift problems after recent changes 2013-07-30 12:15:40 +02:00
Alessandro Ranellucci
913f401280 Merge new-support2 2013-07-29 20:50:26 +02:00
Alessandro Ranellucci
10a8f479f9 Bugfix: lift was not working correctly with multiple extruders and multiple skirt layers. Also, we now ignore all lift settings except the one of the first extruder. Includes regression tests. #1332 #1338 2013-07-29 19:43:57 +02:00
Alessandro Ranellucci
b5907dc734 Bugfix: z_offset was not applied in spiral_vase. Includes regression test #1343 2013-07-29 17:28:30 +02:00
Alessandro Ranellucci
80676f358a Keep edge lines in rectilinear infill even when the sides are not perfectly straight 2013-07-29 13:36:22 +02:00
Alessandro Ranellucci
99963775ff Extend tests about solid infill adjustment 2013-07-29 12:28:23 +02:00
Alessandro Ranellucci
948b43fe0d Don't try to align rectilinear infill if solid, otherwise there will be a gap at one side 2013-07-29 11:05:04 +02:00
Alessandro Ranellucci
3bcb2f04ed Add spiral vase test for hollow models 2013-07-28 15:02:03 +02:00
Alessandro Ranellucci
91cade7e8f Make sure there are no gaps in spiral vase. Includes regression test. #1251 2013-07-28 13:39:15 +02:00
Alessandro Ranellucci
691c45d57f Smarter handling of hollow prints. Optimization included 2013-07-28 10:56:41 +02:00
Alessandro Ranellucci
5c191c062f Fix test description 2013-07-27 19:43:46 +02:00
Alessandro Ranellucci
25af3eb35f Proper fix for preventing shells to propagate too much 2013-07-27 19:41:36 +02:00
Alessandro Ranellucci
6bd4803612 Failing test case about spurious infill in hollow objects, caused by shells being correctly generated even for hollow objects - however sometimes we don't want that 2013-07-26 20:17:33 +02:00
Alessandro Ranellucci
fe94e31bda Remove t/freeze.t. #1352 2013-07-26 10:32:44 +02:00
Alessandro Ranellucci
e29aca3553 Reapply correct optimization for simplifiying fill_surfaces before performing the offset. #1325 2013-07-20 12:22:41 +02:00
Alessandro Ranellucci
9433048873 One more test about polygon simplification 2013-07-19 22:49:39 +02:00
Alessandro Ranellucci
1b285f3f46 Thread-safe integration of ExtrusionPath::Collection 2013-07-18 22:29:12 +02:00
Alessandro Ranellucci
898007fc36 Port offset_ex() and offset2_ex() to XS 2013-07-16 20:09:53 +02:00
Alessandro Ranellucci
9458c7db97 Fix integration of XS containers 2013-07-16 17:13:01 +02:00
Alessandro Ranellucci
9b582a11ff Adopt XS containers everywhere (incomplete work) 2013-07-16 09:49:34 +02:00