Created
August 6, 2016 05:04
-
-
Save snajpa/e9081ccef4a21bc0b0225e6e2ccc100f to your computer and use it in GitHub Desktop.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
gcode-outline.sh | |
#!/bin/bash | |
X_EDGE=$1 | |
Y_EDGE=$2 | |
Z_SAFE=3 | |
DEPTH=2 | |
PASSES=5 | |
BRIDGE_SIZE=0.2 | |
TOOL_DIA=1.5875 | |
c() { | |
echo "scale=4; $*" | bc | |
} | |
CORNER=$(c 0.0 - $TOOL_DIA) | |
echo "( Made by snajpa's bash madness )" | |
echo G90 | |
echo F300 | |
echo S1000 | |
echo G00 Z$Z_SAFE | |
echo G00 X$CORNER Y$CORNER | |
echo M03 | |
echo G04 P10.000000 | |
echo G01 Z0 | |
XMAX=$(c "$X_EDGE + $TOOL_DIA") | |
YMAX=$(c "$Y_EDGE + $TOOL_DIA") | |
XBRSTART=$(c "( $X_EDGE / 2 ) - ( $BRIDGE_SIZE / 2 ) - $TOOL_DIA") | |
XBREND=$(c "( $X_EDGE / 2 ) + ( $BRIDGE_SIZE / 2 ) + $TOOL_DIA") | |
YBRSTART=$(c "( $Y_EDGE / 2 ) - ( $BRIDGE_SIZE / 2 ) - $TOOL_DIA") | |
YBREND=$(c "( $Y_EDGE / 2 ) + ( $BRIDGE_SIZE / 2 ) + $TOOL_DIA") | |
ZDOWN=$(c "$DEPTH / $PASSES") | |
for pass in $(seq 1 $PASSES); do | |
ZNOW=$(c "0.0 - ($ZDOWN * $pass)") | |
echo G01 Z$ZNOW | |
echo G01 X$XBRSTART | |
echo G00 Z$Z_SAFE | |
echo G00 X$XBREND | |
echo G01 Z$ZNOW | |
echo G01 X$XMAX Y$CORNER | |
echo G01 Y$YBRSTART | |
echo G00 Z$Z_SAFE | |
echo G00 Y$YBREND | |
echo G01 Z$ZNOW | |
echo G01 X$XMAX Y$YMAX | |
echo G01 X$XBREND | |
echo G00 Z$Z_SAFE | |
echo G00 X$XBRSTART | |
echo G01 Z$ZNOW | |
echo G01 X$CORNER Y$YMAX | |
echo G01 Y$YBREND | |
echo G00 Z$Z_SAFE | |
echo G00 Y$YBRSTART | |
echo G01 Z$ZNOW | |
echo G01 X$CORNER Y$CORNER | |
done | |
echo G00 Z$Z_SAFE | |
echo M05 | |
echo M02 |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment