Commit Graph

1131 Commits

Author SHA1 Message Date
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
Alessandro Ranellucci
709cbc1c15 Fixed regression causing support material generation to fail under threaded perls 2012-10-29 19:38:40 +01:00
Alessandro Ranellucci
df4dcf0534 Move by 30° instead of 45° when completing an external loop. #186 2012-10-29 11:21:41 +01:00
Alessandro Ranellucci
9b94a661d9 Fixed regression causing too much clipping at the endpoints of loops 2012-10-29 11:20:27 +01:00
Alessandro Ranellucci
e9ae62a9d1 New --min-skirt-length option. #269 2012-10-29 11:17:57 +01:00
Alessandro Ranellucci
c25e54a830 Expose perimeter/infill/support material extrusion widths in G-code comments 2012-10-29 00:31:25 +01:00
Alessandro Ranellucci
f2389682b6 Factor out some hard-coded settings 2012-10-29 00:23:33 +01:00
Alessandro Ranellucci
1ecadc10fb Fixed regression causing one perimeter to be generated even when perimeters where set to 0. #759 2012-10-28 19:27:54 +01:00
Alessandro Ranellucci
8da4151c6d Fix regression causing skirt to be printed at Z = 0 after a recent commit 2012-10-28 19:24:24 +01:00
Alessandro Ranellucci
c57e94c065 Experimental feature: make a little move inwards by 45° after finishing the external perimeter and before retracting. #186 2012-10-28 19:15:34 +01:00
Alessandro Ranellucci
ecd054a57c Don't emit T0 at the beginning of the file, so that it's generated automatically just right before starting the print 2012-10-28 17:29:01 +01:00
Alessandro Ranellucci
935173047a Allow [print_center_X] and [print_center_Y] syntax for all coordinates settings (including bed_center etc.) and [temperature_0], [temperature_1] etc. for all index-based settings 2012-10-28 17:23:35 +01:00
Alessandro Ranellucci
ccb49a8439 Do a slightly thinner interface layer at the top of support material structures by taking into account the diameter of bridge extrudates (nophead's idea) 2012-10-28 16:59:20 +01:00
Alessandro Ranellucci
b5bd216f5c Do not combine infill for bottom layer 2012-10-28 14:23:47 +01:00
Alessandro Ranellucci
f35cdef2aa Renamed ExtrusionPath->depth_layers to height 2012-10-28 14:22:51 +01:00
Alessandro Ranellucci
2796041a6c Bugfix: --top-solid-layers was ignored. #769 2012-10-28 12:52:53 +01:00
Alessandro Ranellucci
deea02b444 Descriptive textual feedback for cooling settings 2012-10-28 12:43:41 +01:00
Alessandro Ranellucci
f9b6caaecb Bugfix, last commit was incomplete 2012-10-28 12:22:30 +01:00
Alessandro Ranellucci
a0fe93e8cf Bugfix: sometimes first layer extrusion width was not applied 2012-10-28 10:28:40 +01:00
Alessandro Ranellucci
49916b6178 Revert 2bcac88683 by setting the scale factor manually to 1. #720 2012-10-27 22:09:22 +02:00
Alessandro Ranellucci
d0bee4bf41 Fixed regression in Split. #766 2012-10-27 21:39:57 +02:00
Alessandro Ranellucci
bc9ff848dd Removed unused 'propgrid' import group from Wx. #764 2012-10-27 21:21:18 +02:00
Alessandro Ranellucci
f9e20db156 Update t/dynamic.t 2012-10-27 21:20:32 +02:00
Alessandro Ranellucci
b0f24a2666 Bugfix: unnecessary tool changes were generated when using the same tool for subsequent parts 2012-10-25 18:49:59 +02:00
Alessandro Ranellucci
667d88603e Reorder some options using the more compact layout 2012-10-25 12:37:02 +02:00
Alessandro Ranellucci
cee3864fc9 Independently set number of top/bottom solid layers. #676 2012-10-25 12:21:04 +02:00
Alessandro Ranellucci
bbd7765f40 Refactored the options group building to allow for more flexible layouts 2012-10-25 11:24:56 +02:00
Alessandro Ranellucci
31c2e50fc6 Bugfix: bed temperature wasn't being set after the first layer when first layer bed temperature was set to zero. #760 2012-10-24 22:57:19 +02:00
Alessandro Ranellucci
50f6909475 Don't apply slowdown factor to bridges. #640 2012-10-24 22:55:03 +02:00
Alessandro Ranellucci
392af5542b Show object information when double-clicking it in the plater 2012-10-24 22:44:08 +02:00
Alessandro Ranellucci
304676b6aa Use XML::SAX::ExpatXS if available 2012-10-24 20:36:32 +02:00
Alessandro Ranellucci
3c8ac435ad Remember last used filament presets when using multiple extruders too 2012-10-24 20:24:11 +02:00
Alessandro Ranellucci
355031fe2f Remove unnecessary retractions 2012-10-24 19:38:18 +02:00
Alessandro Ranellucci
44016b38c5 Distribute skirt loops across all extruders 2012-10-24 19:13:40 +02:00
Alessandro Ranellucci
f0d2b0e5ea Avoid overlapping regions (thanks Mike Sheldrake!). #726 2012-10-24 16:46:40 +02:00
Alessandro Ranellucci
1c50c8a401 Merge branch 'dynamic-flow' 2012-10-24 16:19:13 +02:00
Alessandro Ranellucci
6beaf5e597 New faster algorithm for filling gaps, while we work on a new medial axis implementation 2012-10-24 16:17:09 +02:00
Alessandro Ranellucci
1445820673 External perimeter first on bottom layer when brim is enabled. #761 2012-10-24 12:04:44 +02:00
Alessandro Ranellucci
1627268fd4 Merge branch 'master' into avoid-crossing-perimeters
Conflicts:
	lib/Slic3r/GCode.pm
2012-10-24 11:49:31 +02:00
Alessandro Ranellucci
19e77a28a1 Merge branch 'master' into dynamic-flow 2012-10-24 10:55:57 +02:00
Alessandro Ranellucci
28b56ae840 Force unfocusing of all input fields when saving a preset, otherwise the currently focused one might be ignored. #750 #624 2012-10-22 16:03:08 +02:00
Alessandro Ranellucci
c793a2657f Replace Math::ConvexHull with Math::ConvexHull::MonotoneChain. #722 2012-10-22 15:29:54 +02:00
Alessandro Ranellucci
68c3a0dd61 Make arcs.t happy. #721 2012-10-22 14:08:27 +02:00
Alessandro Ranellucci
33b1970b95 Incomplete commit broke the plater on threaded perls 2012-10-22 14:02:58 +02:00
Alessandro Ranellucci
0990a9418c Bugfix: honeycomb infill was overlapping too much with perimeters. #732 2012-10-22 13:38:37 +02:00
Alessandro Ranellucci
3c7785aaf3 Useless extra perimeters were generated sometimes. #444 #732 2012-10-22 13:21:11 +02:00
Alessandro Ranellucci
76f75db055 Always specify tool number in M104/M109 when printing with multiple extruders 2012-10-21 21:44:06 +02:00
Alessandro Ranellucci
4f1b56f004 Fix regression causing the plater to merge all materials into a single one, thus not producing multi-extrusion prints 2012-10-21 20:56:19 +02:00
Alessandro Ranellucci
f5f9574173 Merge pull request #722 from mesheldrake/remove-dups-before-hull
use remove_coinciding_points before convex_hull
2012-10-15 02:49:30 -07:00
Alessandro Ranellucci
149d9e737b Merge pull request #721 from mesheldrake/parallel-degrees-limit
parallel_degrees_limit decreased, 3 to 0.1, #704
2012-10-15 02:48:16 -07:00
Alessandro Ranellucci
50161497f3 Merge pull request #720 from mesheldrake/increase-offset-scale
Increase scale factor for Clipper::offset
2012-10-15 02:47:16 -07:00
Alessandro Ranellucci
6b4f038d17 Update copies number when decreasing parts. #747 2012-10-15 10:59:54 +02:00
Alessandro Ranellucci
769134bb6f Fixed regression causing skirt ignoring the first layer extrusion width override. #728 2012-10-15 10:57:15 +02:00
Alessandro Ranellucci
8ac367bfa7 If brim overlaps with skirt, make brim around skirt too instead of just ignoring skirt on first layer 2012-10-14 22:10:49 +02:00
Alessandro Ranellucci
b92642459f Merge branch 'master' into dynamic-flow
Conflicts:
	lib/Slic3r/Flow.pm
	lib/Slic3r/Layer.pm
2012-10-04 15:23:19 +02:00
Alessandro Ranellucci
d1e0bcf113 Bugfix: tool numbers written in G-code were wrong 2012-10-01 18:22:35 +02:00
Alessandro Ranellucci
1a6eaeaa91 Bugfix: split wasn't working properly under threaded perls 2012-10-01 18:12:14 +02:00
Alessandro Ranellucci
2c400ee2b8 Removed useless warning 2012-10-01 16:49:02 +02:00
Alessandro Ranellucci
86e3508402 Add menu item pointing to documentation 2012-09-28 16:58:03 +02:00
Alessandro Ranellucci
22b312395a Fix SVG/DLP support material. #673 2012-09-28 16:32:53 +02:00
Alessandro Ranellucci
c68862582c Fix fatal error on empty layers caused by recent large refactorings 2012-09-28 15:48:32 +02:00
Alessandro Ranellucci
ab7697ec1c New option to force a solid layer every given number of layers. #617 2012-09-28 15:46:29 +02:00
Alessandro Ranellucci
f50b0040ef Bugfix: the grow() method wasn't working properly, causing bad brim/support material interface. #639 2012-09-28 15:27:33 +02:00
Alessandro Ranellucci
9ee9b54c73 Output an error if user tries to use 100% density with a non-solid fill pattern. #691 2012-09-28 14:13:06 +02:00
Alessandro Ranellucci
a49b045ce4 Do not call srand for each layer, to get better randomization of starting points. #694 2012-09-28 14:01:59 +02:00
Mike Sheldrake
4b91496edd use remove_coinciding_points before convex_hull
convex_hull returns polygons with sharp concaves sometimes when
duplicate points are present
2012-09-27 06:47:38 -07:00
Mike Sheldrake
5ee68aa916 $parallel_degrees_limit decreased, 3 to 0.1, #704
Geometry::lines_parallel() test used for collapsing adjacent colinear
lines was too loose in testing for colinearity, because of this constant
setting. Gradualy curving and high-res outer perimiters would
over-simplify into straight lines.
2012-09-27 06:14:54 -07:00
Mike Sheldrake
2bcac88683 Increase scale factor for Clipper::offset
A default scale of 1 was being calculated most of the time. That's too
low to avoid artifacts from offsetting concave curves. Setting scale to
a default of 100000 eliminates artifacts in the test cases in issues
#700, #702 and #703. There is a risk of large point proliferation with
this scale in combination with the JT_ROUND option, but in the four
places where that option is used, scale is already explicitly set to a
safer low value.
2012-09-27 05:50:54 -07:00
Alessandro Ranellucci
fd74577eae Fix typo in previous commit 2012-09-24 21:00:26 +02:00
Alessandro Ranellucci
d8c192ae05 Fix fatal error caused by recent refactorings 2012-09-23 18:07:44 +02:00
Alessandro Ranellucci
1f4706f02f [print_preset] and others were erroneously renamed to [print] etc. #675 2012-09-23 17:40:34 +02:00
Alessandro Ranellucci
77625894ff New command to combine multiple STL files into a single multi-material AMF file 2012-09-23 14:48:58 +02:00
Alessandro Ranellucci
bbe0a45b58 Optimization: cache scaled flow width and spacing 2012-09-23 03:03:08 +02:00
Alessandro Ranellucci
ec0d3987db Rename materials to regions 2012-09-23 02:52:31 +02:00
Alessandro Ranellucci
e696764af8 Assign extruders and flows to materials 2012-09-23 02:40:25 +02:00
Alessandro Ranellucci
e2ab340edb Fix positioning and other things 2012-09-22 21:03:57 +02:00
Alessandro Ranellucci
d488afd243 More work (breaks centering and internal surfaces detection) 2012-09-22 19:38:25 +02:00
Alessandro Ranellucci
02356fd613 Large refactoring to allow processing multimaterial files 2012-09-22 19:04:36 +02:00
Alessandro Ranellucci
04be94023b Refactoring: move the 'copies' property to each Print::Object 2012-09-22 16:19:24 +02:00
Alessandro Ranellucci
82ac4722d2 Refactoring, new size_3D function 2012-09-22 16:12:54 +02:00
Alessandro Ranellucci
b5672de3ca Refactoring, new bounding_box_3D function 2012-09-22 16:10:24 +02:00
Alessandro Ranellucci
91e9f651b5 Bugfix: --avoid-crossing-perimeters was crashing when processing empty layers 2012-09-22 15:51:18 +02:00
Alessandro Ranellucci
35e449e891 Make new plater compatible with threaded perls 2012-09-21 17:45:54 +02:00
Alessandro Ranellucci
037be34b7b Bugfix: removed fatal error when generating SVG support material in some circumstances. #673 2012-09-21 16:52:05 +02:00
Alessandro Ranellucci
c6c7dd12da Silently ignore threads > 1 on non-threaded perls 2012-09-21 16:43:46 +02:00
Alessandro Ranellucci
27b71d8885 Little regressions after recent merge 2012-09-21 16:08:22 +02:00
Alessandro Ranellucci
392309a369 Little cleanup 2012-09-21 15:58:44 +02:00
Alessandro Ranellucci
e21fdf0b15 Little cleanup 2012-09-21 15:47:38 +02:00
Alessandro Ranellucci
2f1ae3f112 Restore non-manifold warnings 2012-09-21 15:46:40 +02:00
Alessandro Ranellucci
c95cd5ac38 Merge branch 'master' into avoid-crossing-perimeters 2012-09-21 15:36:45 +02:00
Alessandro Ranellucci
46cbdcdc4e Merge branch 'master' into dynamic-flow 2012-09-21 15:36:33 +02:00
Alessandro Ranellucci
f638558167 Preserve position when splitting objects in plater 2012-09-21 15:35:32 +02:00
Alessandro Ranellucci
e40f32995f Finish GUI decoupling 2012-09-21 15:04:33 +02:00
Alessandro Ranellucci
8382eeef0a Revert "Patch for --gcode-arcs (kindly submitted by Paul Howes)"
This reverts commit f4260ae93d.
2012-09-21 15:04:19 +02:00
Alessandro Ranellucci
f659dcf088 Patch for --gcode-arcs (kindly submitted by Paul Howes) 2012-09-21 15:04:19 +02:00
Alessandro Ranellucci
757515ba17 New [print_preset], [filament_preset] and [printer_preset] variables. #675 2012-09-21 15:04:18 +02:00
Alessandro Ranellucci
4fbb8ffb9d Replace 'scale epsilon' with 'scaled_epsilon' 2012-09-21 15:04:18 +02:00
Alessandro Ranellucci
87912cb3b0 Bugfix: only_retract_when_crossing_perimeters was almost not working. #680 2012-09-21 15:04:18 +02:00
Alessandro Ranellucci
f314cedd8f Bugfix: extrusion width setting for support material was only affecting the path spacing but not the actual flow. #666 2012-09-21 15:04:17 +02:00
Alessandro Ranellucci
e89f64e9d3 More unfinished work 2012-09-21 15:04:17 +02:00
Alessandro Ranellucci
6adf98edaf Fix regression causing SVG/DLP support material to crash the application. #668 2012-09-21 15:04:16 +02:00
Alessandro Ranellucci
37ae2e1e2d Use support material extruder for brim. #653 2012-09-21 15:04:16 +02:00
Alessandro Ranellucci
3b38e392ad Consider single walls as external perimeters. #661 2012-09-21 15:04:15 +02:00
Alessandro Ranellucci
47c5d410ea Remove the initial retraction compensation. Not only it is not very good for multi-head setups, but it also caused wrong first layer Z when lift was enabled. #655 2012-09-21 15:04:15 +02:00
Alessandro Ranellucci
202bfa91c8 Adjust M-codes for temperature handling for Teacup. #539 2012-09-21 15:04:12 +02:00
Alessandro Ranellucci
94a096f1d2 Support legacy config files not containing first_layer_height #631 2012-09-21 15:04:11 +02:00
Alessandro Ranellucci
1cedb00f20 Merge branch 'master' into dynamic-flow
Conflicts:
	lib/Slic3r/ExPolygon.pm
2012-09-12 16:05:06 +02:00
Alessandro Ranellucci
cc8d8bd26f Merge branch 'master' into avoid-crossing-perimeters
Conflicts:
	README.markdown
	lib/Slic3r/Config.pm
	lib/Slic3r/GCode.pm
	lib/Slic3r/Print.pm
	slic3r.pl
2012-09-12 16:04:16 +02:00
Alessandro Ranellucci
2a51cad0c3 Revert "Patch for --gcode-arcs (kindly submitted by Paul Howes)"
This reverts commit f4260ae93d.
2012-09-12 15:58:01 +02:00
Alessandro Ranellucci
f4260ae93d Patch for --gcode-arcs (kindly submitted by Paul Howes) 2012-09-12 15:53:24 +02:00
Alessandro Ranellucci
7a5071f66c New [print_preset], [filament_preset] and [printer_preset] variables. #675 2012-09-12 15:29:44 +02:00
Alessandro Ranellucci
e0d5f4e528 Replace 'scale epsilon' with 'scaled_epsilon' 2012-09-12 15:22:43 +02:00
Alessandro Ranellucci
9934f8957f Bugfix: only_retract_when_crossing_perimeters was almost not working. #680 2012-09-12 15:20:37 +02:00
Alessandro Ranellucci
bb5f00cf0c Bugfix: extrusion width setting for support material was only affecting the path spacing but not the actual flow. #666 2012-09-12 12:13:43 +02:00
Alessandro Ranellucci
628cc52338 Fix regression causing SVG/DLP support material to crash the application. #668 2012-09-06 11:28:24 +02:00
Alessandro Ranellucci
f41a6af343 Use support material extruder for brim. #653 2012-09-06 11:01:44 +02:00
Alessandro Ranellucci
1053947c19 Consider single walls as external perimeters. #661 2012-09-06 10:56:42 +02:00
Alessandro Ranellucci
e0a96c00b3 Remove the initial retraction compensation. Not only it is not very good for multi-head setups, but it also caused wrong first layer Z when lift was enabled. #655 2012-09-06 10:44:48 +02:00
Alessandro Ranellucci
5017f17171 Adjust M-codes for temperature handling for Teacup. #539 2012-08-30 23:13:28 +02:00
Alessandro Ranellucci
b37af86bef Support legacy config files not containing first_layer_height #631 2012-08-30 23:04:56 +02:00
Alessandro Ranellucci
191de5d078 Unfinished work for decoupling GUI from the Print object (goal = more speed for manipulation, less memory usage) 2012-08-29 19:37:27 +02:00
Alessandro Ranellucci
f29d455319 Refactor the AMF parser so that it popolates a Model object directly. Also read constellations 2012-08-29 18:23:34 +02:00
Alessandro Ranellucci
23f6842bd4 Export plates as AMF constellations 2012-08-29 17:12:32 +02:00
Alessandro Ranellucci
f90520ed06 Refactoring: new Slic3r::Model class to represent files 2012-08-29 17:12:32 +02:00
Alessandro Ranellucci
9bd1b0f6ba Revert "Refactoring: initialize all layers at once and avoid duplication of slicing height math". #637
This reverts commit 08270022dd.
2012-08-26 17:47:00 +02:00
Alessandro Ranellucci
08270022dd Refactoring: initialize all layers at once and avoid duplication of slicing height math 2012-08-25 20:40:44 +02:00
Alessandro Ranellucci
a1a4d97f9f Remove useless subroutines 2012-08-25 20:14:52 +02:00
Alessandro Ranellucci
a1ac866b84 Refactoring: turn x_length and y_length in size 2012-08-25 20:14:01 +02:00
Alessandro Ranellucci
896641cb7e Fixed regression causing some bridges not to be detected correctly. #629 2012-08-25 20:04:29 +02:00
Alessandro Ranellucci
fe6c8fabdb Make Josef Prusa and Petr Ledvinka happy while we figure out how to handle localized Windows file paths 2012-08-25 19:06:14 +02:00
Alessandro Ranellucci
873ea93832 Fix missing module inclusion preventing the recently introduced option from working 2012-08-25 17:18:12 +02:00
Alessandro Ranellucci
0c22250740 New option to disable retraction when moving between infill paths inside the same island. #29 2012-08-25 16:30:11 +02:00
Alessandro Ranellucci
af1b64a086 Added unit testing to prevent regression about disconnected infill paths 2012-08-25 14:59:34 +02:00
Alessandro Ranellucci
d061534b83 Merge branch 'master' into avoid-crossing-perimeters
Conflicts:
	README.markdown
	lib/Slic3r/ExPolygon.pm
	slic3r.pl
2012-08-25 14:26:32 +02:00
Alessandro Ranellucci
0aa224ffad Dynamic extrusion width for better gap filling 2012-08-25 14:23:46 +02:00
Alessandro Ranellucci
65b11fa850 Minor refactoring for better readability of perimeter generation logic 2012-08-24 21:58:51 +02:00
Alessandro Ranellucci
92518d28fc New option to configure the threshold for enforcing solid infill. #224 2012-08-24 19:38:36 +02:00
Alessandro Ranellucci
ba58e0733f Avoid backwards moves when doing honeycomb infill. #492 2012-08-24 19:19:45 +02:00
Alessandro Ranellucci
5281b101f9 Some infill paths were still disconnected, causing unnecessary retractions 2012-08-24 18:59:23 +02:00