ornament.BAS

{* Орнамент *}

REM basic

' Орнамент


SCREEN 9{орнамент
}CLS
SLEEP 2
Dim z(17), xa(10, 17), ya(10, 17), xc(10, 17), yc(10, 17)
RANDOMIZE TIMER
n = 1 + INT(RND * 6)
m = 1 + INT(RND * 6)
d = 1 + INT(RND * 6)
r = 9 + INT(RND * 12)
s = 20 + INT(RND * 21)
l = 1 + INT(RND * 3)
f = 1 + INT(RND * 6)
h = 3.1416 / n
READ z(1), z(2), z(3), z(4), z(5), z(6), z(7), z(8)
DATA 11,5,13,7,14,4,10,8
For t = 0 To m
For p = 0 To d
For j = 1 To 8
xa(t, j) = 2 * s * t / 1.33 + r * SIN(z(j) * h) + r
ya(p, j) = 2 * p * s + r * COS(z(j) * h) * 1.33 + r
xc(p, j) = (2 * t + 1) * s / 1.33 + r * SIN(z(j) * h) + r
yc(p, j) = (2 * p + 1) * s + r * COS(z(j) * h) * 1.33 + r
PSET (xa(t, j), ya(p, j)), f
PSET (xc(t, j), yc(p, j)), l
xc(t, j + 8) = (2 * t + 1) * s / 1.33 + r * SIN(z(j + 8) * h) + r
yc(p, j + 8) = (2 * p + 1) * s + r * COS(z(j + 8) * h) * 1.33 + r
xa(t, j + 8) = 2 * s * t / 1.33 + r * SIN(z(j + 8) * h) + r
ya(p, j + 8) = 2 * p * s + r * COS(z(j + 8) * h) * 1.33 + r
For e = 1 To 10000
Next e
Next j, p, t
CLS
For t = 0 To m - 1
For p = 0 To d - 1
For j = 2 To 8 Step 2
LINE (xa(t, j - 1), ya(p, j - 1))-(xa(t, j), ya((p + 1), j)), f
LINE (xa(t, j + 7), ya(p, j + 7))-(xa(t + 1, j + 8), ya(p, j + 8)), f
LINE (xc(t, j - 1), yc(p, j - 1))-(xc(t, j), yc((p + 1), j)), l
LINE (ya(t, j + 7), yc(p, j + 7))-(xc(t + 1, j + 8), yc(p, j + 8)), l
For e = 1 To 10000
Next e

Next j, p, t
For t = 1 To m - 1
For p = 1 To d - 1
x1 = 2 * t * s / 1.33 + r
y1 = 2 * p * s + r
x2 = (2 * t + 1) * s / 1.33 + r
y2 = (2 * p + 1) * s + r
{PAINT (x1, y1), 1, f
}If t = m - 1 Then GoTo 440
{PAINT (x2, y2), f, l
}440 Next p, t