home *** CD-ROM | disk | FTP | other *** search
/ AmigActive 20 / AACD20.BIN / AACD / Graphics / PerfectPaint / rexx / text / Circle_Text.rx < prev    next >
Text File  |  1999-08-30  |  870b  |  61 lines

  1. /*
  2.     Arexx Text Script
  3. */
  4.  
  5.     call addlib("rexxmathlib.library", 5, -30, 0)
  6.  
  7.     options results
  8.      parse ARG Port x1 y1 b
  9.     ADDRESS value Port
  10.  
  11.     Pi=3.1415926/180
  12.     
  13.     pp_AvoidRefresh
  14.  
  15.     r=100
  16.  
  17.     pp_DialogInit 150 55 "*Circle*Text*" 1
  18.         pp_Integer 0 60 5 50 16 "Radius" 1 r
  19.     pp_Dialog
  20.     rc=result
  21.     if rc=0 then
  22.         do
  23.             pp_PermitRefresh
  24.             EXIT
  25.         end    
  26.  
  27.     pp_UpdateUndo    
  28.  
  29.  
  30.     pp_GetText
  31.     texte=result
  32.     
  33.     pp_GetDialog 0
  34.     r=result
  35.  
  36.     s0=length(texte)
  37.  
  38.     a=360/s0
  39.     j=1
  40.     alpha=0
  41.  
  42.   DO i=180 To -180 by a*-1
  43.     x = trunc(Sin(i*Pi)*r+x1+0.5,0)
  44.     y = trunc(Cos(i*Pi)*r+y1+0.5,0)
  45.         t=substr(texte,j,1)
  46.  
  47.         if t~="   " then DO
  48.             pp_TextRotate alpha
  49.             pp_TextMake t
  50. /*            ADDRESS COMMAND 'rx PerfectPaint:Rexx/Text/BiColor.rx '||Port||' '||x||' '||y||' 0'*/
  51.             pp_TextDraw x y
  52. /*            ADDRESS value Port*/
  53.         end
  54.         alpha=alpha-a
  55.         j=j+1
  56.     END
  57.  
  58.     pp_Refresh
  59.     pp_TextRestore
  60.     pp_TextMake
  61.     pp_PermitRefresh