Microsoft Small Basic

Program Listing: KCK850-1
gw = 700
gh = 700
K=1

table_Couleurs()

GraphicsWindow.Width = gw
GraphicsWindow.Height = gh
width = 1 'Line widths
loops = 50 'Number of spirals
GraphicsWindow.PenWidth = width

For col = 1 To 12
GraphicsWindow.PenColor = colours[K]
offset = 2*Math.Pi*(col)/12
K=K+1
If K=13 Then
K=1
ENDIF
Draw()
EndFor

Sub Draw
For i = 1 To 360*loops
angle = 1.97*Math.Pi*(i-width)/360
radius = (i-width)/360*width*12
x0 = gw/2+radius*Math.Cos(angle+offset)
y0 = gh/2+radius*Math.Sin(angle+offset)

angle = 2*Math.Pi*(i+width)/360
radius = (i+width)/360*width*12
x1 = gw/2+radius*Math.Cos(angle+offset)
y1 = gh/2+radius*Math.Sin(angle+offset)

GraphicsWindow.DrawLine(x0,y0,x1,y1)


EndFor
EndSub


Sub table_Couleurs

colours[1]=GraphicsWindow.GetColorFromRGB (255,255,255) ' blanc
colours[4]=GraphicsWindow.GetColorFromRGB (15,0,55) 'bleu foncé
colours[2]=GraphicsWindow.GetColorFromRGB (0,0,175) ' bleu
colours[3]=GraphicsWindow.GetColorFromRGB (225,0,0) ' rouge
colours[8]=GraphicsWindow.GetColorFromRGB (125,00,0) ' rouge brique
colours[10]=GraphicsWindow.GetColorFromRGB (0,200,0) ' vert clair
colours[5]=GraphicsWindow.GetColorFromRGB (0,125,0) ' vert forest
colours[12]=GraphicsWindow.GetColorFromRGB (255,255,100) ' jaune
colours[7]=GraphicsWindow.GetColorFromRGB (255,200,250) ' rose bonbon
colours[9]=GraphicsWindow.GetColorFromRGB (255,200,100) ' saumon
colours[6]=GraphicsWindow.GetColorFromRGB (0,220,220) ' cyan
colours[11]=GraphicsWindow.GetColorFromRGB (0,0,100) ' bleu_foncé

Endsub