diff --git a/Build.PL b/Build.PL index 4c7fa412a..98920731c 100644 --- a/Build.PL +++ b/Build.PL @@ -30,20 +30,7 @@ my %recommends = qw( ); my $sudo = grep { $_ eq '--sudo' } @ARGV; -my $gui = grep { $_ eq '--gui' } @ARGV; my $nolocal = grep { $_ eq '--nolocal' } @ARGV; -if ($gui) { - %prereqs = qw( - Class::Accessor 0 - Wx 0.9918 - ); - %recommends = qw( - Wx::GLCanvas 0 - ); - if ($^O eq 'MSWin32') { - $recommends{"Win32::TieRegistry"} = 0; - } -} my @missing_prereqs = (); if ($ENV{SLIC3R_NO_AUTO}) { @@ -129,13 +116,6 @@ EOF } } -print "\n"; -if ($gui) { - print "Perl dependencies for the Slic3r GUI were installed.\n"; -} else { - print "Perl dependencies for Slic3r were installed.\n"; - print "If you also want to use the GUI you can now run `perl Build.PL --gui` to install the required modules.\n"; -} print "\n"; print "In the next step, you need to build the Slic3r C++ library.\n"; print "1) Create a build directory and change to it\n"; diff --git a/serial.txt b/serial.txt deleted file mode 100644 index 7c6816d43..000000000 --- a/serial.txt +++ /dev/null @@ -1,642 +0,0 @@ -<< start -<< echo: 3.1.1-RC5-150z -<< echo: Last Updated: Feb 7 2018 15:28:23 | Author: (none, default config) -<< Compiled: Feb 7 2018 -<< echo: Free Memory: 1777 PlannerBufferBytes: 1312 -<< echo:Hardcoded Default Settings Loaded -<< adc_init ->> N0 M105*39 -<< CrashDetect ENABLED! -<< tmc2130_init(), mode=NORMAL -<< PAT9125_init:1 -<< FSensor -<< ENABLED -<< echo:SD card ok -<< echo:busy: processing -<< Error:Line Number is not Last Line Number+1, Last Line: 0 -<< Resend: 1 -<< ok ->> N1 M107*36 -<< ok ->> N2 M115 U3.1.1-RC5*107 -<< ok ->> N3 M201 X1000 Y1000 Z200 E5000*10 -<< ok ->> N4 M203 X200 Y200 Z12 E120*8 -<< ok ->> N5 M204 S1250 T1250*39 -<< ok ->> N6 M205 X10 Y10 Z0.4 E2.5*63 -<< ok ->> N7 M205 S0 T0*36 -<< ok ->> N8 M83*16 -<< ok ->> N9 M104 S215*106 -<< ok ->> N10 M140 S60*98 -<< ok ->> N11 M190 S60*110 -<< T:158.08 E:0 B:57.1 -<< T:157.04 E:0 B:57.1 -<< T:156.77 E:0 B:56.9 -<< T:156.97 E:0 B:57.0 -<< T:158.14 E:0 B:57.0 -<< T:159.62 E:0 B:56.9 -<< T:161.25 E:0 B:56.8 -<< T:163.64 E:0 B:56.8 -<< T:165.94 E:0 B:56.7 -<< T:168.40 E:0 B:56.8 -<< T:170.79 E:0 B:56.7 -<< T:173.68 E:0 B:56.7 -<< T:175.53 E:0 B:56.6 -<< T:178.40 E:0 B:56.6 -<< T:180.94 E:0 B:56.5 -<< T:183.92 E:0 B:56.4 -<< T:186.73 E:0 B:56.4 -<< T:189.20 E:0 B:56.4 -<< T:191.32 E:0 B:56.3 -<< T:193.91 E:0 B:56.3 -<< T:196.38 E:0 B:56.2 -<< T:198.75 E:0 B:56.2 -<< T:201.65 E:0 B:56.3 -<< T:203.57 E:0 B:56.4 -<< T:206.38 E:0 B:56.5 -<< T:208.71 E:0 B:56.6 -<< T:211.04 E:0 B:56.6 -<< T:212.86 E:0 B:56.8 -<< T:214.84 E:0 B:57.0 -<< T:215.52 E:0 B:57.2 -<< T:215.78 E:0 B:57.4 -<< T:216.30 E:0 B:57.6 -<< T:216.51 E:0 B:57.7 -<< T:215.73 E:0 B:58.0 -<< T:215.47 E:0 B:58.2 -<< T:214.95 E:0 B:58.5 -<< T:214.22 E:0 B:58.7 -<< T:213.65 E:0 B:59.0 -<< T:212.24 E:0 B:59.2 -<< T:212.14 E:0 B:59.4 -<< T:212.03 E:0 B:59.7 -<< T:211.51 E:0 B:59.8 -<< ok ->> N12 M105*20 -<< ok T:211.0 /215.0 B:60.0 /60.0 T0:211.0 /215.0 @:60 B@:0 P:46.3 A:36.2 ->> N13 M105*21 -<< ok T:211.0 /215.0 B:60.0 /60.0 T0:211.0 /215.0 @:60 B@:0 P:46.3 A:36.2 ->> N14 M105*18 -<< ok T:211.0 /215.0 B:60.0 /60.0 T0:211.0 /215.0 @:60 B@:0 P:46.3 A:36.2 ->> N15 M105*19 -<< ok T:211.0 /215.0 B:60.0 /60.0 T0:211.0 /215.0 @:60 B@:0 P:46.3 A:36.2 ->> N16 M105*16 -<< ok T:211.0 /215.0 B:60.0 /60.0 T0:211.0 /215.0 @:60 B@:0 P:46.3 A:36.2 ->> N17 M105*17 -<< ok T:211.0 /215.0 B:60.0 /60.0 T0:211.0 /215.0 @:60 B@:0 P:46.3 A:36.2 ->> N18 M105*30 -<< ok T:211.0 /215.0 B:60.0 /60.0 T0:211.0 /215.0 @:60 B@:0 P:46.3 A:36.2 ->> N19 M105*31 -<< ok T:211.0 /215.0 B:60.0 /60.0 T0:211.0 /215.0 @:60 B@:0 P:46.3 A:36.2 ->> N20 M105*21 -<< ok T:211.0 /215.0 B:60.0 /60.0 T0:211.0 /215.0 @:60 B@:0 P:46.3 A:36.2 ->> N21 M109 S215*93 -<< T:211.3 E:0 W:? -<< T:211.8 E:0 W:? -<< T:211.8 E:0 W:? -<< T:212.1 E:0 W:? -<< T:212.4 E:0 W:? -<< T:213.3 E:0 W:? -<< T:213.3 E:0 W:? -<< T:213.8 E:0 W:? -<< T:214.1 E:0 W:2 -<< T:214.1 E:0 W:1 -<< T:214.2 E:0 W:0 -<< ok ->> N22 M105*23 -<< ok T:214.3 /215.0 B:60.8 /60.0 T0:214.3 /215.0 @:20 B@:7 P:46.4 A:36.0 ->> N23 M105*22 -<< ok T:214.3 /215.0 B:60.8 /60.0 T0:214.3 /215.0 @:20 B@:7 P:46.4 A:36.0 ->> N24 G28 W*82 -<< 0 step=62 mscnt= 993 -<< tmc2130_goto_step 0 0 2 1000 -<< step 61 mscnt = 984 -<< dir=0 steps=-61 -<< dir=1 steps=61 -<< dir=0 steps=3 -<< cnt 2 step 61 mscnt = 986 -<< cnt 1 step 62 mscnt = 1005 -<< cnt 0 step 63 mscnt = 1021 -<< echo:busy: processing -<< echo:busy: processing -<< 0 step=34 mscnt= 547 -<< tmc2130_goto_step 1 0 2 1000 -<< step 34 mscnt = 552 -<< dir=1 steps=-34 -<< dir=0 steps=34 -<< dir=1 steps=30 -<< cnt 29 step 34 mscnt = 554 -<< cnt 28 step 35 mscnt = 572 -<< cnt 27 step 36 mscnt = 588 -<< cnt 26 step 37 mscnt = 604 -<< cnt 25 step 38 mscnt = 620 -<< cnt 24 step 39 mscnt = 637 -<< cnt 23 step 40 mscnt = 653 -<< cnt 22 step 41 mscnt = 668 -<< cnt 21 step 42 mscnt = 684 -<< cnt 20 step 43 mscnt = 701 -<< cnt 19 step 44 mscnt = 717 -<< cnt 18 step 45 mscnt = 733 -<< cnt 17 step 46 mscnt = 748 -<< cnt 16 step 47 mscnt = 765 -<< cnt 15 step 48 mscnt = 780 -<< cnt 14 step 49 mscnt = 796 -<< cnt 13 step 50 mscnt = 812 -<< cnt 12 step 51 mscnt = 828 -<< cnt 11 step 52 mscnt = 844 -<< cnt 10 step 53 mscnt = 860 -<< cnt 9 step 54 mscnt = 876 -<< cnt 8 step 55 mscnt = 893 -<< cnt 7 step 56 mscnt = 909 -<< cnt 6 step 57 mscnt = 925 -<< cnt 5 step 58 mscnt = 941 -<< cnt 4 step 59 mscnt = 956 -<< cnt 3 step 60 mscnt = 972 -<< cnt 2 step 61 mscnt = 988 -<< cnt 1 step 62 mscnt = 1005 -<< cnt 0 step 63 mscnt = 1021 -<< echo:busy: processing -<< ok ->> N25 M105*16 -<< ok T:213.1 /215.0 B:60.8 /60.0 T0:213.1 /215.0 @:44 B@:35 P:46.5 A:35.6 ->> N26 G80*37 -<< echo:busy: processing -<< echo:busy: processing -<< echo:busy: processing -<< echo:busy: processing -<< echo:busy: processing -<< echo:busy: processing -<< echo:busy: processing -<< echo:busy: processing -<< echo:busy: processing -<< echo:busy: processing -<< echo:busy: processing -<< echo:busy: processing -<< echo:busy: processing -<< ok ->> N27 M105*18 -<< ok T:214.8 /215.0 B:60.9 /60.0 T0:214.8 /215.0 @:31 B@:25 P:46.3 A:35.7 ->> N28 M105*29 -<< ok T:214.8 /215.0 B:60.9 /60.0 T0:214.8 /215.0 @:31 B@:25 P:46.3 A:35.7 ->> N29 M105*28 -<< ok T:214.8 /215.0 B:60.9 /60.0 T0:214.8 /215.0 @:31 B@:25 P:46.3 A:35.7 ->> N30 M105*20 -<< ok T:214.8 /215.0 B:60.9 /60.0 T0:214.8 /215.0 @:31 B@:25 P:46.3 A:35.7 ->> N31 M105*21 -<< ok T:214.8 /215.0 B:60.9 /60.0 T0:214.8 /215.0 @:31 B@:25 P:46.3 A:35.7 ->> N32 M105*22 -<< ok T:214.8 /215.0 B:60.9 /60.0 T0:214.8 /215.0 @:31 B@:25 P:46.3 A:35.7 ->> N33 G1 Y-3.0 F1000.0*24 -<< ok ->> N34 G92 E0.0*110 -<< ok ->> N35 G1 X60.0 E9.0 F1000.0*101 -<< ok ->> N36 G1 X100.0 E12.5 F1000.0*110 -<< ok ->> N37 G92 E0.0*109 -<< ok ->> N38 M221 S95*102 -<< ok ->> N39 M900 K30*120 -<< Invalid M code. -<< ok ->> N40 G21*46 -<< ok ->> N41 G90*37 -<< ok ->> N42 M83*46 -<< ok ->> N43 G1 E-0.80000 F2100.00000*10 -<< ok ->> N44 G1 Z0.600 F10200.000*1 -<< ok ->> N45 G1 X112.437 Y93.991 F10200.000*106 -<< ok ->> N46 G1 Z0.200 F10200.000*7 -<< ok ->> N47 G1 E0.80000 F2100.00000*35 -<< ok ->> N48 M204 S1000*107 -<< ok ->> N49 G1 F1800*122 -<< ok ->> N50 G1 X112.930 Y93.183 E0.02968*106 -<< ok ->> N51 G1 X113.335 Y92.806 E0.01733*99 -<< ok ->> N52 G1 X113.810 Y92.516 E0.01745*97 -<< ok ->> N53 G1 X114.334 Y92.328 E0.01745*97 -<< ok ->> N54 G1 X114.885 Y92.248 E0.01745*96 -<< ok ->> N55 M105*23 -<< ok T:214.9 /215.0 B:60.8 /60.0 T0:214.9 /215.0 @:30 B@:28 P:46.2 A:35.7 ->> N56 G1 X135.004 Y92.246 E0.63084*96 -<< ok ->> N57 G1 X136.005 Y92.436 E0.03195*101 -<< ok ->> N58 G1 X136.866 Y92.974 E0.03183*107 -<< ok ->> N59 G1 X137.473 Y93.788 E0.03183*111 -<< ok ->> N60 G1 X137.745 Y94.770 E0.03195*100 -<< ok ->> N61 G1 X137.753 Y115.086 E0.63700*88 -<< ok ->> N62 G1 X137.563 Y116.009 E0.02955*87 -<< ok ->> N63 G1 X137.070 Y116.817 E0.02968*88 -<< ok ->> N64 G1 X136.646 Y117.208 E0.01809*93 -<< ok ->> N65 G1 X136.149 Y117.503 E0.01809*88 -<< ok ->> N66 G1 X135.603 Y117.687 E0.01809*94 -<< ok ->> N67 G1 X135.029 Y117.754 E0.01809*94 -<< ok ->> N68 G1 X114.914 Y117.753 E0.63071*81 -<< ok ->> N69 G1 X113.991 Y117.563 E0.02955*83 -<< ok ->> N70 G1 X113.183 Y117.070 E0.02968*89 -<< ok ->> N71 G1 X112.792 Y116.646 E0.01809*88 -<< ok ->> N72 M105*18 -<< ok T:214.0 /215.0 B:60.8 /60.0 T0:214.0 /215.0 @:45 B@:16 P:46.2 A:35.5 ->> N73 G1 X112.497 Y116.149 E0.01809*84 -<< ok ->> N74 G1 X112.313 Y115.603 E0.01809*82 -<< ok ->> N75 G1 X112.246 Y115.029 E0.01809*92 -<< ok ->> N76 G1 X112.247 Y94.914 E0.63071*98 -<< ok ->> N77 G1 X112.425 Y94.050 E0.02767*111 -<< ok ->> N78 G1 F8160*126 -<< ok ->> N79 G1 X112.930 Y93.183 E-0.24526*78 -<< ok ->> N80 G1 F8160*121 -<< ok ->> N81 G1 X113.335 Y92.806 E-0.13510*67 -<< ok ->> N82 G1 F8160*123 -<< ok ->> N83 G1 X113.810 Y92.516 E-0.13609*74 -<< ok ->> N84 G1 F8160*125 -<< ok ->> N85 G1 X114.334 Y92.328 E-0.13609*77 -<< ok ->> N86 G1 F8160*127 -<< ok ->> N87 G1 X114.769 Y92.265 E-0.10746*66 -<< ok ->> N88 G1 E-0.04000 F2100.00000*1 -<< ok ->> N89 G1 Z0.800 F10200.000*14 -<< ok ->> N90 G1 X113.989 Y92.849 F10200.000*110 -<< ok ->> N91 G1 Z0.200 F10200.000*13 -<< ok ->> N92 G1 E0.80000 F2100.00000*43 -<< ok ->> N93 G1 F1800*125 -<< ok ->> N94 G1 X114.911 Y92.625 E0.02977*99 -<< ok ->> N95 G1 X135.004 Y92.623 E0.62999*108 -<< ok ->> N96 G1 X135.871 Y92.788 E0.02767*108 -<< ok ->> N97 G1 X136.617 Y93.258 E0.02767*105 -<< ok ->> N98 G1 X137.141 Y93.968 E0.02767*107 -<< ok ->> N99 G1 X137.371 Y94.824 E0.02778*107 -<< ok ->> N100 G1 X137.376 Y115.065 E0.63464*97 -<< ok ->> N101 G1 X137.209 Y115.878 E0.02602*104 -<< ok ->> N102 G1 X136.773 Y116.584 E0.02602*111 -<< ok ->> N103 G1 X136.407 Y116.916 E0.01550*110 -<< ok ->> N104 G1 X135.980 Y117.166 E0.01550*102 -<< ok ->> N105 G1 X135.511 Y117.321 E0.01550*98 -<< ok ->> N106 G1 X135.020 Y117.377 E0.01550*101 -<< ok ->> N107 G1 X114.935 Y117.376 E0.62975*101 -<< ok ->> N108 G1 X114.122 Y117.209 E0.02602*100 -<< ok ->> N109 G1 X113.416 Y116.773 E0.02602*105 -<< ok ->> N110 G1 X113.084 Y116.407 E0.01550*105 -<< ok ->> N111 G1 X112.834 Y115.980 E0.01550*107 -<< ok ->> N112 G1 X112.679 Y115.511 E0.01550*107 -<< ok ->> N113 G1 X112.623 Y115.020 E0.01550*98 -<< ok ->> N114 G1 X112.624 Y94.935 E0.62975*89 -<< ok ->> N115 G1 X112.791 Y94.122 E0.02602*80 -<< ok ->> N116 G1 X113.227 Y93.416 E0.02602*95 -<< ok ->> N117 G1 X113.940 Y92.885 E0.02789*81 -<< ok ->> N118 G1 F8160*73 -<< ok ->> N119 G1 X114.911 Y92.625 E-0.24574*113 -<< ok ->> N120 G1 F8160*66 -<< ok ->> N121 G1 X117.015 Y92.624 E-0.51426*113 -<< ok ->> N122 G1 E-0.04000 F2100.00000*48 -<< ok ->> N123 G1 Z0.800 F10200.000*63 -<< ok ->> N124 G1 X115.587 Y95.587 F10200.000*92 -<< ok ->> N125 M105*33 -<< ok T:214.2 /215.0 B:60.7 /60.0 T0:214.2 /215.0 @:41 B@:24 P:46.2 A:36.0 ->> N126 G1 Z0.200 F10200.000*48 -<< ok ->> N127 G1 E0.80000 F2100.00000*20 -<< ok ->> N128 G1 F1800*76 -<< ok ->> N129 G1 X134.413 Y95.587 E0.59027*87 -<< ok ->> N130 G1 X134.413 Y114.413 E0.59027*107 -<< ok ->> N131 G1 X115.587 Y114.413 E0.59027*101 -<< ok ->> N132 G1 X115.587 Y95.647 E0.58839*91 -<< ok ->> N133 G1 X115.210 Y95.210 F10200.000*90 -<< ok ->> N134 G1 F1800*65 -<< ok ->> N135 G1 X134.790 Y95.210 E0.61392*93 -<< ok ->> N136 G1 X134.790 Y114.790 E0.61392*107 -<< ok ->> N137 G1 X115.210 Y114.790 E0.61392*100 -<< ok ->> N138 G1 X115.210 Y95.270 E0.61204*86 -<< ok ->> N139 G1 X115.596 Y95.314 F10200.000*92 -<< ok ->> N140 G1 F8160*68 -<< ok ->> N141 G1 X118.319 Y95.260 E-0.76000*113 -<< ok ->> N142 G1 E-0.04000 F2100.00000*54 -<< ok ->> N143 G1 Z0.800 F10200.000*57 -<< ok ->> N144 G1 X115.700 Y113.527 F10200.000*98 -<< ok ->> N145 G1 Z0.200 F10200.000*53 -<< ok ->> N146 G1 E0.80000 F2100.00000*19 -<< ok ->> N147 G1 F1800*69 -<< ok ->> N148 G1 X116.303 Y114.130 E0.02708*98 -<< ok ->> N149 G1 X116.843 Y114.130 E0.01716*96 -<< ok ->> N150 G1 X115.870 Y113.157 E0.04372*110 -<< ok ->> N151 G1 X115.870 Y112.617 E0.01716*110 -<< ok ->> N152 G1 X117.383 Y114.130 E0.06799*108 -<< ok ->> N153 G1 X117.924 Y114.130 E0.01716*106 -<< ok ->> N154 M105*39 -<< ok T:215.1 /215.0 B:60.7 /60.0 T0:215.1 /215.0 @:29 B@:12 P:46.2 A:35.7 ->> N155 G1 X115.870 Y112.076 E0.09225*102 -<< ok ->> N156 G1 X115.870 Y111.536 E0.01716*106 -<< ok ->> N157 G1 X118.464 Y114.130 E0.11652*104 -<< ok ->> N158 G1 X119.004 Y114.130 E0.01716*100 -<< ok ->> N159 G1 X115.870 Y110.996 E0.14079*104 -<< ok ->> N160 G1 X115.870 Y110.456 E0.01716*105 -<< ok ->> N161 G1 X119.544 Y114.130 E0.16505*105 -<< ok ->> N162 G1 X120.085 Y114.130 E0.01716*110 -<< ok ->> N163 G1 X115.870 Y109.915 E0.18932*104 -<< ok ->> N164 G1 X115.870 Y109.375 E0.01716*99 -<< ok ->> N165 G1 X120.625 Y114.130 E0.21358*105 -<< ok ->> N166 G1 X121.165 Y114.130 E0.01716*100 -<< ok ->> N167 G1 X115.870 Y108.835 E0.23785*100 -<< ok ->> N168 G1 X115.870 Y108.295 E0.01716*97 -<< ok ->> N169 G1 X121.705 Y114.130 E0.26212*111 -<< ok ->> N170 G1 X122.245 Y114.130 E0.01716*97 -<< ok ->> N171 G1 X115.870 Y107.755 E0.28638*105 -<< ok ->> N172 G1 X115.870 Y107.214 E0.01716*108 -<< ok ->> N173 G1 X122.786 Y114.130 E0.31065*104 -<< ok ->> N174 G1 X123.326 Y114.130 E0.01716*96 -<< ok ->> N175 G1 X115.870 Y106.674 E0.33491*101 -<< ok ->> N176 G1 X115.870 Y106.134 E0.01716*104 -<< ok ->> N177 G1 X123.866 Y114.130 E0.35918*107 -<< ok ->> N178 G1 X124.406 Y114.130 E0.01716*110 -<< ok ->> N179 G1 X115.870 Y105.594 E0.38344*99 -<< ok ->> N180 G1 X115.870 Y105.054 E0.01716*101 -<< ok ->> N181 G1 X124.946 Y114.130 E0.40771*101 -<< ok ->> N182 G1 X125.487 Y114.130 E0.01716*99 -<< ok ->> N183 G1 X115.870 Y104.513 E0.43198*103 -<< ok ->> N184 G1 X115.870 Y103.973 E0.01716*107 -<< ok ->> N185 G1 X126.027 Y114.130 E0.45624*105 -<< ok ->> N186 G1 X126.567 Y114.130 E0.01716*107 -<< ok ->> N187 G1 X115.870 Y103.433 E0.48051*104 -<< ok ->> N188 G1 X115.870 Y102.893 E0.01716*105 -<< ok ->> N189 G1 X127.107 Y114.130 E0.50477*103 -<< ok ->> N190 M105*47 -<< ok T:215.3 /215.0 B:60.7 /60.0 T0:215.3 /215.0 @:28 B@:18 P:46.3 A:35.5 ->> N191 G1 X127.648 Y114.130 E0.01716*98 -<< ok ->> N192 G1 X115.870 Y102.352 E0.52904*111 -<< ok ->> N193 G1 X115.870 Y101.812 E0.01716*105 -<< ok ->> N194 G1 X128.188 Y114.130 E0.55330*98 -<< ok ->> N195 G1 X128.728 Y114.130 E0.01716*110 -<< ok ->> N196 G1 X115.870 Y101.272 E0.57757*102 -<< ok ->> N197 G1 X115.870 Y100.732 E0.01716*97 -<< ok ->> N198 G1 X129.268 Y114.130 E0.60184*105 -<< ok ->> N199 G1 X129.808 Y114.130 E0.01716*110 -<< ok ->> N200 G1 X115.870 Y100.192 E0.62610*98 -<< ok ->> N201 G1 X115.870 Y99.651 E0.01716*88 -<< ok ->> N202 G1 X130.349 Y114.130 E0.65037*111 -<< ok ->> N203 G1 X130.889 Y114.130 E0.01716*111 -<< ok ->> N204 G1 X115.870 Y99.111 E0.67463*95 -<< ok ->> N205 G1 X115.870 Y98.571 E0.01716*92 -<< ok ->> N206 G1 X131.429 Y114.130 E0.69890*98 -<< ok ->> N207 G1 X131.969 Y114.130 E0.01716*101 -<< ok ->> N208 M105*45 -<< ok T:214.7 /215.0 B:60.6 /60.0 T0:214.7 /215.0 @:38 B@:12 P:46.2 A:35.9 ->> N209 G1 X115.870 Y98.031 E0.72316*81 -<< ok ->> N210 G1 X115.870 Y97.491 E0.01716*88 -<< ok ->> N211 G1 X132.509 Y114.130 E0.74743*105 -<< ok ->> N212 G1 X133.050 Y114.130 E0.01716*96 -<< ok ->> N213 M105*39 -<< ok T:215.1 /215.0 B:60.4 /60.0 T0:215.1 /215.0 @:32 B@:39 P:46.3 A:35.8 ->> N214 M105*32 -<< ok T:214.6 /215.0 B:60.5 /60.0 T0:214.6 /215.0 @:39 B@:14 P:46.3 A:36.3 ->> N215 G28*21 -<< echo:busy: processing -<< 0 step=61 mscnt= 989 -<< tmc2130_goto_step 0 0 2 1000 -<< step 61 mscnt = 984 -<< dir=0 steps=-61 -<< dir=1 steps=61 -<< dir=0 steps=3 -<< cnt 2 step 61 mscnt = 986 -<< cnt 1 step 62 mscnt = 1004 -<< cnt 0 step 63 mscnt = 1021 -<< echo:busy: processing -<< echo:busy: processing -<< 0 step=34 mscnt= 547 -<< tmc2130_goto_step 1 0 2 1000 -<< step 34 mscnt = 552 -<< dir=1 steps=-34 -<< dir=0 steps=34 -<< dir=1 steps=30 -<< cnt 29 step 34 mscnt = 554 -<< cnt 28 step 35 mscnt = 573 -<< cnt 27 step 36 mscnt = 589 -<< cnt 26 step 37 mscnt = 604 -<< cnt 25 step 38 mscnt = 621 -<< cnt 24 step 39 mscnt = 636 -<< cnt 23 step 40 mscnt = 652 -<< cnt 22 step 41 mscnt = 668 -<< cnt 21 step 42 mscnt = 684 -<< cnt 20 step 43 mscnt = 701 -<< cnt 19 step 44 mscnt = 717 -<< cnt 18 step 45 mscnt = 733 -<< cnt 17 step 46 mscnt = 749 -<< cnt 16 step 47 mscnt = 765 -<< cnt 15 step 48 mscnt = 781 -<< cnt 14 step 49 mscnt = 796 -<< cnt 13 step 50 mscnt = 812 -<< cnt 12 step 51 mscnt = 829 -<< cnt 11 step 52 mscnt = 844 -<< cnt 10 step 53 mscnt = 860 -<< cnt 9 step 54 mscnt = 876 -<< cnt 8 step 55 mscnt = 893 -<< cnt 7 step 56 mscnt = 909 -<< cnt 6 step 57 mscnt = 925 -<< cnt 5 step 58 mscnt = 941 -<< cnt 4 step 59 mscnt = 957 -<< cnt 3 step 60 mscnt = 973 -<< cnt 2 step 61 mscnt = 989 -<< cnt 1 step 62 mscnt = 1005 -<< cnt 0 step 63 mscnt = 1021 -<< echo:busy: processing -<< echo:busy: processing -<< echo:busy: processing -<< echo:busy: processing -<< echo:busy: processing -<< echo:busy: processing -<< echo:busy: processing -<< echo:busy: processing -<< echo:busy: processing -<< echo:busy: processing -<< echo:busy: processing -<< echo:busy: processing -<< echo:busy: processing -<< echo:busy: processing -<< ok ->> N216 M105*34 -<< ok T:214.8 /215.0 B:60.2 /60.0 T0:214.8 /215.0 @:33 B@:27 P:46.0 A:36.1 ->> N217 M105*35 -<< ok T:214.8 /215.0 B:60.2 /60.0 T0:214.8 /215.0 @:33 B@:27 P:46.0 A:36.1 ->> N218 M105*44 -<< ok T:214.9 /215.0 B:60.1 /60.0 T0:214.9 /215.0 @:31 B@:33 P:45.9 A:36.1 ->> N219 M105*45 -<< ok T:214.9 /215.0 B:60.1 /60.0 T0:214.9 /215.0 @:31 B@:33 P:45.9 A:36.1 ->> N220 M105*39 -<< ok T:214.9 /215.0 B:60.1 /60.0 T0:214.9 /215.0 @:31 B@:33 P:45.9 A:36.1 ->> N221 M105*38 -<< ok T:214.9 /215.0 B:60.1 /60.0 T0:214.9 /215.0 @:31 B@:33 P:45.9 A:36.1 ->> N222 M105*37 -<< ok T:214.9 /215.0 B:60.1 /60.0 T0:214.9 /215.0 @:31 B@:33 P:45.9 A:36.1 ->> N223 M105*36 -<< ok T:214.5 /215.0 B:60.1 /60.0 T0:214.5 /215.0 @:38 B@:31 P:46.0 A:36.3 -DISCONNECTED diff --git a/utils/amf-to-stl.pl b/utils/amf-to-stl.pl deleted file mode 100755 index 802fd9a53..000000000 --- a/utils/amf-to-stl.pl +++ /dev/null @@ -1,54 +0,0 @@ -#!/usr/bin/perl -# This script converts an AMF file to STL - -use strict; -use warnings; - -BEGIN { - use FindBin; - use lib "$FindBin::Bin/../lib"; - use local::lib "$FindBin::Bin/../local-lib"; -} - -use File::Basename qw(basename); -use Getopt::Long qw(:config no_auto_abbrev); -use Slic3r; -$|++; - -# Convert all parameters from the local code page to utf8 on Windows. -@ARGV = map Slic3r::decode_path($_), @ARGV if $^O eq 'MSWin32'; - -my %opt = (); -{ - my %options = ( - 'help' => sub { usage() }, - 'ascii' => \$opt{ascii}, - ); - GetOptions(%options) or usage(1); - $ARGV[0] or usage(1); -} - -{ - my $model = Slic3r::Model->load_amf($ARGV[0]); - my $output_file = $ARGV[0]; - $output_file =~ s/\.[aA][mM][fF](?:\.[xX][mM][lL])?$/\.stl/; - - printf "Writing to %s\n", basename($output_file); - $model->store_stl($output_file, binary => !$opt{ascii}); -} - - -sub usage { - my ($exit_code) = @_; - - print <<"EOF"; -Usage: amf-to-stl.pl [ OPTIONS ] file.amf - - --help Output this usage screen and exit - --ascii Generate ASCII STL files (default: binary) - -EOF - exit ($exit_code || 0); -} - -__END__ diff --git a/utils/dump-stl.pl b/utils/dump-stl.pl deleted file mode 100644 index eee3c73dc..000000000 --- a/utils/dump-stl.pl +++ /dev/null @@ -1,49 +0,0 @@ -#!/usr/bin/perl -# This script dumps a STL file into Perl syntax for writing tests -# or dumps a test model into a STL file - -use strict; -use warnings; - -BEGIN { - use FindBin; - use lib "$FindBin::Bin/../lib"; - use local::lib "$FindBin::Bin/../local-lib"; -} - -use Slic3r; -use Slic3r::Test; -use File::Basename qw(basename); -$|++; - -$ARGV[0] or usage(1); - -if (-e $ARGV[0]) { - my $model = Slic3r::Model->load_stl($ARGV[0], basename($ARGV[0])); - $model->objects->[0]->add_instance(offset => Slic3r::Pointf->new(0,0)); - my $mesh = $model->mesh; - $mesh->repair; - printf "VERTICES = %s\n", join ',', map "[$_->[0],$_->[1],$_->[2]]", @{$mesh->vertices}; - printf "FACETS = %s\n", join ',', map "[$_->[0],$_->[1],$_->[2]]", @{$mesh->facets}; - exit 0; -} elsif ((my $model = Slic3r::Test::model($ARGV[0]))) { - $ARGV[1] or die "Missing writeable destination as second argument\n"; - $model->store_stl($ARGV[1], 1); - printf "Model $ARGV[0] written to $ARGV[1]\n"; - exit 0; -} else { - die "No such model exists\n"; -} - - -sub usage { - my ($exit_code) = @_; - - print <<"EOF"; -Usage: dump-stl.pl file.stl - dump-stl.pl modelname file.stl -EOF - exit ($exit_code || 0); -} - -__END__ diff --git a/utils/modifier_helpers/layer_generator.jscad b/utils/modifier_helpers/layer_generator.jscad deleted file mode 100644 index fc193a53f..000000000 --- a/utils/modifier_helpers/layer_generator.jscad +++ /dev/null @@ -1,19 +0,0 @@ -// title: Layer_generator -// written by: Joseph Lenox -// Used for generating cubes oriented about the center -// for making simple modifier meshes. - -var width = 100; -var layer_height = 0.3; -var z = 30; -function main() { - - return cube(size=[width,width,layer_height], center=true).translate([0,0,z]); -} -function getParameterDefinitions() { - return [ - { name: 'width', type: 'float', initial: 100, caption: "Width of the cube:" }, - { name: 'layer_height', type: 'float', initial: 0.3, caption: "Layer height used:" }, - { name: 'z', type: 'float', initial: 0, caption: "Z:" } - ]; -} diff --git a/utils/modifier_helpers/solid_layers.scad b/utils/modifier_helpers/solid_layers.scad deleted file mode 100644 index 378294949..000000000 --- a/utils/modifier_helpers/solid_layers.scad +++ /dev/null @@ -1,24 +0,0 @@ -// Used to generate a modifier mesh to do something every few layers. -// Load into OpenSCAD, tweak the variables below, export as STL and load as -// a modifier mesh. Then change settings for the modifier mesh. - -// Written by Joseph Lenox; in public domain. - -layer_height = 0.3; // set to layer height in slic3r for "best" results. -number_of_solid_layers = 2; -N = 4; // N > number_of_solid_layers or else the whole thing will be solid -model_height = 300.0; -model_width = 300.0; // these two should be at least as big as the model -model_depth = 300.0; // but bigger isn't a problem -initial_offset=0; // don't generate below this - -position_on_bed=[0,0,0]; // in case you need to move it around - -// don't touch below unless you know what you are doing. -simple_layers = round(model_height/layer_height); -translate(position_on_bed) - for (i = [initial_offset:N:simple_layers]) { - translate([0,0,i*layer_height]) - translate([0,0,(layer_height*number_of_solid_layers)/2]) - cube([model_width,model_depth,layer_height*number_of_solid_layers], center=true); - } diff --git a/utils/pdf-slices.pl b/utils/pdf-slices.pl deleted file mode 100755 index ca61da08e..000000000 --- a/utils/pdf-slices.pl +++ /dev/null @@ -1,106 +0,0 @@ -#!/usr/bin/perl -# This script exports model slices to a PDF file as solid fills, one per page - -use strict; -use warnings; - -BEGIN { - use FindBin; - use lib "$FindBin::Bin/../lib"; - use local::lib "$FindBin::Bin/../local-lib"; -} - -use Getopt::Long qw(:config no_auto_abbrev); -use PDF::API2; -use Slic3r; -use Slic3r::Geometry qw(scale unscale X Y); - -use constant mm => 25.4 / 72; - -my %opt = (); -{ - my %options = ( - 'help' => sub { usage() }, - 'output|o=s' => \$opt{output_file}, - 'layer-height|h=f' => \$opt{layer_height}, - ); - GetOptions(%options) or usage(1); - $ARGV[0] or usage(1); -} - -{ - # prepare config - my $config = Slic3r::Config->new; - $config->set('layer_height', $opt{layer_height}) if $opt{layer_height}; - - # read model - my $model = Slic3r::Model->read_from_file(my $input_file = $ARGV[0]); - - # init print object - my $sprint = Slic3r::Print::Simple->new( - print_center => [0,0], - ); - $sprint->apply_config($config); - $sprint->set_model($model); - my $print = $sprint->_print; - - # compute sizes - my $bb = $print->bounding_box; - my $size = $bb->size; - my $mediabox = [ map unscale($_)/mm, @{$size} ]; - - # init PDF - my $pdf = PDF::API2->new(); - my $color = $pdf->colorspace_separation('RDG_GLOSS', 'darkblue'); - - # slice and build output geometry - $_->slice for @{$print->objects}; - foreach my $object (@{ $print->objects }) { - my $shift = $object->_shifted_copies->[0]; - $shift->translate(map $_/2, @$size); - - foreach my $layer (@{ $object->layers }) { - my $page = $pdf->page(); - $page->mediabox(@$mediabox); - my $content = $page->gfx; - $content->fillcolor($color, 1); - - foreach my $expolygon (@{$layer->slices}) { - $expolygon = $expolygon->clone; - $expolygon->translate(@$shift); - $content->poly(map { unscale($_->x)/mm, unscale($_->y)/mm } @{$expolygon->contour}); #) - $content->close; - foreach my $hole (@{$expolygon->holes}) { - $content->poly(map { unscale($_->x)/mm, unscale($_->y)/mm } @$hole); #) - $content->close; - } - $content->fill; # non-zero by default - } - } - } - - # write output file - my $output_file = $opt{output_file}; - if (!defined $output_file) { - $output_file = $input_file; - $output_file =~ s/\.(?:[sS][tT][lL])$/.pdf/; - } - $pdf->saveas($output_file); - printf "PDF file written to %s\n", $output_file; -} - -sub usage { - my ($exit_code) = @_; - - print <<"EOF"; -Usage: pdf-slices.pl [ OPTIONS ] file.stl - - --help Output this usage screen and exit - --output, -o Write to the specified file - --layer-height, -h Use the specified layer height - -EOF - exit ($exit_code || 0); -} - -__END__ diff --git a/utils/post-processing/decimate.pl b/utils/post-processing/decimate.pl deleted file mode 100755 index 9e2938c5f..000000000 --- a/utils/post-processing/decimate.pl +++ /dev/null @@ -1,53 +0,0 @@ -#!/usr/bin/perl -i~ - -use strict; -use warnings; - -my %lastpos = (X => 10000, Y => 10000, Z => 10000, E => 10000, F => 10000); -my %pos = (X => 0, Y => 0, Z => 0, E => 0, F => 0); - -my $mindist = 0.33; - -my $mindistz = 0.005; - -my $mindistsq = $mindist * $mindist; - -sub dist { - my $sq = 0; - for (qw/X Y Z E/) { - $sq += ($pos{$_} - $lastpos{$_}) ** 2; - } - return $sq; -} - -while (<>) { - if (m#\bG[01]\b#) { - while (m#([XYZEF])(\d+(\.\d+)?)#gi) { - $pos{uc $1} = $2; - } - if ( - ( - /X/ && - /Y/ && - (dist() >= $mindistsq) - ) || - (abs($pos{Z} - $lastpos{Z}) > $mindistz) || - (!/X/ || !/Y/) - ) { - print; - %lastpos = %pos; - } - elsif (($pos{F} - $lastpos{F}) != 0) { - printf "G1 F%s\n", $pos{F}; - $lastpos{F} = $pos{F}; - } - } - else { - if (m#\bG92\b#) { - while (m#([XYZEF])(\d+(\.\d+)?)#gi) { - $lastpos{uc $1} = $2; - } - } - print; - } -} diff --git a/utils/post-processing/fan_kickstart.py b/utils/post-processing/fan_kickstart.py deleted file mode 100644 index 9ee1bc0a4..000000000 --- a/utils/post-processing/fan_kickstart.py +++ /dev/null @@ -1,13 +0,0 @@ -#!/usr/bin/python -import sys -import re - -sea = re.compile("M106 S[1-9]+[0-9]*") -rep = re.compile("M106 S255\n\g<0>") -out = open(sys.argv[1]+"_fixed", 'w') - with open(sys.argv[1]) as f: - for r in f: - if re.search(sea, r) is not None: - out.write(re.sub(sea,"M106 S255\n\g<0>",r)) - else: - out.write(r) diff --git a/utils/post-processing/filament-weight.pl b/utils/post-processing/filament-weight.pl deleted file mode 100755 index 5ed836461..000000000 --- a/utils/post-processing/filament-weight.pl +++ /dev/null @@ -1,31 +0,0 @@ -#!/usr/bin/perl -i -# -# Post-processing script for adding weight and cost of required -# filament to G-code output. - -use strict; -use warnings; - -# example densities, adjust according to filament specifications -use constant PLA_P => 1.25; # g/cm3 -use constant ABS_P => 1.05; # g/cm3 - -# example costs, adjust according to filament prices -use constant PLA_PRICE => 0.05; # EUR/g -use constant ABS_PRICE => 0.02; # EUR/g -use constant CURRENCY => "EUR"; - -while (<>) { - if (/^(;\s+filament\s+used\s+=\s.*\((\d+(?:\.\d+)?)cm3)\)/) { - my $pla_weight = $2 * PLA_P; - my $abs_weight = $2 * ABS_P; - - my $pla_costs = $pla_weight * PLA_PRICE; - my $abs_costs = $abs_weight * ABS_PRICE; - - printf "%s or %.2fg PLA/%.2fg ABS)\n", $1, $pla_weight, $abs_weight; - printf "; costs = %s %.2f (PLA), %s %.2f (ABS)\n", CURRENCY, $pla_costs, CURRENCY, $abs_costs; - } else { - print; - } -} diff --git a/utils/post-processing/flowrate.pl b/utils/post-processing/flowrate.pl deleted file mode 100755 index f29d2312d..000000000 --- a/utils/post-processing/flowrate.pl +++ /dev/null @@ -1,53 +0,0 @@ -#!/usr/bin/perl -i - -# -# Post-processing script for calculating flow rate for each move - -use strict; -use warnings; - -use constant PI => 3.141592653589793238; -my @filament_diameter = split /,/, $ENV{SLIC3R_FILAMENT_DIAMETER}; - -my $E = 0; -my $T = 0; -my ($X, $Y, $F); -while (<>) { - if (/^G1.*? F([0-9.]+)/) { - $F = $1; - } - if (/^G1 X([0-9.]+) Y([0-9.]+).*? E([0-9.]+)/) { - my ($x, $y, $e) = ($1, $2, $3); - my $e_length = $e - $E; - if ($e_length > 0 && defined $X && defined $Y) { - my $dist = sqrt( (($x-$X)**2) + (($y-$Y)**2) ); - if ($dist > 0) { - my $mm_per_mm = $e_length / $dist; # dE/dXY - my $mm3_per_mm = ($filament_diameter[$T] ** 2) * PI/4 * $mm_per_mm; - my $vol_speed = $F/60 * $mm3_per_mm; - my $comment = sprintf ' ; dXY = %.3fmm ; dE = %.5fmm ; dE/XY = %.5fmm/mm; volspeed = %.5fmm\x{00B3}/sec', - $dist, $e_length, $mm_per_mm, $vol_speed; - s/(\R+)/$comment$1/; - } - } - $E = $e; - $X = $x; - $Y = $y; - } - if (/^G1 X([0-9.]+) Y([0-9.]+)/) { - $X = $1; - $Y = $2; - } - if (/^G1.*? E([0-9.]+)/) { - $E = $1; - } - if (/^G92 E0/) { - $E = 0; - } - if (/^T(\d+)/) { - $T = $1; - } - print; -} - -__END__ diff --git a/utils/post-processing/prowl-notification.pl b/utils/post-processing/prowl-notification.pl deleted file mode 100755 index 5a5e1ca53..000000000 --- a/utils/post-processing/prowl-notification.pl +++ /dev/null @@ -1,21 +0,0 @@ -#!/usr/bin/perl -# -# Example post-processing script for sending a Prowl notification upon -# completion. See http://www.prowlapp.com/ for more info. - -use strict; -use warnings; - -use File::Basename qw(basename); -use WebService::Prowl; - -# set your Prowl API key here -my $apikey = ''; - -my $file = basename $ARGV[0]; -my $prowl = WebService::Prowl->new(apikey => $apikey); -my %options = (application => 'Slic3r', - event =>'Slicing Done!', - description => "$file was successfully generated"); -printf STDERR "Error sending Prowl notification: %s\n", $prowl->error - unless $prowl->add(%options); diff --git a/utils/post-processing/z-every-line.pl b/utils/post-processing/z-every-line.pl deleted file mode 100755 index aaf57e172..000000000 --- a/utils/post-processing/z-every-line.pl +++ /dev/null @@ -1,24 +0,0 @@ -#!/usr/bin/perl -i - -use strict; -use warnings; - -my $z = 0; - -# read stdin and any/all files passed as parameters one line at a time -while (<>) { - # if we find a Z word, save it - $z = $1 if /Z\s*(\d+(\.\d+)?)/; - - # if we don't have Z, but we do have X and Y - if (!/Z/ && /X/ && /Y/ && $z > 0) { - # chop off the end of the line (incl. comments), saving chopped section in $1 - s/\s*([\r\n\;\(].*)/" Z$z $1"/es; - # print start of line, insert our Z value then re-add the chopped end of line - # print "$_ Z$z $1"; - } - #else { - # nothing interesting, print line as-is - print or die $!; - #} -} diff --git a/utils/send-gcode.pl b/utils/send-gcode.pl deleted file mode 100644 index 0b803baa6..000000000 --- a/utils/send-gcode.pl +++ /dev/null @@ -1,37 +0,0 @@ -#!/usr/bin/env perl - -use strict; -use warnings; - -BEGIN { - use FindBin; - use lib "$FindBin::Bin/../lib"; - use local::lib "$FindBin::Bin/../local-lib"; -} - -use Slic3r; - -die "Usage: send-gcode.pl SERIALPORT BAUDRATE GCODE_FILE\n" - if @ARGV != 3; - -my $serial = Slic3r::GCode::Sender->new($ARGV[0], $ARGV[1]); -1 until $serial->is_connected; -print "Connected to printer\n"; - -{ - local $/ = "\n"; - Slic3r::open(\my $fh, '<', $ARGV[2]) - or die "Unable to open $ARGV[2]: $!\n"; - binmode $fh, ':utf8'; - while (<$fh>) { - $serial->send($_); - } - close $fh; -} - -while ((my $queue_size = $serial->queue_size) > 0) { - printf "Queue size: %d\n", $queue_size; -} -$serial->disconnect; - -__END__ diff --git a/utils/split_stl.pl b/utils/split_stl.pl deleted file mode 100755 index 56217de4b..000000000 --- a/utils/split_stl.pl +++ /dev/null @@ -1,65 +0,0 @@ -#!/usr/bin/perl -# This script splits a STL plate into individual files - -use strict; -use warnings; - -BEGIN { - use FindBin; - use lib "$FindBin::Bin/../lib"; - use local::lib "$FindBin::Bin/../local-lib"; -} - -use File::Basename qw(basename); -use Getopt::Long qw(:config no_auto_abbrev); -use Slic3r; -$|++; - -my %opt = (); -{ - my %options = ( - 'help' => sub { usage() }, - 'ascii' => \$opt{ascii}, - ); - GetOptions(%options) or usage(1); - $ARGV[0] or usage(1); -} - -{ - my $model = Slic3r::Model->load_stl($ARGV[0], basename($ARGV[0])); - my $basename = $ARGV[0]; - $basename =~ s/\.[sS][tT][lL]$//; - - my $part_count = 0; - my $mesh = $model->objects->[0]->volumes->[0]->mesh; - foreach my $new_mesh (@{$mesh->split}) { - $new_mesh->repair; - - my $new_model = Slic3r::Model->new; - $new_model - ->add_object() - ->add_volume(mesh => $new_mesh); - - $new_model->add_default_instances; - - my $output_file = sprintf '%s_%02d.stl', $basename, ++$part_count; - printf "Writing to %s\n", basename($output_file); - $new_model->store_stl($output_file, !$opt{ascii}); - } -} - - -sub usage { - my ($exit_code) = @_; - - print <<"EOF"; -Usage: split_stl.pl [ OPTIONS ] file.stl - - --help Output this usage screen and exit - --ascii Generate ASCII STL files (default: binary) - -EOF - exit ($exit_code || 0); -} - -__END__ diff --git a/utils/stl-to-amf.pl b/utils/stl-to-amf.pl deleted file mode 100755 index bb88b2161..000000000 --- a/utils/stl-to-amf.pl +++ /dev/null @@ -1,74 +0,0 @@ -#!/usr/bin/perl -# This script converts a STL file to AMF - -use strict; -use warnings; - -BEGIN { - use FindBin; - use lib "$FindBin::Bin/../lib"; - use local::lib "$FindBin::Bin/../local-lib"; -} - -use File::Basename qw(basename); -use Getopt::Long qw(:config no_auto_abbrev); -use Slic3r; -$|++; - -my %opt = (); -{ - my %options = ( - 'help' => sub { usage() }, - 'distinct-materials' => \$opt{distinct_materials}, - ); - GetOptions(%options) or usage(1); - $ARGV[0] or usage(1); -} - -{ - my @models = map Slic3r::Model->load_stl($_, basename($_)), @ARGV; - my $output_file = $ARGV[0]; - $output_file =~ s/\.[sS][tT][lL]$/.amf.xml/; - - my $new_model = Slic3r::Model->new; - - if ($opt{distinct_materials} && @models > 1) { - my $new_object = $new_model->add_object; - for my $m (0 .. $#models) { - my $model = $models[$m]; - $new_model->set_material($m, { Name => basename($ARGV[$m]) }); - $new_object->add_volume( - material_id => $m, - facets => $model->objects->[0]->volumes->[0]->facets, - vertices => $model->objects->[0]->vertices, - ); - } - } else { - foreach my $model (@models) { - $new_model->add_object( - vertices => $model->objects->[0]->vertices, - )->add_volume( - facets => $model->objects->[0]->volumes->[0]->facets, - ); - } - } - - printf "Writing to %s\n", basename($output_file); - $new_model->store_amf($output_file); -} - - -sub usage { - my ($exit_code) = @_; - - print <<"EOF"; -Usage: amf-to-stl.pl [ OPTIONS ] file.stl [ file2.stl [ file3.stl ] ] - - --help Output this usage screen and exit - --distinct-materials Assign each STL file to a different material - -EOF - exit ($exit_code || 0); -} - -__END__ diff --git a/utils/zsh/README.markdown b/utils/zsh/README.markdown deleted file mode 100644 index e84b94310..000000000 --- a/utils/zsh/README.markdown +++ /dev/null @@ -1,21 +0,0 @@ -# ZSH Completions for Slic3r - -To enable zsh(1) completions for Slic3r, add the following to your -``~/.zshrc`` file, replacing ``/path/to/Slic3r/`` with the actual path -to your Slic3r directory: - - typeset -U fpath - - if [[ -d /path/to/Slic3r/utils/zsh/functions ]]; then - fpath=(/path/to/Slic3r/utils/zsh/functions $fpath) - fi - - autoload -Uz compinit - compinit - zstyle ':completion:*' verbose true - zstyle ':completion:*:descriptions' format '%B%d%b' - zstyle ':completion:*:messages' format '%d' - zstyle ':completion:*:warnings' format 'No matches for %d' - zstyle ':completion:*' group-name '%d' - -See the zshcompsys(1) man page for further details. diff --git a/utils/zsh/functions/_slic3r b/utils/zsh/functions/_slic3r deleted file mode 100644 index cea887cc6..000000000 --- a/utils/zsh/functions/_slic3r +++ /dev/null @@ -1,118 +0,0 @@ -#compdef -P slic3r(|.pl|.exe) -# -# Slic3r completions configuration for zsh(1). - -# Currently undocumented options: -# --debug, --gui, --ignore-nonexistent-config -# --acceleration, --perimeter-acceleration, --infill-acceleration - -_arguments -S \ - '(- *)--help[output usage screen and exit]' \ - '(- *)--version[output the version of Slic3r and exit]' \ - '--save[save configuration to file]:config output file:_files -g "*.(#i)ini(-.)"' \ - '*--load[load configuration from file]:config input file:_files -g "*.(#i)ini(-.)"' \ - '(--output -o)'{--output,-o}'[specify output file]:output file:_files -g "*.(#i)(gcode|svg)(-.)"' \ - '(--threads -j)'{--threads,-j}'[specify number of threads to use]:number of threads' \ - \ - '--output-filename-format[specify output filename format]:output filename format' \ - '*--post-process[specify post-processing script]:post-processing script file:_files' \ - '--export-svg[export SVG containing slices instead of G-code]' \ - '(--merge -m)'{--merge,-m}'[merge multiple input files into a single print]' \ - \ - '*--nozzle-diameter[specify nozzle diameter]:nozzle diameter in mm' \ - '--print-center[specify print center coordinates]:print center coordinates in mm,mm' \ - '--z-offset[specify Z-axis offset]:Z-axis offset in mm' \ - '--gcode-flavor[specify the type of G-code to generate]:G-code flavor:(reprap teacup repetier makerware sailfish mach3 machinekit smoothie no-extrusion)' \ - '(--use-relative-e-distances --no-use-relative-e-distances)'--{no-,}use-relative-e-distances'[disable/enable relative E values]' \ - '--extrusion-axis[specify letter associated with the extrusion axis]:extrusion axis letter' \ - '(--gcode-arcs --no-gcode-arcs)'--{no-,}gcode-arcs'[disable/enable G2/G3 commands for native arcs]' \ - '(--gcode-comments --no-gcode-comments)'--{no-,}gcode-comments'[disable/enable verbose G-code comments]' \ - \ - '*--filament-diameter[specify raw filament diameter]:raw filament diameter in mm' \ - '*--extrusion-multiplier[specify multiplier for amount of plastic extruded]:extrusion multiplier' \ - '*--temperature[specify extrusion temperature]:extrusion temperature in Celsius' \ - '*--first-layer-temperature[specify extrusion temperature for the first layer]:first layer extrusion temperature in Celsius' \ - '--bed-temperature[specify heated bed temperature]:heated bed temperature in Celsius' \ - '--first-layer-bed-temperature[specify heated bed temperature for the first layer]:first layer heated bed temperature in Celsius' \ - \ - '--perimeter-extruder[specify extruder to use for printing perimeters]:extruder number' \ - '--infill-extruder[specify extruder to use for printing infill]:extruder number' \ - '--support-material-extruder[specify extruder to use for printing support material]:extruder number' \ - \ - '--travel-speed[specify speed of non-print moves]:speed of non-print moves in mm/s' \ - '--perimeter-speed[specify speed of print moves for perimeters]:speed of print moves for perimeters in mm/s' \ - '--external-perimeter-speed[specify speed of print moves for external perimeters]:speed of print moves for external perimeters in mm/s or % of --perimeter-speed' \ - '--small-perimeter-speed[specify speed of print moves for small perimeters]:speed of print moves for small perimeters in mm/s or % of --perimeter-speed' \ - '--infill-speed[specify speed of infill print moves]:speed of infill print moves in mm/s' \ - '--solid-infill-speed[specify speed of solid surface print moves]:speed of solid surface print moves in mm/s or % of --infill-speed' \ - '--top-solid-infill-speed[specify speed of top surface print moves]:speed of top surface print moves in mm/s or % of --solid-infill-speed' \ - '--bridge-speed[specify speed of bridge print moves]:speed of bridge print moves in mm/s' \ - '--first-layer-speed[specify speed of bottom layer print moves]:speed of bottom layer print moves in mm/s or % of normal speeds' \ - \ - '--layer-height[specify layer height]:layer height in mm' \ - '--first-layer-height[specify layer height for bottom layer]:layer height for bottom layer in mm or % of --layer-height' \ - '--infill-every-layers[specify infill for every N layers]:N layers' \ - \ - '--perimeters[specify number of perimeters]:number of perimeters' \ - '--solid-layers[specify number of solid layers to do for top/bottom surfaces]:number of layers for top/bottom surfaces' \ - '--fill-density[specify infill density]:infill density in percent' \ - '--fill-angle[specify infill angle]:infill angle in degrees' \ - '--fill-pattern[specify pattern used for infill]:infill pattern:(rectilinear line concentric honeycomb hilbertcurve archimedeanchords octagramspiral)' \ - '--solid-fill-pattern[specify pattern used for solid layers]:solid fill pattern:(rectilinear concentric hilbertcurve archimedeanchords octagramspiral)' \ - '--start-gcode[load initial G-code from file]:start G-code file:_files -g "*.(#i)(gcode)(-.)"' \ - '--end-gcode[load final G-code from file]:end G-code file:_files -g "*.(#i)(gcode)(-.)"' \ - '--layer-gcode[load layer-change G-code from file]:layer-change G-code file:_files -g "*.(#i)(gcode)(-.)"' \ - '(--support-material --no-support-material)'--{no-,}support-material'[disable/enable generation of support material for overhangs]' \ - '--support-material-threshold[specify support material threshold]:maximum slope angle for generating support material' \ - '--support-material-pattern[specify pattern used for support material]:support material pattern:(rectilinear honeycomb)' \ - '--support-material-spacing[specify spacing between support material lines]:spacing between support material lines in mm' \ - '--support-material-angle[specify support material angle]:support material angle in degrees' \ - '(--randomize-start --no-randomize-start)'--{no-,}randomize-start'[disable/enable randomization of starting point across layers]' \ - '(--extra-perimeters --no-extra-perimeters)'--{no-,}extra-perimeters'[disable/enable generation of extra perimeters when needed]' \ - \ - '--retract-length[specify filament retraction length when pausing extrusion]:filament retraction length in mm' \ - '--retract-speed[specify filament retraction speed]:filament retraction speed in mm/s' \ - '--retract-restart-extra[specify filament length to extrude for compensating retraction]: filament lenght in mm' \ - '--retract-before-travel[specify minimum travel length for activating retraction]:minimum travel length for activating retraction in mm' \ - '--retract-lift[specify Z-axis lift for use when retracting]:Z-axis lift in mm' \ - \ - '(--cooling --no-cooling)'--{no-,}cooling'[disable/enable fan and cooling control]' \ - '--min-fan-speed[specify minimum fan speed]:minimum fan speed in percent' \ - '--max-fan-speed[specify maximum fan speed]:maximum fan speed in percent' \ - '--bridge-fan-speed[specify fan speed to use for bridging]:bridging fan speed in percent' \ - '--fan-below-layer-time[specify maximum layer print time before activating fan]:maximum layer print time in seconds' \ - '--slowdown-below-layer-time[specify maximum layer print time before slowing down printing]:maximum layer print time in seconds' \ - '--min-print-speed[specify minimum print speed]:minimum print speed in mm/s' \ - '--disable-fan-first-layers[specify number of bottom layers to print before activating fan]:number of bottom layers' \ - '(--fan-always-on --no-fan-always-on)'--{no-,}fan-always-on'[disable/enable deactivation of fan]' \ - \ - '--skirts[specify number of skirts]:number of skirts' \ - '--skirt-distance[specify distance between innermost skirt and object]:distance between innermost skirt and object in mm' \ - '--skirt-height[specify number of skirt layers]:number of skirt layers' \ - '--brim-width[specify brim width]:width of brim in mm' \ - \ - '--scale[specify object scaling factor]:object scaling factor in percent' \ - '--rotate[specify object rotation angle]:object rotation angle in degrees' \ - '(--duplicate-grid)--duplicate[specify number of duplicates for auto-arrange]:number of duplicates for auto-arrange' \ - '(--duplicate-grid)--bed-size[specify bed size for auto-arrange]:bed size for auto-arrange in mm,mm' \ - '(--duplicate --bed-size)--duplicate-grid[specify number of duplicates for grid arrangement]:number of duplicates for grid arrangement as x,y' \ - '--duplicate-distance[specify distance between duplicates]:distance between duplicates in mm' \ - \ - '(--complete-objects --no-complete-objects)'--{no-,}complete-objects'[disable/enable completion of each object before starting a new one]' \ - '--extruder-clearance-radius[specify radius above which extruder will not collide with anything]:radius in mm' \ - '--extruder-clearance-height[specify maximum vertical extruder depth]:maximum vertical extruder depth in mm' \ - \ - '--notes[specify notes to be added as comments to the output file]:notes' \ - \ - '--extrusion-width[specify extrusion width]:extrusion width in mm or % of --layer-height' \ - '--first-layer-extrusion-width[specify extrusion width for first layer]:first layer extrusion width in mm or % og --layer-height' \ - '--perimeters-extrusion-width[specify extrusion width for perimeters]:perimeter extrusion width in mm or % of --layer-height' \ - '--infill-extrusion-width[specify extrusion width for infill]:infill extrusion width in mm or % of --layer-height' \ - '--support-material-extrusion-width[specify extrusion width for support material]:support material extrusion width in mm or % of --layer-height' \ - '--bridge-flow-ratio[specify multiplier for extrusion when bridging]:bridge extrusion multiplier' \ - \ - '*:input file:_files -g "*.(#i)(stl|obj|amf|xml|prusa)(-.)"' - -# Local Variables: *** -# mode:sh *** -# End: ***