- 01
- 02
- 03
- 04
- 05
- 06
- 07
- 08
- 09
- 10
- 11
- 12
- 13
- 14
- 15
- 16
- 17
- 18
- 19
- 20
- 21
- 22
- 23
- 24
- 25
- 26
- 27
- 28
- 29
- 30
- 31
- 32
- 33
- 34
- 35
- 36
- 37
- 38
- 39
- 40
- 41
- 42
- 43
- 44
- 45
- 46
- 47
- 48
- 49
- 50
Dim centerX As Integer
Dim centerY As Integer
Dim radius As Integer
Private Sub Form_Activate()
centerX = 100
centerY = 100
radius = 50
End Sub
Private Sub Timer1_Timer()
Randomize
Dim x As Integer
Dim y As Integer
Dim i As Integer
Dim diff As Integer
For i = 0 To 100
Me.ForeColor = RGB(200, 0, 0)
x = centerX + (radius * Rnd)
y = centerY + (radius * Rnd)
diff = Sqr(((centerX - x) ^ 2) + ((centerY - y) ^ 2))
If (Abs(radius - diff) < 2) Then
Me.PSet (x, y)
End If
Me.ForeColor = RGB(100, 0, 0)
x = centerX - (radius * Rnd)
y = centerY + (radius * Rnd)
diff = Sqr(((centerX - x) ^ 2) + ((centerY - y) ^ 2))
If (Abs(radius - diff) = 0) Then
Me.PSet (x, y)
End If
x = centerX + (radius * Rnd)
y = centerY - (radius * Rnd)
diff = Sqr(((centerX - x) ^ 2) + ((centerY - y) ^ 2))
If (Abs(radius - diff) = 0) Then
Me.PSet (x, y)
End If
Me.ForeColor = RGB(0, 100, 0)
x = centerX - (radius * Rnd)
y = centerY - (radius * Rnd)
diff = Sqr(((centerX - x) ^ 2) + ((centerY - y) ^ 2))
If (Abs(radius - diff) > 2) Then
Me.PSet (x, y)
End If
Next i
End Sub
Извиняюсь за длину.
История происхождения: в одном древнем ВБ-шном говнопроекте сомнительного происхождения эта вещь выполняла роль постепенной прорисовки "логотипа" в окне "О программе". Отрезал сам сабж.
Вот как работает: http://tinyurl.com/ck3npah
guest 22.06.2012 11:12 # +1
ckopo 17.03.2013 04:15 # −1