CLEAR double fdat[0], off, pi, sa, ea, c int et, k long v[0], cv k=1 pi=3.14159265359 cv=@cview :start GETMENU "Select option...", "Distance", "Thru Pnt" IF (@key==2) GOTO thru IF (@error==1) GOTO end :offset GETFLT "Enter offset distance...", .5, off IF (@key==-3) GOTO end IF (@key==-2) GOTO start :loop1 SET mask, 3 GETENT "Select arc or circle to offset...", et IF (@key==-3) GOTO end IF (@key==-2) GOTO offset IF (@key==-1) GOTO end SET cview, @intdat[8] ARRAY v[1] v[0]=@intdat[8] VIEW v[0], @cviewmat[0], @cviewmat[1], @cviewmat[2], @cviewmat[3], @cviewmat[4], @cviewmat[5], @cviewmat[6], @cviewmat[7], @cviewmat[8] GETCUR "Pick side on which to offset...", 1, 1 IF (@key==-3) GOTO end IF (@key==-2) GOTO loop1 IF (@key==-1) GOTO end ARRAY fdat[6] fdat[0]=@fltdat[0] fdat[1]=@fltdat[1] fdat[2]=@fltdat[2] fdat[3]=@fltdat[3] fdat[4]=@fltdat[4] fdat[5]=@fltdat[5] c=sqrt(((@xworld-fdat[0])*(@xworld-fdat[0]))+((@yworld-fdat[1])*(@yworld-fdat[1]))) IF (@key==-2) GOTO loop1 IF (c>=fdat[3]) GOTO out sa=fdat[4]/2/pi*360 ea=(fdat[5]/2/pi*360)+sa IF ((fdat[3]-off)<=0) GOTO out ARC fdat[0], fdat[1], fdat[2], (fdat[3]-off), sa, ea, v[0] GOTO loop1 :out sa=fdat[4]/2/pi*360 ea=(fdat[5]/2/pi*360)+sa ARC fdat[0], fdat[1], fdat[2], (fdat[3]+off), sa, ea, v[0] GOTO loop1 :thru SET mask, 3 GETENT "Select arc or circle to offset...", et SET cview, @intdat[8] ARRAY v[1] v[0]=@intdat[8] VIEW v[0], @cviewmat[0], @cviewmat[1], @cviewmat[2], @cviewmat[3], @cviewmat[4], @cviewmat[5], @cviewmat[6], @cviewmat[7], @cviewmat[8] IF (@key==-3) GOTO end IF (@key==-2) GOTO start IF (@key==-1) GOTO end GETPOS "Pick radius point for new arc/circle...", k IF (@key==-3) GOTO end IF (@key==-2) GOTO thru IF (@key==-1) GOTO thru k=@key ARRAY fdat[6] fdat[0]=@fltdat[0] fdat[1]=@fltdat[1] fdat[2]=@fltdat[2] fdat[3]=@fltdat[3] fdat[4]=@fltdat[4] fdat[5]=@fltdat[5] c=sqrt(((@xworld-fdat[0])*(@xworld-fdat[0]))+((@yworld-fdat[1])*(@yworld-fdat[1]))) sa=fdat[4]/2/pi*360 ea=(fdat[5]/2/pi*360)+sa ARC fdat[0], fdat[1], fdat[2], c, sa, ea, v[0] GOTO thru :end SET cview, cv CLEAR CLEARSEL 1 EXIT