G-code preview using OpenPythonSCAD

After adding/adjusting modules (updated at: gcodepreview/gcodepreviewing.scad at main · WillAdams/gcodepreview · GitHub )

we can make a file like to:

include <C:/Users/willa/OneDrive/Documents/RapCAD/Libraries/gcodepreview.scad>

stocklength = 219;
stockwidth = 150;
stockthickness = 8.35;
toolradius = 1.5875;

retractheight = 3;
feedrate = 850;
plungerate = 425;

module radialflattenX(xbegin, xend, ybe, xcenter, ycenter, toolnumber, tr, depth, retract, plungerate, feedrate) {
  for (i = [xbegin / tr : abs(tr) : xend / tr]) {
    plungegcutretract(i * tr, ybe, -depth, xcenter, ycenter, -depth, toolnumber, retract, plungerate, feedrate);
  }
}

module radialflattenY(ybegin, yend, xbe, xcenter, ycenter, toolnumber, tr, depth, retract, plungerate, feedrate) {
  for (i = [ybegin / tr : abs(tr) : yend / tr]) {
    plungegcutretract(xbe, i * tr, -depth, xcenter, ycenter, -depth, toolnumber, retract, plungerate, feedrate);
  }
}

difference() {

setupcut(stocklength, stockwidth, stockthickness, “Top”, “Lower-Left”);

  toolchange(101);

  rapid(0,0,retractheight * 2,0,0,retractheight);

radialflattenX(0, stocklength, stockwidth, stocklength/2, stockwidth/2, 101, toolradius, toolradius, retractheight, plungerate, feedrate);
radialflattenX(0, stocklength, 0, stocklength/2, stockwidth/2, 101, toolradius, toolradius, retractheight, plungerate, feedrate);
radialflattenY(0, stockwidth, 0, stocklength/2, stockwidth/2, 101, toolradius, toolradius, retractheight, plungerate, feedrate);
radialflattenY(0, stockwidth, stocklength, stocklength/2, stockwidth/2, 101, toolradius, toolradius, retractheight, plungerate, feedrate);

}

which renders as:

and loads into CAMotics w/o errors as:

1 Like