?
This commit is contained in:
88
nc_files/pocket_rect_lin.ngc
Executable file
88
nc_files/pocket_rect_lin.ngc
Executable file
@@ -0,0 +1,88 @@
|
||||
o<pocket_rect_lin> sub
|
||||
; o<frame_rect> call [x1][y1] [x2][y2] [ztop][zbot] [mode] [radius]
|
||||
|
||||
#<M_CONVENTIONAL> = [FIX[#7/1] MOD 2 EQ 1]
|
||||
#<M_BOTHWAYS> = [FIX[#7/2] MOD 2 EQ 1]
|
||||
#<M_PLUNGE> = [FIX[#7/4] MOD 2 EQ 1]
|
||||
#<M_OUTSIDE> = [FIX[#7/8] MOD 2 EQ 1]
|
||||
#<M_CLIMB> = [FIX[#7/1] MOD 2 EQ 0]
|
||||
#<M_ONEWAY> = [FIX[#7/2] MOD 2 EQ 0]
|
||||
#<M_HELIX> = [FIX[#7/4] MOD 2 EQ 0]
|
||||
#<M_INSIDE> = [FIX[#7/8] MOD 2 EQ 0]
|
||||
|
||||
G90 ; absolute x,y,z
|
||||
G90.1 ; absolute i,j,k
|
||||
M101 ; enable Z-axis (M102 disables)
|
||||
G17 ; select XY plane for arcs
|
||||
|
||||
#<td> = #<_td>
|
||||
#<tr> = [#<td>/2]
|
||||
o1 if [EXISTS[#<_z_clearance>]]
|
||||
#<z_clearance> = #<_z_clearance>
|
||||
o1 else
|
||||
#<z_clearance> = #5
|
||||
o1 endif
|
||||
o2 if [EXISTS[#<_rampang>]]
|
||||
#<rampang> = #<_rampang>
|
||||
o2 else
|
||||
#<rampang> = 5 ; degrees
|
||||
o2 endif
|
||||
o3 if [EXISTS[#<_stepover>]]
|
||||
#<stepover> = #<_stepover>
|
||||
o3 else
|
||||
#<stepover> = [#<td>*0.4]
|
||||
o3 endif
|
||||
|
||||
#<z_down> = #6
|
||||
#<z_lift> = [#6+#<td>*0.1]
|
||||
|
||||
#<minx> = #1
|
||||
#<maxx> = #3
|
||||
o11 if [#3 LT #1]
|
||||
#<minx> = #3
|
||||
#<maxx> = #1
|
||||
o11 endif
|
||||
|
||||
#<miny> = #2
|
||||
#<maxy> = #4
|
||||
o12 if [#4 LT #2]
|
||||
#<miny> = #4
|
||||
#<maxy> = #2
|
||||
o12 endif
|
||||
|
||||
#<xA> = [#<minx> + #<td>]
|
||||
#<xB> = [#<maxx> - #<td>]
|
||||
#<yA> = [#<miny> + #<td>]
|
||||
#<yB> = [#<maxy> - #<td>]
|
||||
|
||||
|
||||
|
||||
G0 Z#<z_clearance>
|
||||
G0 X[#<xA>] Y[#<yA>]
|
||||
G0 Z[#5]
|
||||
G1 Z[#6]
|
||||
|
||||
;#<y> = #<yA>
|
||||
#<i> = 0
|
||||
#<yT> = [#<yB>-#<yA>]
|
||||
#<imax> = FUP[#<yT>/#<stepover>]
|
||||
|
||||
o100 while [#<i> LE #<imax>]
|
||||
G1 Y[#<yA>+#<yT>/#<imax>*#<i>]
|
||||
o101 if [#<i> MOD 2 EQ 0]
|
||||
G1 X[#<xB>]
|
||||
o101 else
|
||||
G1 X[#<xA>]
|
||||
o101 endif
|
||||
|
||||
#<i> = [#<i>+1]
|
||||
o100 endwhile
|
||||
|
||||
o<frame_rect> call [#1][#2] [#3][#4] [#5][#6] [#7] [#8]
|
||||
|
||||
G0 Z#<z_clearance>
|
||||
|
||||
|
||||
o<pocket_rect> endsub
|
||||
|
||||
M2
|
||||
Reference in New Issue
Block a user