Spinning BackDrop
This examples draw a spinning coloured backdrop using the goruaud triangle filler.
PB Version = Any
[pbcode]
Setfps 60
Steps=36
Dim Palette(Steps)
Dim Palette2(Steps)
For lp=0 to steps
Palette(lp)=rndrgb()
next
Do
DrawBackDrop(400,300,600,Steps,Palette())
Sync
loop
Function DrawBackDrop(Xpos#,Ypos#,Radius#,Steps,Colours())
Static BaseAngle#=Wrapangle(Baseangle#,1.0)
segmentsize#=360.0/Steps
c1=Colours(0)
c2=Colours(1)
firstc2=c2
#if PBVersion<=170
lockbuffer
#endif
for vert=0 to steps-1
c3=Colours(Vert+1)
angle#=BaseAngle#+(vert*segmentsize#)
x2#=xpos#+cosRadius(angle#,Radius#)
y2#=ypos#+sinRadius(angle#,Radius#)
if Vert+1<Steps
angle#=BaseAngle#+(vert+1)*segmentsize#
else
angle#=BaseAngle#+0*segmentsize#
c3=FirstC2
endif
x3#=xpos#+cosRadius(angle#,Radius#)
y3#=ypos#+sinRadius(angle#,Radius#)
GouraudTri xpos#,ypos#,c1,x2#,y2#,c2,x3#,y3#,c3
c2=c3
next
#if PBVersion<=170
unlockbuffer
#endif
EndFunction
[/pbcode]