Commit Graph

1269 Commits

Author SHA1 Message Date
Scott Penrose
9d086f027a Add defaults into Tooltips from #885 2013-01-30 09:53:22 +11:00
Alessandro Ranellucci
177f1a9bf0 New raft_layers option. #123 2013-01-28 14:12:01 +01:00
Alessandro Ranellucci
a016a06fa6 Merge branch 'avoid-crossing-perimeters'
Conflicts:
	lib/Slic3r/GCode.pm
2013-01-28 10:43:58 +01:00
Alessandro Ranellucci
e8cb1f4528 Slight addition to avoid_crossing_perimeters tooltip 2013-01-28 10:42:24 +01:00
Alessandro Ranellucci
2963e54d21 Use the faster polygon_multi_linestring_intersection() 2013-01-28 00:32:19 +01:00
Alessandro Ranellucci
ae201c8f41 Optimization: avoid calculating square roots if not needed 2013-01-28 00:18:55 +01:00
Alessandro Ranellucci
6cb891f2db Use Boost::Geometry::Utils for Douglas-Peucker 2013-01-28 00:09:19 +01:00
Alessandro Ranellucci
4c8c725eec Add a wkt() method to ExPolygon 2013-01-28 00:02:34 +01:00
Alessandro Ranellucci
ddaeaa7591 Fix last_pos shifting and add unit test 2013-01-27 13:08:13 +01:00
Alessandro Ranellucci
50526dea5a Fix last_pos shifting and add unit test 2013-01-27 13:06:45 +01:00
Alessandro Ranellucci
ad48fdc7f9 Fix external motionplanner too 2013-01-27 12:48:16 +01:00
Alessandro Ranellucci
f1230312e3 Fixes for merge issues 2013-01-26 23:55:47 +01:00
Alessandro Ranellucci
61b164b539 Merge branch 'master' into avoid-crossing-perimeters
Conflicts:
	lib/Slic3r/GCode.pm
	lib/Slic3r/Print.pm
2013-01-26 21:45:17 +01:00
Alessandro Ranellucci
4c62c1b570 Support .gco extension too. #957 2013-01-26 21:40:20 +01:00
Mike Sheldrake
bc61656057 harmless misplaced semicolon 2013-01-26 09:31:28 -08:00
Mike Sheldrake
599d76b70b avoid DBus related crash on Ubuntu #954
An undocumented feature of Net::DBus->session() is that it returns
the same connection object it creates the first time it's called for
all subsequent calls. Somehow this exposes us to a bug where unref()
is called on that object too many times, causing a segfault.
Undefining the cached object after we've used it once avoids this.
2013-01-25 12:29:44 -08:00
Alessandro Ranellucci
18280da1b3 Bugfix: the non-manifold warning was spitting out wrong coordinates 2013-01-25 18:02:01 +01:00
Alessandro Ranellucci
f555a1ecc2 Replace 'Less' with 'Fewer' in plater. #944 2013-01-23 19:16:57 +01:00
Alessandro Ranellucci
94bb1e54bb Raise max temperatures (in GUI) to 400°C 2013-01-23 11:10:46 +01:00
Mike Sheldrake
65ef3b35d9 limit layer requests to object->layer_count when preparing skirt #901
Each object on the plater was being queried for points for
producing the skirt for all skirt layers, even when the object was
shorter than the skirt.

layers of the print
2013-01-18 08:36:01 -08:00
Alessandro Ranellucci
73c70021df Change toolchange and G92 E0 order for makerbot and sailfish G-code flavors. #855 2013-01-17 15:02:40 +01:00
Alessandro Ranellucci
177347137f New G-code flavor for Sailfish (thanks to fros1y for working on it). #826 2013-01-17 14:56:31 +01:00
Alessandro Ranellucci
8001059390 Add Mike Sheldrake in the About window 2013-01-17 14:13:25 +01:00
Alessandro Ranellucci
92feebf5fe Fixed regression introduced in 4d8757bf5d causing crash during support material generation 2013-01-17 12:32:57 +01:00
Alessandro Ranellucci
4d8757bf5d Interface support layers were clipped badly. Also, reduce simplification of the clipping boundaries. #583 2013-01-17 11:59:14 +01:00
Alessandro Ranellucci
4fc6fc5ab6 Increase default value for retract_length_toolchange 2013-01-17 11:51:00 +01:00
Alessandro Ranellucci
0ddd6d9e55 Require Math::Clipper 1.17 2013-01-17 11:11:22 +01:00
Alessandro Ranellucci
954520cba5 Enable cooling by default 2013-01-17 10:40:45 +01:00
Alessandro Ranellucci
ecc7e4560e Don't fill gaps if fill density is 0. #915 2013-01-17 10:39:05 +01:00
Mike Sheldrake
f3a1221039 per-thread clipper object for parallel support generation #888 2013-01-16 06:00:04 -08:00
Mike Sheldrake
241dff00e2 Merge branch '834-every-n-fill-frags' #834 2013-01-16 02:24:47 -08:00
Mike Sheldrake
85934e1738 use infill flow spacing, not perimeter, for combine_infill() clip offsets 2013-01-15 22:13:11 -08:00
Alessandro Ranellucci
4bff4d0d50 Ignore perimeter_acceleration and infill_acceleration if their values are 25 and 50 to handle legacy configs gracefully. 2013-01-15 12:52:22 +01:00
Mike Sheldrake
bce3e96210 extraneous fill against sloped walls with fill every N layers #834
Polygons used for N x depth fill surfaces need to be offset
by flow spacing before they are reused to clip lower fill surfaces.
Otherwise thin fill sections remain on clipped layers against sloping
walls, and the N x depth fill collides with them.
2013-01-14 21:18:31 -08:00
Mike Sheldrake
68fc91d854 offset miter limit to 3 - 801 828 836 851 875 - spikes and pimples
Was set to 10 to address 801. Setting to 3 has the same effect for 801,
and avoids spike artifacts that are likely causing "spike and pimple"
problems in the referenced issues.
2013-01-13 02:50:49 -08:00
Alessandro Ranellucci
ad9be0e4d7 Bugfix: crash when reading/writing files to paths containing non-ASCII characters on Windows. #651 #865 2013-01-13 10:18:34 +01:00
Alessandro Ranellucci
48e00a4c40 Merge branch 'master' into avoid-crossing-perimeters
Conflicts:
	lib/Slic3r/GCode.pm
	lib/Slic3r/GUI/Plater.pm
	lib/Slic3r/Print.pm
	lib/Slic3r/SVG.pm
2013-01-12 19:00:18 +01:00
Mike Sheldrake
73aae07e74 842, 847 slightly enlarge a clip polygon to counteract integer truncation
Geomery in referenced issues triggered Clipper problems, but also
pointed to a situation where integer truncation (as coordinates pass
into Clipper) might be shrinking a clip polygon in a way that leaves
degenerate or unwanted thin clip results. Growing the clip polygon by 2
is expected to overcome any issues caused by truncation of floats.
2013-01-11 10:15:42 -08:00
Alessandro Ranellucci
3d03faf0b2 Remove leftover M501 2013-01-10 17:19:38 +01:00
Alessandro Ranellucci
32fd58d531 Acceleration control. #185 2013-01-10 15:29:40 +01:00
Alessandro Ranellucci
7239ca18c1 Simple mode 2013-01-03 15:49:20 +01:00
Alessandro Ranellucci
cf4c090208 Added Preferences dialog 2013-01-02 20:30:48 +01:00
Alessandro Ranellucci
34e047205a Automatic detection of support material threshold angle 2013-01-02 19:40:48 +01:00
Alessandro Ranellucci
cbd298bc36 Alter extrusion width automatic calculation to take "native flow" into account 2013-01-02 19:22:51 +01:00
Alessandro Ranellucci
30d9b2e508 Refactoring: initialize all layers at once and avoid duplication of slicing height math. #637 2013-01-01 23:28:48 +01:00
Alessandro Ranellucci
1774143011 Bugfix: PlanePath fill patterns were not working anymore. #880 2012-12-31 14:11:36 +01:00
Alessandro Ranellucci
141a8d3989 Bugfix: some holes being closed incorrectly. #858 2012-12-30 17:57:30 +01:00
Alessandro Ranellucci
6e6bc74636 Added failing test case for troubleshooting unexpected filled holes. #858 2012-12-30 16:27:20 +01:00
Alessandro Ranellucci
0da71dbdfa Fix regression causing wrong number of solid shells when using fill_density = 0 (includes regression test) 2012-12-23 20:20:17 +01:00
Alessandro Ranellucci
e59ed7efb7 New toolchange_gcode option. #547 2012-12-23 16:29:08 +01:00
Alessandro Ranellucci
15f07197d8 Don't store ->surfaces anymore. Save memory, save time 2012-12-22 23:57:39 +01:00
Alessandro Ranellucci
5930267de9 Bugfix: some top/bottom solid shells are not treated as solid. #689 2012-12-21 20:25:48 +01:00
Alessandro Ranellucci
8cd8e8b209 Merge branch 'test-dual-retraction' 2012-12-21 15:23:07 +01:00
Alessandro Ranellucci
dc4ada2374 Fix retraction tests and fix retract_extra_length and lift in multiple extruders environments 2012-12-21 15:14:44 +01:00
Alessandro Ranellucci
701c98c5a7 Export Slic3r::Test::_eq() 2012-12-21 13:25:03 +01:00
Alessandro Ranellucci
d5537e7797 Enable retraction for support material too, but only when moving away from support islands. #831 2012-12-20 18:47:40 +01:00
Alessandro Ranellucci
bf603b0221 Fixed regression causing inefficient paths during infill 2012-12-20 18:10:20 +01:00
Alessandro Ranellucci
dcc0ce78db Fix warning 2012-12-20 17:03:50 +01:00
Alessandro Ranellucci
ea304a4803 Bugfix: custom layer G-code was applied before Z change, and not after like it was documented. #869 2012-12-20 17:01:01 +01:00
Alessandro Ranellucci
b70404bb23 Disable gap filling if gap fill speed is set to zero 2012-12-17 19:55:25 +01:00
Alessandro Ranellucci
1a3497b71d Add tests for vibration limiting and fix implementation. Also includes a fix in set_shift() 2012-12-09 18:33:25 +01:00
Alessandro Ranellucci
4078bb0476 Fix error when vibration limit is disabled 2012-12-06 10:54:28 +01:00
Alessandro Ranellucci
142a6cc4eb Add --vibration-limit back to CLI usage and disable it by default 2012-12-05 17:57:35 +01:00
Alessandro Ranellucci
ca0aa5c287 Apply vibration limit to every move except perimeters 2012-12-05 16:32:50 +01:00
Alessandro Ranellucci
25960a33e0 Put vibration limit back in GUI 2012-12-05 15:08:17 +01:00
Alessandro Ranellucci
cf32cd6510 Implement vibration limit using G4 pauses 2012-12-05 15:03:36 +01:00
Alessandro Ranellucci
f001374c6e New implementation of the little inwards move before leaving a loop. #186 2012-12-05 11:31:35 +01:00
Alessandro Ranellucci
283809f5c2 No need for a role to identify small perimeters 2012-12-05 10:47:41 +01:00
Alessandro Ranellucci
ac6dc67e6a Tidy 2012-12-05 01:12:50 +01:00
Alessandro Ranellucci
accc598eb5 Revert "Experimental feature: make a little move inwards by 45° after finishing the external perimeter and before retracting. #186"
This reverts commit c57e94c065.

Conflicts:

	lib/Slic3r/GCode.pm
2012-11-29 19:16:07 +01:00
Alessandro Ranellucci
b495e15d7f Fix plater slowness after the introduction of the vertical projection 2012-11-29 19:13:52 +01:00
Alessandro Ranellucci
93310a6a81 Fix bounding_box_center() 2012-11-24 00:15:02 +01:00
Alessandro Ranellucci
116ab446e3 Show vertical projection instead of convex hull for objects with <= 2000 facets. #780 2012-11-24 00:13:04 +01:00
Alessandro Ranellucci
12873e973b One more missing bit for gap_fill_speed 2012-11-23 18:37:47 +01:00
Alessandro Ranellucci
556e59bbe4 Last commit erroneously reverted gap fill speed 2012-11-23 17:41:15 +01:00
Alessandro Ranellucci
0f0992e39a Speed for support material. #813 2012-11-23 17:20:26 +01:00
Alessandro Ranellucci
d6d96391a9 Avoid overextrusion when support material spacing is configured to < the extrusion spacing. #821 2012-11-23 17:15:52 +01:00
Alessandro Ranellucci
e7b307df02 Expose gap_fill_speed in GUI 2012-11-23 17:09:59 +01:00
Alessandro Ranellucci
5dba02fdeb New separate speed setting for gap fill. #785 2012-11-23 11:25:02 +01:00
Alessandro Ranellucci
68e302fe27 Fix exporting G-code 2012-11-23 11:24:04 +01:00
Alessandro Ranellucci
21a6219b62 Disable vibration limit. #785 2012-11-23 11:14:06 +01:00
Alessandro Ranellucci
2abf2be781 New testing framework 2012-11-21 20:41:14 +01:00
Alessandro Ranellucci
8ae96a8868 Only apply vibration limit to gaps fill while it's not very mature to work with long segments 2012-11-21 19:27:38 +01:00
Alessandro Ranellucci
fc399d60e2 Raise the miter limit to avoid squaring corners too easily. #801 2012-11-20 17:43:20 +01:00
Alessandro Ranellucci
cd892fdce8 Connect zigzag gaps fill paths to benefit from simplification 2012-11-19 18:57:42 +01:00
Alessandro Ranellucci
e91320e031 Fix rotation for threaded perls 2012-11-19 18:31:41 +01:00
Alessandro Ranellucci
124a1fd84e Raise default frequency limit to 25Hz 2012-11-19 18:03:49 +01:00
Alessandro Ranellucci
de8a845d81 Disable retraction for support material 2012-11-19 18:03:20 +01:00
Alessandro Ranellucci
5678cd562c Fix preview after rotation in plater 2012-11-19 17:39:16 +01:00
Alessandro Ranellucci
99c942b5ea Merge branch 'vibration-limit' 2012-11-19 15:54:50 +01:00
Alessandro Ranellucci
3c7321ab80 Bugfix: some retractions between objects/copies were skipped. #786 2012-11-19 15:34:52 +01:00
Alessandro Ranellucci
300734db38 Emit M106 S0 instead of M107 for Teacup 2012-11-19 15:30:55 +01:00
Alessandro Ranellucci
183736dd9a Infill flow for bottom layer was calculated incorrectly when first_layer_height != layer_height 2012-11-19 12:37:05 +01:00
Alessandro Ranellucci
de0640603a Append full config when --gcode-comments is enabled 2012-11-18 19:53:52 +01:00
Alessandro Ranellucci
a66e8e547d Apply Douglas-Peucker to all paths before generating G-code 2012-11-18 18:00:33 +01:00
Alessandro Ranellucci
e119cee66c Don't emit warnings on unknown options 2012-11-18 17:42:52 +01:00
Alessandro Ranellucci
c99ff0cfe2 Apply Douglas-Peucker to all paths before generating G-code 2012-11-18 17:38:08 +01:00
Alessandro Ranellucci
08700aa942 Keep bridge flow unchanged even with the new overlapping spacing 2012-11-18 15:44:47 +01:00
Alessandro Ranellucci
427e3c1720 Keep bridge flow unchanged even with the new overlapping spacing 2012-11-18 15:42:59 +01:00
Alessandro Ranellucci
7a87a76391 Refactor frequency limit to avoid processing G-code 2012-11-18 15:28:13 +01:00
Alessandro Ranellucci
008633f013 Working implementation of frequency limit 2012-11-18 12:23:11 +01:00
Alessandro Ranellucci
f3164594eb More incomplete work 2012-11-18 11:33:53 +01:00
Alessandro Ranellucci
72007c4f6a Rewrite frequency limiting code 2012-11-17 18:07:13 +01:00
Alessandro Ranellucci
600e951fd8 Completed vibration limit 2012-11-17 12:08:19 +01:00
Alessandro Ranellucci
96dd106f61 Initial work for limiting vibrations 2012-11-17 10:40:15 +01:00
Alessandro Ranellucci
8d557bee8c Bugfix: AMF export was not working anymore. #799 2012-11-16 22:41:54 +01:00
Alessandro Ranellucci
7310cec087 Remove one more unused line 2012-11-16 22:09:32 +01:00
Alessandro Ranellucci
ed50aefa71 Remove unused code 2012-11-16 22:08:14 +01:00
Alessandro Ranellucci
ac5be309e3 Do not call merge_continuous_lines() anymore 2012-11-16 19:20:46 +01:00
Alessandro Ranellucci
aff0898f35 Typo 2012-11-16 18:24:09 +01:00
Alessandro Ranellucci
86f5cb8654 Previous commit about bridge spacing was incomplete 2012-11-16 18:10:09 +01:00
Alessandro Ranellucci
a81377d684 Apply overlap factor to bridges too 2012-11-16 13:18:06 +01:00
Alessandro Ranellucci
1c2bc94d5a Bugfix: only_retract_when_crossing_perimeters might cause some missed retractions when printing multiple copies of the same object. #786 2012-11-16 12:39:55 +01:00
Alessandro Ranellucci
a1a12ffe8e Allow setting top-solid-layers and bottom-solid-layers to 0 independently 2012-11-16 12:37:47 +01:00
Alessandro Ranellucci
06b475a4ed Clone last_pos before storing it otherwise it will be translated. #786 2012-11-16 11:05:45 +01:00
Alessandro Ranellucci
b625c3b2b2 Simplify gaps fills to avoid some shaking 2012-11-16 10:47:42 +01:00
Alessandro Ranellucci
a5a0f32e19 Expose all SLIC3R_* environment variables as placeholders. #781 2012-11-16 10:07:30 +01:00
Alessandro Ranellucci
580e36eb25 Raise offset scale factor back to 100000 now that Clipper was updated 2012-11-15 10:09:29 +01:00
Alessandro Ranellucci
d3629a3a44 Require Math::Clipper 1.15. #779 2012-11-13 11:53:02 +01:00
Alessandro Ranellucci
93bb2c1056 Bugfix: fatal error when using brim and no skirt. #784 2012-11-07 23:06:32 +01:00
Alessandro Ranellucci
2e3110d2e4 Possible (or at least partial) workaround for the current Clipper segfault. #779 2012-11-07 15:23:01 +01:00
Alessandro Ranellucci
2ef90562ce Fixed regression causing first two layers to be infilled with parallel lines 2012-11-06 22:16:01 +01:00
Alessandro Ranellucci
e21c806ee9 New wkt() method for debugging 2012-11-06 20:31:50 +01:00
Alessandro Ranellucci
1db614a5a9 Revert "Use G92 to apply Z offset. #486" #778 2012-11-06 20:04:44 +01:00
Alessandro Ranellucci
ab2b31672f Fixed regression causing a long string between copies 2012-11-06 19:54:21 +01:00
Alessandro Ranellucci
0bff8ad576 Bugfix: some multimaterial files generated a fatal error 2012-11-05 15:59:31 +01:00
Alessandro Ranellucci
0a912c6316 Only apply min_skirt_length on bottom layer 2012-11-05 14:26:55 +01:00
Alessandro Ranellucci
68e1edab80 Require Math::Clipper 1.14 and increase scale factor for offset(). #720 2012-11-05 00:17:46 +01:00
Mark Hindess
705d6b3179 Quick fix for support material. 2012-11-02 22:39:08 +00:00
Alessandro Ranellucci
d67c07bd47 Fix typo causing incomplete honeycomb infill after recent refactoring 2012-11-01 18:32:35 +01:00
Alessandro Ranellucci
93a8391e18 Alternate gaps fill direction 2012-11-01 11:53:18 +01:00
Alessandro Ranellucci
37c0b45187 Detect gaps even after the desired number of perimeters has been generated 2012-11-01 11:51:52 +01:00
Alessandro Ranellucci
cb4ede7f9e Do not pass the Print object to SVG::output anymore 2012-11-01 11:34:53 +01:00
Alessandro Ranellucci
554d10c854 Only put ExtrusionPath objects in ExtrusionPath::Collection (no ExtrusionLoop objects) 2012-10-31 19:08:29 +01:00
Alessandro Ranellucci
d4ccd39ad3 Minor code cleanup 2012-10-30 15:53:01 +01:00
Alessandro Ranellucci
92ab53868e Remove unused methods 2012-10-30 15:49:11 +01:00
Alessandro Ranellucci
44d91774a6 Get rid of useless Slic3r::Fill instances 2012-10-30 15:38:17 +01:00
Alessandro Ranellucci
cec7bf815c Get rid of the ExtrusionLoop objects in concentric filler 2012-10-30 15:29:13 +01:00
Alessandro Ranellucci
20e73face2 Get rid of max_print_dimension in filler objects 2012-10-30 15:09:54 +01:00
Alessandro Ranellucci
6c97e588b1 Don't require the print object in filler objects 2012-10-30 14:34:41 +01:00
Alessandro Ranellucci
5943114574 Only take layer_id instead of layer in filler objects 2012-10-30 14:25:48 +01:00
Alessandro Ranellucci
61047f0df5 Define perimeter/infill overlap over spacing instead of width and increase it slightly to compensate 2012-10-30 14:21:59 +01:00
Alessandro Ranellucci
610862a97f Use the actual flow spacing for clipping concentric loops 2012-10-30 14:17:30 +01:00
Alessandro Ranellucci
0a5016a509 Cleaner usage of the PI constant 2012-10-30 14:15:48 +01:00
Alessandro Ranellucci
25d88bddff Remove the change_layer method 2012-10-30 14:11:32 +01:00
Alessandro Ranellucci
52ed2c6ea4 Make flow_spacing required for ExtrusionLoop objects too 2012-10-30 14:07:50 +01:00
Alessandro Ranellucci
be7e211bb6 Make flow_spacing required for ExtrusionPath objects 2012-10-30 14:07:01 +01:00
Alessandro Ranellucci
37637c34f5 Refactor shortest_path 2012-10-30 13:59:33 +01:00
Alessandro Ranellucci
4c6fe0b3d4 Fixed regression preventing lift to work correctly 2012-10-30 10:45:55 +01:00
Alessandro Ranellucci
887634e1e2 Use G92 to apply Z offset. #486 2012-10-29 19:54:04 +01:00