Biography

        Home
    
 ABOUT AUTHOR
  biography
  statement
  curriculum
  history
  art critic

GENERATIVE ART
  generative art
  authorship
  creativity

GALERIES
  galeries all
  new works
  mozaic
  karst
  beginning

DEMO PROGRAMS
  visual basic pr.
  java programs
  short VB6 prg.

OTHER
  greetings
  portraits

CONTACT
  contact





KONEC

 


















  

LINKI
GA konference
 GA linki
Drugi linki
 
 
 
OBISKOVALCI
ste obiskovalec
 št.:  263398
od okt/2002















   
 
 
 
 

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