'Macro M2223  Bolt circle DrillSub main()Dim P101 As IntegerDim P11 As IntegerBegin Dialog DiaLogName1 60,60,175,150, "Drill Circle"TEXT 10,10,80,10, "#26 Z TOP "TEXT 10,22,80,10, "#18 Bolt Circle Radius"TEXT 10,34,80,10, "#7 Hole Depth"TEXT 10,46,80,10, "#1 Start Angle"TEXT 10,58,80,10, "#11 Num of HOLES"TEXT 10,70,80,10, "#3 Drill Cycle "TEXT 10,82,80,10, "#9 Drilling Feedrate"TEXT 10,94,80,10, "#17 Peck Depth "Text 10,106,80,10, "#19 Spindle Speed"TEXTBOX 85,10,35,10, .ZtopTEXTBOX 85,22,35,10, .RadBCTEXTBOX 85,34,35,10, .DepthHTEXTBOX 85,46,35,10, .SangleTEXTBOX 85,58,35,10, .NholesTEXTBOX 85,70,35,10, .DCtypeTEXTBOX 85,82,35,10, .DrillFRTEXTBOX 85,94,35,10, .PDepthTEXTBOX 85,106,35,10, .SspeedOKBUTTON 85,129,35,12End DialogDim Dlg1 As DialogName1Dialog Dlg1Setvar (26, Dlg1.Ztop)Setvar (18, Dlg1.RadBC)Setvar (7, Dlg1.DepthH)Setvar (1, Dlg1.Sangle)Setvar (11, Dlg1.Nholes)Setvar (3, Dlg1.DCtype)Setvar (9, Dlg1.DrillFR)Setvar (17, Dlg1.Pdepth)Setvar (19, Dlg1.Sspeed)Setvar(24,GetDro(0))SetVar(25, GetDro(1))Code" #101=0"              		' Initialize counter Code" #102=#1"             		' Initialize current angle To A Code" #103=[360 / #11]"    		' Constant For incremental angular distance between holes Code" #104=[#26 + 0.1]"    		' Constant For rapid approach plane Code" #105=[#26 - #7]"     		' Constant For Z bottom position of holeCode" G0 Z#104 X#24 Y#25"N1:Code" #110=[#24 + COS[#102] * #18]" 	' Calculate X position For current hole based On current angle Code" #111=[#25 + SIN[#102] * #18]" 	' Calculate Y position For current hole based On current angleCode" M3 M8" Code" G#3 X#110 Y#111 R#104 Z#105 Q#17 F#9 S#19(Machine current hole)" Code" G80 (Cancel cycle)" Code" #101=[#101 + 1] "     		'Step counter Code" #102=[#102 + #103]"   		'Step current angle)P101= GetVAR(101)P11= GetVAR(11)While Ismoving()WendIf P101 <= (P11-1) Then GoTo n1 Else GoTo N99N99:Code" G0 Z#104 X#24 Y#25"Code"M5 M9"Code "M30"End SubEnd  