Initial data commit
This commit is contained in:
parent
72d218235f
commit
f23f22d71c
199087 changed files with 3378941 additions and 0 deletions
|
|
@ -0,0 +1,54 @@
|
|||
' version 15-10-2016
|
||||
' compile with: fbc -s gui
|
||||
|
||||
' Variant with Integer-Based Arithmetic from Wikipedia page:
|
||||
' Midpoint circle algorithm
|
||||
Sub circle_(x0 As Integer, y0 As Integer , radius As Integer, Col As Integer)
|
||||
|
||||
Dim As Integer x = radius
|
||||
Dim As Integer y
|
||||
' Decision criterion divided by 2 evaluated at x=r, y=0
|
||||
Dim As Integer decisionOver2 = 1 - x
|
||||
|
||||
While(x >= y)
|
||||
PSet(x0 + x, y0 + y), col
|
||||
PSet(x0 - x, y0 + y), col
|
||||
PSet(x0 + x, y0 - y), col
|
||||
PSet(x0 - x, y0 - y), col
|
||||
PSet(x0 + y, y0 + x), col
|
||||
PSet(x0 - y, y0 + x), col
|
||||
PSet(x0 + y, y0 - x), col
|
||||
PSet(x0 - y, y0 - x), col
|
||||
y = y +1
|
||||
If decisionOver2 <= 0 Then
|
||||
decisionOver2 += y * 2 +1 ' Change in decision criterion for y -> y +1
|
||||
Else
|
||||
x = x -1
|
||||
decisionOver2 += (y - x) * 2 +1 ' Change for y -> y +1, x -> x -1
|
||||
End If
|
||||
Wend
|
||||
|
||||
End Sub
|
||||
|
||||
' ------=< MAIN >=------
|
||||
|
||||
ScreenRes 600, 600, 32
|
||||
Dim As Integer w, h, depth
|
||||
Randomize Timer
|
||||
|
||||
ScreenInfo w, h
|
||||
|
||||
For i As Integer = 1 To 10
|
||||
circle_(Rnd * w, Rnd * h , Rnd * 200 , Int(Rnd *&hFFFFFF))
|
||||
Next
|
||||
|
||||
|
||||
'save screen to BMP file
|
||||
BSave "Name.BMP", 0
|
||||
|
||||
|
||||
' empty keyboard buffer
|
||||
While Inkey <> "" : Wend
|
||||
WindowTitle "hit any key to end program"
|
||||
Sleep
|
||||
End
|
||||
Loading…
Add table
Add a link
Reference in a new issue