## Can you read this? - another draw text (hopefully temporary)

Henko
Posts: 797
Joined: Tue Apr 09, 2013 12:23 pm
Windows
Location: Groningen, Netherlands
Flag:

### Can you read this? - another draw text (hopefully temporary)

option base 1 ! option angle degrees ! randomize
dim tok(40,10,2)
tokens(tok)
graphics ! graphics clear .8,.8,.8 ! fill color .8,.8,.8
graphics lock
for angl=0 to 340 step 22
alph=.3+rnd(.7) ! c=rnd(100) ! siz=3+int(angl/20)
if c<25 then ! col\$="z" ! goto lab ! end if
if c<50 then ! col\$="r" ! goto lab ! end if
if c<75 then ! col\$="b" ! goto lab ! end if
col\$="g"
lab:
r=30+angl/15 ! x=r*cos(-angl) ! y=r*sin(-angl)
next angl
graphics unlock
end

def draw_text(txt\$,col\$,siz,alph,x,y,angl,tok(,,))
set_color(col\$)
draw alpha alph ! lt=len(txt\$) ! fac=siz/4
ca=cos(-angl) ! sa=sin(-angl) ! draw size 1+int(siz/10)
for i=1 to lt
t\$=substr\$(txt\$,i,i) ! t=asc(t\$)
if t>96 then ! k=t-82 ! goto dt_loop1 ! end if
if t>47 and t<58 then ! k=t-44 ! goto dt_loop1 ! end if
if t=32 then k=1 ! if t=44 then k=2
if t=46 then k=3 ! if t=63 then k=14
dt_loop1:
r=siz*(i-1) ! xd=x+r*ca ! yd=y+r*sa
for j=1 to 10
xl=fac*tok(k,j,1) ! yl=fac*tok(k,j,2)
if xl<0 then dt_loop2
xp=xd+xl*ca-yl*sa ! yp=yd+xl*sa+yl*ca
if j=1 then draw to xp,yp else draw line to xp,yp
next j
dt_loop2:
next i
end def

def set_color(col\$)
if col\$="z" then draw color 0,0,0
if col\$="r" then draw color 1,0,0
if col\$="g" then draw color 0,.6,0
if col\$="b" then draw color 0,0,1
if col\$="w" then draw color 1,1,1
end def

def tokens(tok(,,))
for i=1 to 40 ! for j=1 to 10 ! for k=1 to 2
next k ! next j ! next i
data -1,0, 0,0, 0,0, 0,0, 0,0, 0,0, 0,0, 0,0, 0,0, 0,0 '
data 1.5,3, 2,3, 2,3.5, 1,4, 1.5,3.5, 1.5,3, -1,0,0,0,0,0,0,0 ',
data 1,3.5, 1.5,3.5, 1.5,4, 1,4, -1,0,0,0,0,0,0,0,0,0,0,0 '.
data 0,1, 0,3, 1,4, 2,4, 3,3, 3,1, 2,0, 1,0, 0,1, -1,0 '0
data 1,1, 2,0, 2,4, 1,4, 3,4, -1,0, 0,0, 0,0, 0,0, 0,0 '1
data 0,1, 1,0, 2,0, 3,1, 0,4, 3,4, -1,0, 0,0, 0,0, 0,0 '2
data 0,0, 3,0, 2,1, 3,2, 3,3, 2,4, 1,4, 0,3, -1,0, 0,0 '3
data 3,3, 0,3, 2,0, 2,4, 2,3, 3,3, -1,0, 0,0, 0,0, 0,0 '4
data 3,0, 1,0, 0,2, 2,2, 3,3, 2,4, 0,4, -1,0, 0,0, 0,0 '5
data 2,0, 0,2, 0,3, 1,4, 2,4, 3,3, 2,2, 0,2, -1,0, 0,0 '6
data 0,0, 3,0, 0,4, 1.5,2, 1,2, 2,2, -1,0, 0,0, 0,0, 0,0 '7
data 0,2, 0,0, 3,0, 3,2, 0,2, 0,4, 3,4, 3,2, -1,0, 0,0 '8
data 2.3,2, 1,2, 0,1, 1,0, 2,0, 3,1, 1,4, -1,0, 0,0, 0,0 '9
data 0,1, 1.5,0, 3,1, 1,2.5, 1,3.5, .5,4, 1.5,4, 1,3.5, -1,0, 0,0 '?
data 0,4, 1.5,0, 3,4, 2.6,3, 0.4,3, -1,0, 0,0, 0,0, 0,0, 0,0 'a
data 2,2, 0,2, 0,0, 2,0, 3,1, 2,2, 3,3, 2,4, 0,4, 0,2 'b
data 3,1, 2,0, 1,0, 0,1, 0,3, 1,4, 2,4, 3,3, -1,0, 0,0 'c
data 0,0, 0,4, 2,4, 3,3, 3,1, 2,0, 0,0, -1,0, 0,0, 0,0 'd
data 3,0, 0,0, 0,2, 2,2, 0,2, 0,4, 3,4, -1,0, 0,0, 0,0 'e
data 3,0, 0,0, 0,2, 2,2, 0,2, 0,4, -1,0, 0,0, 0,0, 0,0 'f
data 3,1, 2,0, 1,0, 0,1, 0,3, 1,4, 2,4, 3,3, 3,2, 1,2 'g
data 0,0, 0,4, 0,2, 3,2, 3,0, 3,4, -1,0, 0,0, 0,0, 0,0 'h
data 1,0, 3,0, 2,0, 2,4, 3,4, 1,4, -1,0, 0,0, 0,0, 0,0 'i
data 1,0, 3,0, 3,3, 2,4, 1,4, 0,3, -1,0, 0,0, 0,0, 0,0 'j
data 0,0, 0,4, 0,3, 3,0, 1.5,1.5, 3,4, -1,0, 0,0, 0,0, 0,0 'k
data 0,0, 0,4, 3,4, -1,0, 0,0, 0,0, 0,0, 0,0, 0,0, 0,0 'l
data 0,4, 0,0, 1.5,2, 3,0, 3,4, -1,0, 0,0, 0,0, 0,0, 0,0 'm
data 0,4, 0,0, 3,4, 3,0, -1,0, 0,0, 0,0, 0,0, 0,0, 0,0 'n
data 0,1, 0,3, 1,4, 2,4, 3,3, 3,1, 2,0, 1,0, 0,1, -1,0 'o
data 0,4, 0,0, 2,0, 3,1, 2,2, 0,2, -1,0, 0,0, 0,0, 0,0 'p
data 2,4, 1,4, 0,3, 0,1, 1,0, 2,0, 3,1, 3,3, 2,3, 3,4 'q
data 0,4, 0,0, 2,0, 3,1, 2,2, 0,2, 1,2, 3,4, -1,0, 0,0 'r
data 3,0, 1,0, 0,1, 1,2, 2,2, 3,3, 2,4, 0,4, -1,0, 0,0 's
data 0,0, 3,0, 1.5,0, 1.5,4, -1,0, 0,0, 0,0, 0,0, 0,0, 0,0 't
data 0,0, 0,3, 1,4, 2,4, 3,3, 3,4, 3,0, -1,0, 0,0, 0,0 'u
data 0,0, 1.5,4, 3,0, -1,0, 0,0, 0,0, 0,0, 0,0, 0,0, 0,0 'v
data 0,0, 0,4, 1.5,2, 3,4, 3,0, -1,0, 0,0, 0,0, 0,0, 0,0 'w
data 0,0, 3,4, 1.5,2, 0,4, 3,0, -1,0, 0,0, 0,0, 0,0, 0,0 'x
data 0,0, 1.5,2, 0,4, 3,0, -1,0, 0,0, 0,0, 0,0, 0,0, 0,0 'y
data 0,0, 3,0, 0,4, 3,4, -1,0, 0,0, 0,0, 0,0, 0,0, 0,0 'z
end def