Commit Graph

401 Commits

Author SHA1 Message Date
Alessandro Ranellucci
e24b3a8916 Merge branch 'call_get_layer' of github.com:sapir/Slic3r into sapir-call_get_layer
Conflicts:
	lib/Slic3r/Print.pm
2014-06-14 00:05:24 +02:00
Y. Sapir
09357e5868 A few improvements to gcode placeholder tests. 2014-06-13 14:02:09 +03:00
Alessandro Ranellucci
9bff6ccde7 Fixed tests after recent fixes to concave_points 2014-06-11 22:21:30 +02:00
Alessandro Ranellucci
5dcc1eab79 Bugfix: seam_position = aligned failed in certaim circumstances because of faulty concave points detection. Includes regression test 2014-06-11 21:58:41 +02:00
Alessandro Ranellucci
82e2dd4e62 Bugfix: wrong number of raft layers in some situations due to a numerical error 2014-06-11 21:58:28 +02:00
Alessandro Ranellucci
3599bd0bae Distinct extrusion width for external perimeters 2014-06-09 21:22:15 +02:00
Alessandro Ranellucci
64853d5661 Bugfix: M73 was exceeding 100% when multiple objects were printed together. #1912 2014-06-05 16:24:47 +02:00
Alessandro Ranellucci
28695c719c Fixed regression causing bridge flow to be incorrect when a manual default extrusion width was specified. Includes several regression tests. #2027 2014-06-03 23:59:03 +02:00
Alessandro Ranellucci
ce1e736b6b Bugfix: crash when skirt was contained in brim area. Includes regression test. #2058 2014-05-27 13:38:41 +02:00
Alessandro Ranellucci
3d25b9030c Bugfix: movement between objects in sequential printing mode was going too far away. #2013 #2007 2014-05-26 15:19:13 +02:00
Alessandro Ranellucci
abdf6531f1 Bugfix: wrong logic for concave_points() and convex_points() 2014-05-26 11:50:42 +02:00
Alessandro Ranellucci
7ea09a0071 Bugfix: failure when exporting SVG from object containing multiple islands. Includes regression test. #2050 2014-05-26 11:13:53 +02:00
Alessandro Ranellucci
4e5f7d74ff Bugfix: wrong handling of large number of raft layers. #2041 2014-05-25 23:17:00 +02:00
Alessandro Ranellucci
88a2e5c791 Typo seal -> seam :-) 2014-05-24 22:10:28 +02:00
Alessandro Ranellucci
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
Alessandro Ranellucci
5e6ff952df Fix more regressions in test suite regarding the workaround for Clipper bug 2014-05-21 15:45:16 +02:00
Alessandro Ranellucci
08279ec5d8 Bugfix: thin walls forming a closed loop had overlapping segments at their endpoints. #1948 #1875 2014-05-21 15:03:31 +02:00
Alessandro Ranellucci
038076e040 Bugfix: first layer extrusion width wasn't affecting infill. Includes regression test. #2042 2014-05-18 23:36:30 +02:00
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