Data commit
This commit is contained in:
parent
7387c8f97b
commit
cb5bb5e222
199093 changed files with 3378972 additions and 0 deletions
37
Task/Bitmap-Flood-fill/FBSL/bitmap-flood-fill.fbsl
Normal file
37
Task/Bitmap-Flood-fill/FBSL/bitmap-flood-fill.fbsl
Normal file
|
|
@ -0,0 +1,37 @@
|
|||
#DEFINE WM_LBUTTONDOWN 513
|
||||
#DEFINE WM_CLOSE 16
|
||||
|
||||
FBSLSETTEXT(ME, "Before Flood Fill") ' Set form caption
|
||||
FBSLSETFORMCOLOR(ME, RGB(0, 255, 255)) ' Cyan: persistent background color
|
||||
FBSL.GETDC(ME) ' Use volatile FBSL.GETDC below to avoid extra assignments
|
||||
|
||||
RESIZE(ME, 0, 0, 220, 220)
|
||||
CENTER(ME)
|
||||
SHOW(ME)
|
||||
|
||||
DIM Breadth AS INTEGER, Height AS INTEGER
|
||||
FBSL.GETCLIENTRECT(ME, 0, 0, Breadth, Height)
|
||||
|
||||
DrawCircles() ' Initialize circles
|
||||
|
||||
BEGIN EVENTS
|
||||
SELECT CASE CBMSG
|
||||
CASE WM_LBUTTONDOWN: FillCircles() ' Flood fill circles
|
||||
CASE WM_CLOSE: FBSL.RELEASEDC(ME, FBSL.GETDC) ' Clean up
|
||||
END SELECT
|
||||
END EVENTS
|
||||
|
||||
SUB FillCircles()
|
||||
FILL(FBSL.GETDC, Breadth / 2, Height / 2, &HFFFF) ' Yellow: flood fill using intrinsics
|
||||
FOR DIM x = 0 TO Breadth / 2 ' Red: flood fill iteratively
|
||||
FOR DIM y = 0 TO Height / 2
|
||||
IF NOT POINT(FBSL.GETDC, x, y) THEN PSET(FBSL.GETDC, x, y, &HFF)
|
||||
NEXT
|
||||
NEXT
|
||||
FBSLSETTEXT(ME, "After Flood Fill") ' Reset form caption
|
||||
END SUB
|
||||
|
||||
SUB DrawCircles() ' Concatenate function calls
|
||||
CIRCLE(FBSL.GETDC, Breadth / 2, Height / 2, 85, &HFFFFFF, 0, 360, 1, TRUE) _ ' White
|
||||
(FBSL.GETDC, Breadth / 3, Height / 3, 30, 0, 0, 360, 1, TRUE) ' Black
|
||||
END SUB
|
||||
Loading…
Add table
Add a link
Reference in a new issue