Commit Graph

3728 Commits

Author SHA1 Message Date
Alessandro Ranellucci
c7b650b001 Require Math::Clipper 1.03 for thread-safety 2012-01-28 16:47:03 +01:00
Alessandro Ranellucci
8b777e9d70 Multithreaded infill. #154 2012-01-28 16:27:52 +01:00
Alessandro Ranellucci
669341cd11 New utility script to split STL plates into individual STL files 2012-01-28 15:05:42 +01:00
Alessandro Ranellucci
2151457d9e Bugfix: small perimeter speed was applied to all holes too, regardless of their size. #175 2012-01-27 14:43:12 +01:00
Alessandro Ranellucci
4ade11b26e Some minor fixes related to polyline refactoring 2012-01-27 14:29:06 +01:00
Alessandro Ranellucci
5bc3f2cfa5 Allow portability of config files between Unix and Windows 2012-01-22 20:10:23 +01:00
Alessandro Ranellucci
debdd164e2 Bugfix: fatal error and warnings removed when cleaning some dirty layers 2012-01-21 18:44:24 +01:00
Alessandro Ranellucci
00c6287488 Bugfix: fill escapes perimeters. #139 2012-01-21 17:11:14 +01:00
Alessandro Ranellucci
a4194554c9 Write single wall width (extrusion width) to the G-code file 2012-01-21 17:02:55 +01:00
Alessandro Ranellucci
331ede52b8 Do all shells for a hole before moving onto the next one. #88 2012-01-21 16:35:33 +01:00
Alessandro Ranellucci
63972a3a35 Some more overlap 2012-01-21 16:35:23 +01:00
Alessandro Ranellucci
7636b67871 Fix comments in Perimeter.pm 2012-01-21 12:00:12 +01:00
Alessandro Ranellucci
f1b1454b36 Loops were not closing well 2012-01-21 11:51:31 +01:00
Alessandro Ranellucci
0e23f20df1 Poor overlap between perimeters and infill 2012-01-21 11:48:03 +01:00
Alessandro Ranellucci
a0ebee2ca3 Warn if no layers were detected 2012-01-21 11:34:03 +01:00
Alessandro Ranellucci
c5b6787a19 Print the number of bogus holes to debug output 2012-01-21 11:24:26 +01:00
Alessandro Ranellucci
92cdaf2f2d Retract at end of print 2012-01-20 14:48:51 +01:00
Alessandro Ranellucci
d1ad02cc71 Removed one more fatal error caused by recent refactoring 2012-01-18 19:28:49 +01:00
Alessandro Ranellucci
bba91fc0a5 Some better debug messages and a note about self-intersecting polygons. #160 2012-01-18 18:59:34 +01:00
Alessandro Ranellucci
478775ef1c Add checkbox to GUI to enable G-code comments 2012-01-18 10:46:39 +01:00
Alessandro Ranellucci
f419cf37d1 Use solid print speed for internal solid layers too. #167 2012-01-18 10:07:42 +01:00
Alessandro Ranellucci
59cd027a68 Temporarily disable small gap filling as it requires a fix not to slow down everything 2012-01-13 18:24:08 +01:00
Alessandro Ranellucci
90d10b24a8 Fill gaps using medial axis detection 2012-01-12 22:05:35 +01:00
Alessandro Ranellucci
a3a9cf5749 Yet other things not changed when refactored. #163 2012-01-12 10:48:18 +01:00
Alessandro Ranellucci
b605381132 Bugfix: more errors in infills after refactoring. #162 2012-01-11 23:19:56 +01:00
Alessandro Ranellucci
8735ac3c57 Bridges now have higher priority than other solid surfaces. #140 2012-01-11 23:16:09 +01:00
Alessandro Ranellucci
5fefcc0dc4 More fixes after refactoring 2012-01-11 23:14:59 +01:00
Alessandro Ranellucci
468f09d3c1 Bugfix: small surfaces where still infilled even with fill_density = 0 2012-01-11 22:38:06 +01:00
Alessandro Ranellucci
0184b0f205 Fixed many little things that were not updated along with recent large refactoring. #157 #144 2012-01-11 20:13:26 +01:00
Alessandro Ranellucci
8ed91a8ec4 Very large refactoring. Ditched Slic3r::Polyline::Closed and reorganized geometric classes. 2011-12-30 19:59:51 +01:00
Alessandro Ranellucci
2def6a9787 Bugfix: medial axis code threw fatal errors sometimes 2011-12-30 18:58:27 +01:00
Alessandro Ranellucci
4b2bd7f779 Bugfix: wrong month number in output 2011-12-30 18:57:58 +01:00
Alessandro Ranellucci
f08ebe97b2 Bugfix: fatal error for some models and thin walls not considered for skirt 2011-12-30 18:51:48 +01:00
Alessandro Ranellucci
1c7564e4a4 Thin walls. #24 2011-12-30 17:17:37 +01:00
Alessandro Ranellucci
62ee79f0c9 Remember last config file path when loaded from CLI too 2011-12-26 19:45:01 +01:00
Alessandro Ranellucci
d6dcb35237 Remember the filename and path of the last config file loaded, to use as default for saving 2011-12-26 19:06:57 +01:00
Alessandro Ranellucci
f9446b9c6e Cleanup the --output-filename-format implementation. #53 #137 2011-12-26 17:25:13 +01:00
Clarence Risher
1071b556cb second draft implementation of output_filename_format 2011-12-26 04:20:45 -05:00
Alessandro Ranellucci
342823fdf3 Bugfix: fatal error in arc detection code. #133 2011-12-25 13:01:48 +01:00
Alessandro Ranellucci
a86bc260e7 Bugfix: some islands having ho holes and contained in holes themselves were ignored 2011-12-24 11:01:28 +01:00
Alessandro Ranellucci
ab0300bb70 Bugfix for recent solid infill adjustment math, to take float math into account 2011-12-22 18:55:18 +01:00
Alessandro Ranellucci
75cbe879b7 New "Slice and save as..." command to specify output filename. #53 2011-12-22 17:38:37 +01:00
Alessandro Ranellucci
1cc28844a5 Merge pull request #131 from sparr/master
this fixes a bug with arc lengths as discussed on IRC, including two unit tests
2011-12-22 03:16:16 -08:00
Clarence Risher
a81e8c4afc correct length calculation for clockwise arcs 2011-12-22 06:10:54 -05:00
Alessandro Ranellucci
55045e0437 Limit skirt height to the print height. #128 2011-12-22 11:57:26 +01:00
Alessandro Ranellucci
98a8c64ed7 Extended (and fixed) unit testing to track down (and fix) an issue caused by floating point math that reversed some holes into contours when they should actually be ignored 2011-12-22 11:24:46 +01:00
Alessandro Ranellucci
fbea5dae8f Bugfix: consider holes when searching for supporting surfaces 2011-12-20 22:37:59 +01:00
Alessandro Ranellucci
caf41f07dd Output required filament length and volume to command line and to the gcode file itself 2011-12-20 15:29:15 +01:00
Alessandro Ranellucci
627e1b32e2 Add Slic3r version to gcode comment 2011-12-20 14:20:39 +01:00
Alessandro Ranellucci
5e850557d4 Added note to self about using the skeletonization algorithm to fill small gaps 2011-12-19 13:00:42 +01:00
Alessandro Ranellucci
e2a5c2119f Bugfix: some holes were skipped 2011-12-19 12:09:14 +01:00
Alessandro Ranellucci
4af295bce3 Bugfix: very wrong infill for low density regions. #127 2011-12-19 09:55:03 +01:00
Alessandro Ranellucci
65a018f156 Move the parsing warning to the end, so that it won't block slicing 2011-12-18 13:43:31 +01:00
Alessandro Ranellucci
f20209ce01 Add spacing between adjacent surfaces to avoid mini blobs 2011-12-18 13:38:45 +01:00
Alessandro Ranellucci
e5619ee543 Bugfix: not all paths were closed correctly due to float rounding 2011-12-18 11:53:15 +01:00
Alessandro Ranellucci
47bbe18de2 Additional check to return a friendly error when binary STL is not valid 2011-12-18 10:50:55 +01:00
Alessandro Ranellucci
eca6d0b6d0 Adjust flow for solid surfaces when using concentric infill too. #120 2011-12-17 20:29:06 +01:00
Alessandro Ranellucci
6a3eeef83b Removed warnings for concentric infill. #121 2011-12-17 19:59:31 +01:00
Alessandro Ranellucci
f73febff7a Always start concentric infill from the center. #120 2011-12-17 19:56:56 +01:00
Alessandro Ranellucci
d63eabcfa5 Clip less from loops to avoid gaps 2011-12-17 19:54:35 +01:00
Alessandro Ranellucci
1e6ecd9eab Corrections to math. Threads are not always rectangles with semicircles. Better calculation of overlap. 2011-12-17 19:52:34 +01:00
Alessandro Ranellucci
cd0fd80a69 Restore better perimeter/infill overlap for solid surfaces 2011-12-16 18:37:43 +01:00
Alessandro Ranellucci
8e04d763f4 Don't increase flow for overlapping purposes when bridging 2011-12-16 10:53:22 +01:00
Alessandro Ranellucci
f5eb4f03e1 Skirt can be disabled by either setting skirts to 0 or skirt-height to 0 2011-12-16 09:55:13 +01:00
Alessandro Ranellucci
172253cfd7 Always use rectilinear infill for internal-solid surfaces 2011-12-15 22:05:15 +01:00
Alessandro Ranellucci
8e06a4f6f2 Bugfix: fatal error when using concentric infill 2011-12-15 21:46:29 +01:00
Alessandro Ranellucci
b422537cc4 Bugfix: do not die when no layers are detected at all 2011-12-15 20:36:46 +01:00
Alessandro Ranellucci
18cfc15ead Restored a little overlap between perimeters and infill (we're only explicitely overlapping in the direction of infill lines, because side overlap is handled by the flow logic in Extruder.pm) 2011-12-15 20:21:34 +01:00
Alessandro Ranellucci
2e013e72e8 Bugfix: models located very far from XYZ origin were incorrectly placed on the print area 2011-12-15 19:40:32 +01:00
Alessandro Ranellucci
40d06a6e11 Erorr in last commit about automatic extrusion width. #112 2011-12-15 12:50:02 +01:00
Alessandro Ranellucci
156a1deb0a Limit automatic extrusion width to be <= 1.2 * nozzle_diameter (Triffid's way). #112 2011-12-15 09:33:42 +01:00
Alessandro Ranellucci
d346bc02cc Comments are now disabled by default, new --gcode-comments option to enable them 2011-12-14 19:49:21 +01:00
Alessandro Ranellucci
3d213069a6 Bugfix: 100% overlap between perimeter and infill. #118 2011-12-14 19:40:18 +01:00
Alessandro Ranellucci
b9d01a32e5 Merge branch 'new-math' 2011-12-14 16:12:05 +01:00
Alessandro Ranellucci
048f7ca468 Adjusted flow width for solid infills was ignored 2011-12-14 11:35:19 +01:00
Alessandro Ranellucci
4bee1a12b8 Take overlap into account for external dimensions 2011-12-14 11:21:43 +01:00
Alessandro Ranellucci
ca5dfc05e7 Accept STL files with spaces at the end of vertex lines. #119 2011-12-14 10:29:08 +01:00
Alessandro Ranellucci
569e737ae1 Only connect infill edges when not doing solid surfaces 2011-12-13 17:36:03 +01:00
Alessandro Ranellucci
56691c1dea Model extrusion threads as rectangles with semicircles at the end. Remove overlap_ratio setting. #109 #112 2011-12-13 17:34:31 +01:00
Alessandro Ranellucci
869cb48c1a Merge branch 'master' of github.com:alexrj/Slic3r 2011-12-12 17:35:18 +01:00
Alessandro Ranellucci
3c2b2cfef2 Bugfix: duplicate options did not work correctly for copies > 2. #113 2011-12-12 17:32:45 +01:00
Richard Goodwin
557afcc4b1 Added scale to settings output 2011-12-11 15:32:47 -06:00
Alessandro Ranellucci
0ebd8eb8a9 Don't die when config has unknown options. #108 2011-12-10 10:39:07 +01:00
Alessandro Ranellucci
c957c27367 Remember last opened directory. #106 2011-12-09 14:07:50 +01:00
Alessandro Ranellucci
b92ba67272 Workaround for a WxWidgets bug that clips the overlap_ratio label on Mac 2011-12-08 22:06:53 +01:00
Alessandro Ranellucci
0a74e068a3 Merge branch 'infill-overlap' 2011-12-08 10:53:24 +01:00
Alessandro Ranellucci
d9a70ea80d Customizable overlap ratio (it defaults to 0.15 now) 2011-12-08 10:53:07 +01:00
Alessandro Ranellucci
d813aea59a Don't slow down retractions on bottom layer. #101 2011-12-08 10:28:23 +01:00
Alessandro Ranellucci
1f64a01ed4 Remove empty layers from bottom. They could be caused by little contact with the print bed, resulting in the need of thin walls. While thin walls will be supported one day, it's still not optimal to have so little contact on bottom layer(s), so we remove such layers. #96 2011-12-08 10:25:19 +01:00
Alessandro Ranellucci
99c1facec6 Bugfix: division by zero when nothing in a single layer could be parsed. #100 2011-12-07 20:18:12 +01:00
Alessandro Ranellucci
525855dc7d Bugfix: fatal error when combining infills. #96 2011-12-07 20:15:08 +01:00
Richard Goodwin
3ced3ee91f Fixed bolding and font issues on Windows 2011-12-06 15:36:42 -06:00
Alessandro Ranellucci
313f77ee59 Bugfix: removed error when filling small regions 2011-12-05 19:54:19 +01:00
Alessandro Ranellucci
2ba513bdb2 Bugfix: after recent changes, objects had slight dimension errors. #56 2011-12-05 18:48:48 +01:00
Alessandro Ranellucci
3d0cde2fce Fixed regression. The repair algorithm was not working after recent changes. Releasing 0.5.5b. #16 #28 2011-12-05 13:01:02 +01:00
Alessandro Ranellucci
b8a5d5a208 Bugfix: fatal error on many models. Releasing 0.5.5a. #92 #93 2011-12-05 12:15:52 +01:00
Alessandro Ranellucci
53bc9c7421 Customizable speed for small perimeters. #60 2011-12-04 20:50:03 +01:00
Alessandro Ranellucci
ea254588f7 More tolerance for config files 2011-12-04 20:41:17 +01:00
Alessandro Ranellucci
28a89c70c9 New bridge flow rate multiplier option. #85 2011-12-04 20:29:21 +01:00
Alessandro Ranellucci
3ac9dd513b Add first layer height ratio option to the GUI 2011-12-04 19:17:42 +01:00
Alessandro Ranellucci
b79ae44e3d Recent changes made Slic3r less tolerant with dirty STL files. Now we are able again to slice Prusa parts. #16 2011-12-04 19:10:43 +01:00
Alessandro Ranellucci
eb64cc4965 More fixes for bridges. #58 2011-12-04 18:37:37 +01:00
Alessandro Ranellucci
d056535bd8 Further corrections to the bridge angle detection algorithm. #58 2011-12-04 17:19:03 +01:00
Alessandro Ranellucci
0aff5fab24 Connect infill segments and adjust spacing and flow rate to fill the area completely without leaving gaps. #89 2011-12-04 16:24:46 +01:00
Alessandro Ranellucci
4fe340cc56 Many fixes to the bridge direction detection algorithm and other things. #58 2011-12-03 18:31:31 +01:00
Alessandro Ranellucci
792960aae1 Slic3r should now be able to detect optimal bridging direction for any kind of bridge. #58 2011-12-02 23:35:39 +01:00
Alessandro Ranellucci
5375f5fef4 Mark important settings in bold 2011-12-02 17:02:36 +01:00
Alessandro Ranellucci
52c9897eda New --extrusion-axis option; removed --no-extrusion 2011-12-01 22:34:21 +01:00
Alessandro Ranellucci
830965fc0b Note used settings in exported gcode. #52 2011-12-01 22:20:48 +01:00
Alessandro Ranellucci
aab85a4e27 Bugfix: unable to read back config file if start or end gcode was empty. #84 2011-12-01 22:06:07 +01:00
Alessandro Ranellucci
e99c9f9e5f Options on command line now override config. Also, "feed rate" was renamed to "speed" everywhere. #77 2011-12-01 22:04:23 +01:00
Alessandro Ranellucci
2a02d26ca5 Fixed regression: fill density = 0 was preventing extra solid layers. #75 2011-12-01 21:15:02 +01:00
Alessandro Ranellucci
f7a9c9be63 Bugfix: sometimes holes were detected as contours 2011-12-01 20:57:38 +01:00
Alessandro Ranellucci
133f3a0495 Bugfix: Clipper error occurred under certain circumstances 2011-12-01 19:40:45 +01:00
Alessandro Ranellucci
b03afc7f1c Bugfix: some bridges were not detected correctly. #57 2011-11-30 20:32:28 +01:00
Alessandro Ranellucci
52270d6b95 Bugfix: extrusion width ratio gave wrong flow rate under certain circumstances. #80 2011-11-30 18:18:17 +01:00
Alessandro Ranellucci
71c359bb29 Cleaning recent changes 2011-11-30 17:48:00 +01:00
Alessandro Ranellucci
42383dec84 Warn about models with overlapping or intersecting facets but try to repair wrong layers. #16 2011-11-30 16:28:09 +01:00
Alessandro Ranellucci
d51a37a0ae Refactoring: moved slicing code to new TriangleMesh class, leaving in STL just what's needed to read that particular input format. Slic3r will now warn if model is not manifold. #16 2011-11-30 16:07:31 +01:00
Michael Moon
729905d342 allow solid fill layers to be zero 2011-11-30 12:51:34 +11:00
Alessandro Ranellucci
2970e31540 Bugfix: some bridges being very close could lead to overlapping infill 2011-11-29 11:36:52 +01:00
Alessandro Ranellucci
d168ecbb4e Bugfix: fill density = 0 was preventing generation of extra solid layers. #75 2011-11-29 10:15:50 +01:00
Alessandro Ranellucci
248ed8589a Bugfix: error when concentric infill. #73 2011-11-28 22:52:35 +01:00
Alessandro Ranellucci
92e86a2259 Bugfix: plate was lifted even when retracting for Z change 2011-11-28 19:59:39 +01:00
Alessandro Ranellucci
3ad9ed74ae New --solid-infill-feed-rate option. #68 2011-11-28 19:11:26 +01:00
Alessandro Ranellucci
975387d953 New --bridge-feed-rate option. #68 2011-11-28 18:37:53 +01:00
Alessandro Ranellucci
4cdd0f6fd0 Bugfix: sparse and wrong infill was generated for objects with null fill density. Also fixed a division by zero. 2011-11-27 10:12:44 +01:00
Alessandro Ranellucci
22551b64de Bugfix: a recent change broke all options having a zero value 2011-11-26 22:43:12 +01:00
Alessandro Ranellucci
7a5af293a8 Mark slow infill patterns as slow. #20 2011-11-26 22:41:23 +01:00
Alessandro Ranellucci
8ce2c23e52 Bugfix: hard errors when extrusion width was left empty. 2011-11-26 20:51:04 +01:00
Alessandro Ranellucci
8e7d00bb34 Avoid unnecessary retractions during infill. #29 2011-11-26 17:01:00 +01:00
Alessandro Ranellucci
72d7e1a5de Don't update progress bar with wxWidgets 2.9.0 and 2.9.1 2011-11-26 16:52:10 +01:00
Alessandro Ranellucci
bed502af3c Make the progress bar determinate and output status description. #31 2011-11-26 16:19:30 +01:00
Alessandro Ranellucci
951778439a Bugfix: recent changes broke the "infill every layers" option which didn't alternate infill direction correctly. #70 2011-11-26 15:21:15 +01:00
Alessandro Ranellucci
afd8e0a1bd Bugfix: setting temperature to zero didn't remove it from output 2011-11-26 15:11:11 +01:00
Alessandro Ranellucci
0ab1fd4c19 concentric - new superfast infill pattern 2011-11-26 10:38:45 +01:00
Alessandro Ranellucci
f3b689d4e0 Bugfix: infill every 'n' layers was broken after recent changes 2011-11-25 18:16:31 +01:00
Alessandro Ranellucci
25c85aada5 Renamed "filament packing density" to "extrusion multiplier". Same values. #4 2011-11-25 11:15:20 +01:00
Alessandro Ranellucci
3c0ea0b57f New --extrusion-width-ratio option. #8 2011-11-25 11:10:35 +01:00
Alessandro Ranellucci
47d347e1b2 Revert "Disable retraction when moving over infill space. #29"
This reverts commit d6ed9c6f34.
2011-11-24 12:53:09 +01:00
Alessandro Ranellucci
8598b66b0a Large refactoring. Cleaner logic, smaller memory footprint. 2011-11-23 12:29:27 +01:00
Alessandro Ranellucci
13ef24b5eb Fixes, improvements and refactoring for bridges and solid surfaces. 2011-11-23 09:49:39 +01:00
Alessandro Ranellucci
d13a0e2503 Bugfix: no top surfaces when they were too close to bridges 2011-11-22 21:45:05 +01:00
Alessandro Ranellucci
048410ac52 Bugfix: some infill lines extruded outside objects when using 45° infill angle. #65 2011-11-22 20:35:05 +01:00
Alessandro Ranellucci
84d9f5fd9d Bugfix: some regions near bridges were left blank. #58 2011-11-21 21:05:00 +01:00
Alessandro Ranellucci
36e1ea0caa Make sure bridges don't overlap. #58 2011-11-21 16:35:10 +01:00
Alessandro Ranellucci
74786185e4 Don't die on non-manifold models, after having tried the slower detection algorithm too. #16 2011-11-21 16:09:13 +01:00
Alessandro Ranellucci
00beb7e118 Merge branch 'new-bridges' 2011-11-21 12:49:41 +01:00
Alessandro Ranellucci
d6ed9c6f34 Disable retraction when moving over infill space. #29 2011-11-21 12:37:12 +01:00
Alessandro Ranellucci
bde3c11e82 Fixes to the new bridging algorithm. It appears to be working fine now 2011-11-20 22:09:59 +01:00
Alessandro Ranellucci
ed9b4e829c Add a M109 for temperature control 2011-11-19 17:37:04 +01:00
Alessandro Ranellucci
6e02c8f117 Renamed perimeter_offsets to perimeters 2011-11-19 17:36:44 +01:00
Alessandro Ranellucci
4a9fc942cb Add a M109 for temperature control 2011-11-19 17:32:37 +01:00
Alessandro Ranellucci
4540f2377d Some minor fixes for the new bridging logic #58 2011-11-19 17:31:00 +01:00
Alessandro Ranellucci
a1c766cc52 New bridging logic, more robust. #58 2011-11-19 16:44:24 +01:00
Alessandro Ranellucci
1ef4d006a0 Treating "reverse bridges" as bridges should not change the way they're infilled or the chosen flow width 2011-11-18 09:54:28 +01:00
Alessandro Ranellucci
1a066caecc Compute bridge overlap as twice the total thickness of perimeters 2011-11-17 10:41:20 +01:00
Alessandro Ranellucci
c8ce989962 Renamed perimeter_offsets to perimeters 2011-11-17 10:38:23 +01:00
Alessandro Ranellucci
580f42c1de Use the same bridging logic for "reverse bridges" (top surfaces) 2011-11-17 10:34:40 +01:00
Alessandro Ranellucci
8aca717209 Print solid infill without cutting an internal surface under small regions such as pillars. #39 2011-11-16 16:35:20 +01:00
Alessandro Ranellucci
47c0da8110 Bugfix: some solid layers were skipped. #47 2011-11-16 14:53:30 +01:00
Alessandro Ranellucci
9ab81880c9 Throw a fatal exception if no layers are detected 2011-11-16 10:26:47 +01:00
Alessandro Ranellucci
55f00fdb35 Little refactoring, removing useless methods 2011-11-16 10:16:01 +01:00
Alessandro Ranellucci
2abd8fe240 Bugfix: bottom layer speed settings were ignored. 2011-11-15 12:02:31 +01:00
Alessandro Ranellucci
e65349469b Disable M104 if temperature is 0 2011-11-15 12:00:09 +01:00
Alessandro Ranellucci
9e42158582 Remove G92 E0 if --no-extrusion was supplied 2011-11-14 18:14:12 +01:00
Alessandro Ranellucci
e51310e1b0 Moved print settings to first tab 2011-11-14 17:21:44 +01:00
Alessandro Ranellucci
612b2e6ded Slic3r::Fill::PlanePath was not explicitely included, puzzling the packager 2011-11-14 15:23:17 +01:00
Alessandro Ranellucci
c2a2d9ae6d Combine Z changes and retractions using G0. #51 2011-11-14 12:45:20 +01:00
Alessandro Ranellucci
db35faeabb New experimental --g0 option for fast retractions. #51 2011-11-14 12:15:32 +01:00
Alessandro Ranellucci
12b06b0ab0 Speed boost for new infill patterns. #20 2011-11-14 10:54:04 +01:00
Alessandro Ranellucci
86f3e4fcd2 Implemented a new "line" fill pattern. #20 2011-11-14 10:31:07 +01:00
Alessandro Ranellucci
d47a7bebbc Display current version in GUI 2011-11-13 22:57:58 +01:00
Alessandro Ranellucci
60f6ce363e GUI text boxes for start/end GCODE. #12 2011-11-13 22:48:21 +01:00
Alessandro Ranellucci
b2f0f85d96 Reorganized GUI with tabs 2011-11-13 22:22:34 +01:00
Alessandro Ranellucci
8f32ee8f5a Bugfix: recent changes broke the "Infill every N layers" feature 2011-11-13 21:46:32 +01:00
Alessandro Ranellucci
ba1b59f54c New --close-after-slicing option to allow for easy integration with Pronterface 2011-11-13 20:45:15 +01:00
Alessandro Ranellucci
a10d13120c Better toolpaths for infills with different density 2011-11-13 20:22:44 +01:00
Alessandro Ranellucci
fe9ed84f64 Infill is now overlapped with perimeters by 15%. #19 2011-11-13 19:25:15 +01:00
Alessandro Ranellucci
75a71a23a5 New --first-layer-height-ratio option. #36 2011-11-13 19:08:19 +01:00
Alessandro Ranellucci
097b8d9acb New --skirt-height option. #11 2011-11-13 18:41:12 +01:00
Alessandro Ranellucci
b123194522 New --no-extrusion option to disable E values 2011-11-13 18:26:31 +01:00
Alessandro Ranellucci
76dfda3b09 Comment for M104 was erroneously saying that it would wait for temperature. #49 2011-11-13 18:22:33 +01:00
Alessandro Ranellucci
a2b4f9f671 Use nozzle diameter as flow width when bridging 2011-11-13 18:21:25 +01:00
Alessandro Ranellucci
038caddcda New fill types (hilbertcurve, archimedeanchords, octagramspiral) and ability to use different patterns for solid layers. #20 2011-11-13 18:14:02 +01:00
Alessandro Ranellucci
041e9877a3 Bugfix: parsing fatal error on Windows. #38 2011-11-12 11:57:22 +01:00
Alessandro Ranellucci
a13e4c6fb5 Detect membranes (solid parts generating both a bottom and a top surface on the same layers) and don't infill twice. #28 2011-11-12 11:05:32 +01:00
Alessandro Ranellucci
c5d5e4d244 Cleanup lines resulting from plane intersection before detecting polygons. This allows for more tolerance with dirty models. Performance impact depends on how many layers are detected as dirty. #16 #28 2011-11-12 10:18:20 +01:00
Alessandro Ranellucci
fec816b065 Collect undetected lines (caused by dirty or non-manifold models), warn the user, post debug info. Includes some further ExPolygon refactoring. 2011-11-11 10:21:48 +01:00
Alessandro Ranellucci
91e250a2fd Infill solid layers even when --fill-density is set to zero. #37 2011-11-09 09:21:09 +01:00
Alessandro Ranellucci
80adbb7044 Support for legacy multiply options in config files. #7 2011-11-07 17:16:34 +01:00
Alessandro Ranellucci
0b42139e54 Print first layer at Z = 1 * layer_height instead of zero like it was until now. #17 2011-11-07 16:04:27 +01:00
Alessandro Ranellucci
b4e268efad New --retract-lift option to lift Z while doing travel moves. #25 2011-11-07 15:58:47 +01:00
Alessandro Ranellucci
71a44e253c Renamed "multiply" to "duplicate". #7 2011-11-07 15:49:07 +01:00
Alessandro Ranellucci
279bfbb10d Organize perimeters with a nearest point search to avoid unnecessary travel moves. #21 2011-11-07 15:40:09 +01:00
Alessandro Ranellucci
e860254780 Do all perimeters for each island/object at once without moving between multiple objects. #34 2011-11-07 14:25:36 +01:00
Alessandro Ranellucci
d620b46beb Bugfix: arcs now work (some glitches in detecting their center, though). #30 2011-11-07 14:12:07 +01:00
Alessandro Ranellucci
8172bcb772 Bugfix: G2/G3 I and J coordinates were wrong. #30 2011-11-06 20:24:42 +01:00
Alessandro Ranellucci
b5ca83abf8 Enforce the requirement for recent versions of Wx and Math::ConvexHull. #27 2011-11-05 18:19:35 +01:00
Alessandro Ranellucci
6d6533831e New experimental --gcode-arcs options to generate G2/G3 commands. #23 2011-10-28 14:13:44 +02:00
Alessandro Ranellucci
7f341cfcd3 New --fill-every-layers option to get high accuracy on external surfaces while speeding up infill 2011-10-18 15:57:53 +02:00
Alessandro Ranellucci
54cc6216a1 Bugfix: extrusion distance wasn't reset at print start, causing a possible huge retraction. 2011-10-17 21:38:41 +02:00
Alessandro Ranellucci
5090ae561c Refactored Perimeter code with new Slic3r::Polygon and Slic3r::ExPolygon objects
Large refactoring. Speed gains. Removed convex hull for bridges.
2011-10-15 21:14:13 +02:00
Alessandro Ranellucci
2d784fac9b New --start-gcode and --end-gcode options. #12 2011-10-14 16:24:55 +02:00
Alessandro Ranellucci
f7335b6d1e Bugfix: latest retraction changes broke retraction 2011-10-14 12:14:20 +02:00
Alessandro Ranellucci
56619871b2 Bugfix: some bridges had wrong perimeters inside 2011-10-13 22:22:45 +02:00
Alessandro Ranellucci
c97a89c07c Refactored Line objects to arrayrefs 2011-10-12 16:27:40 +02:00
Alessandro Ranellucci
e410410dc7 Refactoring. Point objects are now plain arrayrefs. Slicing is 30% faster. 2011-10-12 14:54:49 +02:00
Alessandro Ranellucci
774717c8bb Implement our own STL relaxed parser to be tolerant with malformed STL files and remove a dependency 2011-10-12 10:47:26 +02:00
Alessandro Ranellucci
a65befe08c Require Math::Clipper 1.02 otherwise fail with a hard error
This is to force people to upgrade their dependencies in order to avoid their previous bugs
2011-10-11 17:56:56 +02:00
Alessandro Ranellucci
82d8d0896f Reset extrusion distance during retracts 2011-10-11 17:53:50 +02:00
Alessandro Ranellucci
ef485e511e Remove useless F params to shrink gcode size (#14) and Reset E before exceeding 65535 (#13) 2011-10-11 16:04:50 +02:00
Alessandro Ranellucci
f01ddae974 Some compatibility bugs. Slic3r will still fail hard with non-manifold objects 2011-10-11 15:51:08 +02:00
Alessandro Ranellucci
bca3abb755 More fixes. 2011-10-10 17:27:00 +02:00
Alessandro Ranellucci
34681af6ae Improvements for bottom and top surfaces perimeters 2011-10-10 16:31:37 +02:00
Alessandro Ranellucci
a7d5e643ae Bugfix: couldn't set fill density to zero 2011-10-10 14:37:40 +02:00
Alessandro Ranellucci
332d55f854 Moved Temperature under filament options 2011-10-09 22:29:13 +02:00
Alessandro Ranellucci
84abd41cf4 Fixes for bridges 2011-10-09 22:18:06 +02:00
Alessandro Ranellucci
459577f9a2 Completely rewritten the slicing algorithm
It should work with any model now. There are still problems with some
bridges.
2011-10-09 19:47:21 +02:00
Alessandro Ranellucci
ad27f25c71 Skeining algorithm totally rewritten 2011-10-08 19:02:05 +02:00
Alessandro Ranellucci
3274f3978b Additions to Geometry.pm and allow function exporting 2011-10-07 21:19:18 +02:00
Alessandro Ranellucci
743f2abcf2 Detection of optimal infill direction for bridges. Includes many fixes and improvements. 2011-10-07 19:07:57 +02:00
Alessandro Ranellucci
1cb515a8e5 Merge branch 'high-res-perimeters'
Conflicts:
	lib/Slic3r/Extruder.pm
2011-10-06 20:09:50 +02:00
Alessandro Ranellucci
5daaf454b1 Faster algorithm for rectilinear fill 2011-10-06 17:13:42 +02:00
Alessandro Ranellucci
119eb0693f New high_res_perimeters option (like the "Skin" plugin for Skeinforge) 2011-10-06 17:11:59 +02:00
Alessandro Ranellucci
1978a99416 Faster algorithm for rectilinear fill 2011-10-06 16:22:22 +02:00
Alessandro Ranellucci
33d7b8c7cf Code refactored to allow for multiple infill types 2011-10-06 15:13:09 +02:00
Alessandro Ranellucci
bfd1d0e1dd Got rid of Math::Geometry::Planar 2011-10-06 12:39:58 +02:00
Alessandro Ranellucci
e2d2574b8b New algorithm for clipping lines to complex polygons 2011-10-06 12:20:25 +02:00
Alessandro Ranellucci
5812804d6b Refactored the can_connect() logic (includes a refactoring of the SVG library) 2011-10-06 11:55:26 +02:00
Alessandro Ranellucci
5a07137def Fixes to retraction and skirt 2011-10-05 21:25:17 +02:00
Alessandro Ranellucci
a1d518f1a2 Save and load configurations 2011-10-05 18:13:47 +02:00
Alessandro Ranellucci
92dec2db2a Fixed detection of horizontal shells 2011-10-04 22:36:05 +02:00
Alessandro Ranellucci
2da5ee7448 Bugfixes and improvements in surface detection 2011-10-04 22:27:45 +02:00
Alessandro Ranellucci
f1a36502e1 Additions to the polygon library 2011-10-04 20:06:17 +02:00
Alessandro Ranellucci
706586f150 Allow .STL files as well as .stl 2011-10-04 18:00:01 +02:00
Alessandro Ranellucci
794b7a99d2 Fixes for hi-res STL models 2011-10-04 17:55:55 +02:00
Alessandro Ranellucci
6444c3d7a9 Bugfix in dealing with very small STL facets 2011-10-03 20:57:56 +02:00
Alessandro Ranellucci
ef201a99cc Bugfix in polyline simplification 2011-10-03 20:40:49 +02:00
Alessandro Ranellucci
865e234a44 Workaround for Wx/GTK bug on Linux 2011-10-03 19:15:07 +02:00
Alessandro Ranellucci
71a373e437 Bugfix: error during skein freezed the GUI 2011-10-03 17:41:45 +02:00
Alessandro Ranellucci
558e86e72d GUI fixes for Windows 2011-10-03 13:08:43 +02:00
Alessandro Ranellucci
f2f9178e07 GUI 2011-10-03 11:55:32 +02:00
Alessandro Ranellucci
21d287504c New --perimeter-feed-rate and --retract-before-travel options. Includes some refactoring and fixes. 2011-10-02 09:57:37 +02:00
Alessandro Ranellucci
55f2247cd9 New extrusion math 2011-10-01 18:10:33 +02:00
Alessandro Ranellucci
ea88cad8e3 Don't extrude acute angles 2011-10-01 14:26:54 +02:00
Alessandro Ranellucci
25ea8a0204 Bugfixes for complex and dirty geometries 2011-09-30 15:46:48 +02:00
Alessandro Ranellucci
b61b543243 Minor cleanups 2011-09-26 19:53:01 +02:00
Alessandro Ranellucci
81085433fd New options to multiply input object 2011-09-26 16:58:08 +02:00
Alessandro Ranellucci
c16ecb4316 Fixed regression which prevented horizontal shells to be processed for external top surfaces 2011-09-26 16:19:32 +02:00
Alessandro Ranellucci
404c76adc8 New option to rotate input object 2011-09-26 16:07:12 +02:00
Alessandro Ranellucci
8d13d4b21e New option to shift Z coordinates 2011-09-26 15:59:03 +02:00
Alessandro Ranellucci
b0433097d4 New option to customize infill angle 2011-09-26 15:51:22 +02:00
Alessandro Ranellucci
742f646372 Minor fixes to time computation and right-hand rule 2011-09-26 15:08:05 +02:00
Alessandro Ranellucci
478047fad3 Fixes and improvements after testing with more complex objects 2011-09-26 14:48:22 +02:00
Alessandro Ranellucci
bfad101c8c Ability to scale input object 2011-09-26 12:07:29 +02:00
Alessandro Ranellucci
c2a62891da Remove features that are too small to be printed 2011-09-26 11:59:06 +02:00
Alessandro Ranellucci
081f65852d Refactor extrusion logic in a dedicated class 2011-09-26 11:42:08 +02:00
Alessandro Ranellucci
415d1a5170 Optimization of travel paths for fills 2011-09-26 10:52:58 +02:00
Alessandro Ranellucci
0cd10441a1 Optimization of travel paths for perimeters 2011-09-25 23:15:45 +02:00
Alessandro Ranellucci
03341f3485 Multiple solid layers near external surfaces 2011-09-25 22:11:56 +02:00
Alessandro Ranellucci
f892fde123 Make rounded corners for skirt 2011-09-25 20:24:14 +02:00
Alessandro Ranellucci
5fec13353c Use latest Math::Clipper updated to Clipper 4.4.4 to get sharp corners 2011-09-25 20:09:30 +02:00
Alessandro Ranellucci
f48dec9e41 Remove old code 2011-09-25 19:51:03 +02:00
Alessandro Ranellucci
18c7aef1a7 Lots of changes and refactoring after testing with hollow objects 2011-09-18 19:28:12 +02:00
Alessandro Ranellucci
26b05ab155 Replaced Moose with Moo => big performance boost and easier packaging 2011-09-06 11:50:43 +02:00
Alessandro Ranellucci
3421e8fef8 Improvements to avoid blobs 2011-09-05 20:29:07 +02:00
Alessandro Ranellucci
ff5044c031 Implemented skirt 2011-09-05 20:00:59 +02:00
Alessandro Ranellucci
d8b848a67f Implemented retraction and fixed extrusion math 2011-09-05 18:52:09 +02:00
Alessandro Ranellucci
5595839b31 Command line interface 2011-09-05 13:33:09 +02:00
Alessandro Ranellucci
778e4f6ffa Allow for different speed on bottom layer 2011-09-05 12:22:54 +02:00
Alessandro Ranellucci
9e111d0a6d Rectilinear fill 2011-09-05 12:21:27 +02:00
Alessandro Ranellucci
428006264d Generate boundaries of areas to fill (includes some refactoring) 2011-09-04 12:04:01 +02:00
Alessandro Ranellucci
416ad241ea Require at least one perimeter 2011-09-04 11:06:15 +02:00
Alessandro Ranellucci
a5ba0af7ef Generate GCODE 2011-09-03 20:47:38 +02:00
Alessandro Ranellucci
74b4d8d612 Bugfix (harmless for now) in calculation of extents; using constants now for code readability 2011-09-03 20:08:48 +02:00
Alessandro Ranellucci
febd655e22 Extrusion of perimeters 2011-09-02 21:10:20 +02:00
Alessandro Ranellucci
55a523e1fa Initial import 2011-09-01 21:06:28 +02:00