|
CURVED
SHAPES 01 - program rotation04

Image properties: Picture box
Picture1, Cartesian plain: x from –3 to +3; y from
–3 to +3; dimension: width 500
pixels, height 500 pixels,
command button for next image
Result description:
Basic
concept:
Algorithm
description:
Download and run exe
version
Visual Basic source
code
Public fre, fgr, fbl, x1, y1
Private Sub Command1_Click()
Picture1.Cls: Call draw
End Sub
Private Sub Form_Load()
Form1.Show: Randomize Timer: Cls: Picture1.BackColor =
RGB(0, 0, 0)
fre = 1: fgr = 1: fbl = 1: Call draw
End Sub
Private Sub draw()
Randomize Timer: On Error Resume Next: koncaj = 0
r = 2: dr = -0.00003: fi = Rnd * 6.286: dfi = 0.0005
r1 = 0.7: fi1 = Rnd * 6.286: dfi1 = 0.002
re = Rnd * 256: gr = Rnd * 256: bl = Rnd * 256
dre = (Rnd * 1) / 20: dgr = (Rnd * 1) / 20: dbl = (Rnd
* 1) / 20
fix1 = -3 + Rnd * 6: fiy1 = -3 + Rnd * 6
fix2 = -3 + Rnd * 6: fiy2 = -3 + Rnd * 6
For n = 1 To 70000
r = r + dr: fi = fi + dfi
x = r * Cos(fi * fix1): y = r * Sin(fi * fiy1)
i = (x + 3) * (500 / 6): j = (3 - y) * (500 / 6)
fi1 = fi1 + dfi1: dx1 = r1 * Cos(fi1 * fix2): dy1 = r1
* Sin(fi1 * fiy2)
x1 = x + dx1: y1 = y + dy1
i1 = (x1 + 3) * (500 / 6): j1 = (3 - y1) * (500 / 6)
If re > 255 Then fre = -1
If re < 2 Then fre = 1
If gr > 255 Then fgr = -1
If gr < 2 Then fgr = 1
If bl > 255 Then fbl = -1
If bl < 2 Then fbl = 1
re = re + dre * fre: gr = gr + dgr * fgr: bl = bl + dbl
* fbl
Picture1.Line (i, j)-(i1, j1), RGB(re, gr, bl)
Picture1.Line (i + 1, j)-(i1 + 1, j1), RGB(re, gr, bl)
Picture1.Line (i, j + 1)-(i1, j1 + 1), RGB(re, gr, bl)
Next n
End Sub
|
|