Source wurde am 15.07.2007 aus der MMJ-Quellcodesammlung (Dietmar Horn) in die Babyklappe auf XProfan.Com abgelegt:
Bildschirmschoner
Lauffähig ab Profan-Version 5.0
windowstyle $F0
window 0,0-%maxx,%maxy
cls 0
declare a%,x%,y%,x1%,y1%
declare maximalx%,maximaly%,dichtesinus%,dichtecosinus%,summedichte%,durchläufe%,farbe%
def sinus(3) int(mul(cos(mul(div(@%(1),@%(3)),Pi())),@%(2)))
def cosinus(3) int(mul(sin(mul(div(@%(1),@%(3)),Pi())),@%(2)))
let maximalx% = sub(div(%maxy,2),25)
let maximaly% = sub(div(%maxy,2),50)
let durchläufe% = 1
let dichtesinus% = 180
let dichtecosinus% = 180
let summedichte% = mul(add(dichtesinus%,dichtecosinus%),durchläufe%)
let farbe% = 0
windowstyle $F0
window 0,0-%maxx,%maxy
declare a%,b%,c%
cls 0
let a%=0
while lt(a%,summedichte%)
inc a%
inc farbe%
let x%=add(add(maximalx%,100),sinus(a%,maximaly%,dichtesinus%))
let y%=add(maximalx%,cosinus(a%,maximaly%,dichtecosinus%))
setpixel x%,y%,farbe%
wend
waitmouse
let a%=0
while lt(a%,summedichte%)
inc a%
inc farbe%
usepen 1,3,farbe%
let x%=add(add(maximalx%,100),sinus(a%,maximaly%,dichtesinus%))
let y%=add(maximalx%,cosinus(a%,maximaly%,dichtecosinus%))
line maximalx%,maximaly% - x%,y%
wend
waitmouse
let a%=0
while lt(a%,summedichte%)
inc a%
inc a%
inc farbe%
usepen 1,3,0
let x%=add(add(maximalx%,100),sinus(a%,maximaly%,dichtesinus%))
let y%=add(maximalx%,cosinus(a%,maximaly%,dichtecosinus%))
line add(maximalx%,50),add(maximaly%,50) - x%,y%
wend
waitmouse
cls 0
let farbe%=0
let a%=0
while lt(a%,%maxx)
add a%,3
inc farbe%
usepen 1,3,farbe%
line 0,%maxy - a%,0
line %maxx,%maxy - a%,0
line %maxx,0 - 0,a%
line 0,0 - a%,%maxy
wend
waitmouse
let a%=0
while lt(a%,%maxx)
add a%,5
inc farbe%
usepen 1,3,farbe%
line div(%maxx,2),0 - a%,%maxy
line div(%maxx,2), %maxy - a%,0
wend
waitmouse
let farbe%=270
let a%=0
while lt(a%,summedichte%)
inc a%
inc farbe%
usepen 1,0,farbe%
let x%=add(add(maximalx%,100),sinus(a%,maximaly%,dichtesinus%))
let y%=add(maximalx%,cosinus(a%,maximaly%,dichtecosinus%))
let x1%=add(add(maximalx%,100),sinus(add(a%,5),maximaly%,dichtesinus%))
let y1%=add(maximalx%,cosinus(add(a%,5),maximaly%,dichtecosinus%))
line x%,y% - x1%,y1%
lineto div(%maxx,2),div(%maxy,2)
wend
waitmouse
settruecolor 1
cls 0
let farbe%=0
let a%=0
while lt(a%,%maxx)
add a%,5
add farbe%,10
usepen 1,3,farbe%
line a%,0 - div(%maxx,2),div(%maxy,2)
lineto a%,%maxy
wend
let farbe%=0
let a%=0
while lt(a%,%maxy)
add a%,5
add farbe%,10
usepen 1,3,farbe%
line 0,a% - div(%maxx,2),div(%maxy,2)
lineto %maxx,a%
'./../../funktionsreferenzen/XProfan/Wend/'>Wend
waitmouse