Removed utilities depending on Perl (post processing scripts),
removed non-maintained utilities.
This commit is contained in:
parent
c3dc562ab0
commit
1398d5d09a
20
Build.PL
20
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";
|
||||
|
642
serial.txt
642
serial.txt
@ -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
|
@ -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__
|
@ -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__
|
@ -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:" }
|
||||
];
|
||||
}
|
@ -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);
|
||||
}
|
@ -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__
|
@ -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;
|
||||
}
|
||||
}
|
@ -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)
|
@ -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;
|
||||
}
|
||||
}
|
@ -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__
|
@ -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);
|
@ -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 $!;
|
||||
#}
|
||||
}
|
@ -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__
|
@ -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__
|
@ -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__
|
@ -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.
|
@ -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: ***
|
Loading…
Reference in New Issue
Block a user