Just a small teaser after the successful commissioning of a polygon fill routine, a.k.a. 'rasterizer' (
The demo program simply churns out the vertical line segments that were extracted from the rasterizing algorithm in a post-processing step:
Code: Select all
10 @ON:@CLR:FORT=1TO337:READX,Y0,Y1:@1,X,Y0TOX,Y1:NEXT
11 GETA$:ON-(A$="")GOTO11:@RETURN:END
12 :
13 DATA 16,77,78,17,71,79,18,64,79,19,58,79,20,51,80,21,45,80,22,38,80,23,32,80,24,25
14 DATA 80,25,19,70,26,16,60,27,16,50,28,16,41,29,16,31,30,17,35,31,18,40,32,22,45,33
15 DATA 26,50,34,30,56,35,34,59,36,38,59,37,42,59,38,46,59,39,47,59,40,43,59,41,39,59
16 DATA 42,34,58,43,30,56,44,26,52,45,21,48,46,17,44,47,14,39,48,14,35,49,14,31,50,13
17 DATA 45,51,13,62,52,13,78,53,19,79,54,27,79,55,35,79,56,43,79,57,52,78,58,60,78,59
18 DATA 68,78,60,76,78,66,13,17,67,12,37,68,12,56,69,12,75,70,12,77,71,11,77,72,11,77
19 DATA 73,11,78,74,10,78,75,29,78,76,67,78,86,48,77,87,9,77,88,9,77,89,9,78,90,9,78,91
20 DATA 9,78,92,10,78,93,10,30,94,10,27,95,10,31,96,13,35,97,17,40,98,21,44,99,25,48
21 DATA 100,29,52,101,33,57,102,37,61,103,41,65,104,45,70,105,49,74,106,53,78,107,57,80
22 DATA 108,61,80,109,65,80,110,69,80,111,63,80,112,46,81,113,29,81,114,13,81,115,11,81
23 DATA 116,11,81,117,12,72,118,12,59,119,12,46,120,12,33,121,12,20,127,77,84,128,65,85
24 DATA 129,54,85,130,42,85,131,30,85,132,19,86,133,15,86,134,15,85,135,16,75,136,16,65
25 DATA 137,16,54,138,16,44,139,17,34,140,17,23,2,125,163,3,116,166,4,114,168,5,112,171
26 DATA 6,110,135,6,148,173,7,109,127,7,159,175,8,107,120,8,166,177,9,106,115,9,166,177
27 DATA 10,106,114,10,167,177,11,106,114,11,167,177,12,106,114,12,145,151,12,168,177,13
28 DATA 106,114,13,145,151,13,168,177,14,106,113,14,145,151,14,168,177,15,106,113,15
29 DATA 145,151,15,169,176,16,106,113,16,145,151,16,166,175,17,106,113,17,145,151,17
30 DATA 161,174,18,106,114,18,145,151,18,157,172,19,106,116,19,146,151,19,153,171,20
31 DATA 108,118,20,146,166,21,109,119,21,146,161,22,111,121,22,146,176,23,113,120,23
32 DATA 146,176,24,114,118,24,146,176,25,116,116,25,149,176,31,104,104,31,105,167,32
33 DATA 104,106,32,107,174,33,104,107,33,108,173,34,103,109,34,110,173,35,103,111,35
34 DATA 112,173,36,103,111,36,132,150,36,166,173,37,103,110,37,132,153,38,103,110,38
35 DATA 132,156,39,103,110,39,132,139,39,142,159,40,103,110,40,132,139,40,145,162,41
36 DATA 103,110,41,132,139,41,149,165,42,103,110,42,131,139,42,152,168,43,103,112,43
37 DATA 130,139,43,155,171,44,103,113,44,129,139,44,158,173,45,104,123,45,127,137,45
38 DATA 162,172,46,106,136,46,165,172,47,107,134,47,168,172,48,109,133,48,172,172,49
39 DATA 111,132,52,170,172,53,165,172,54,161,172,55,156,172,56,152,172,57,147,172,58
40 DATA 143,169,59,138,164,60,134,159,61,129,154,62,125,149,63,120,144,64,116,144,65
41 DATA 111,135,65,137,145,66,107,130,66,137,145,67,102,125,67,138,145,68,101,109,68
42 DATA 109,121,68,138,145,69,101,120,69,138,145,70,101,129,70,138,145,71,101,145,72
43 DATA 101,148,73,105,157,74,114,166,75,123,174,76,132,174,77,141,174,78,150,174,79
44 DATA 159,174,80,167,174,86,152,174,87,106,174,88,102,175,89,102,175,90,102,175,91
45 DATA 102,175,92,102,175,93,102,175,94,102,141,95,102,111,95,132,141,96,103,111,96
46 DATA 132,141,97,103,111,97,132,141,98,103,111,98,132,142,99,103,111,99,132,142,100
47 DATA 103,112,100,132,142,101,103,112,101,133,142,102,103,112,102,133,142,103,103,112
48 DATA 103,133,142,104,103,112,104,133,142,105,104,112,105,133,143,106,104,112,107,104
49 DATA 112,108,104,112,109,104,113,110,104,113,111,104,113,112,104,113,115,169,176,116
50 DATA 143,176,117,118,176,118,105,176,119,105,177,120,105,177,121,105,177,122,105,174
51 DATA 123,106,149,124,106,123,127,173,178,128,150,179,129,128,179,130,107,179,131,107
52 DATA 179,132,108,180,133,108,172,134,108,151,135,108,135,135,138,153,136,108,113,136
53 DATA 136,154,137,135,156,138,133,158,139,131,145,139,146,160,140,130,143,140,148,162
54 DATA 141,128,142,141,149,164,142,126,140,142,151,166,143,125,139,143,153,168,144,123
55 DATA 138,144,154,170,145,122,136,145,156,172,146,120,135,146,158,174,147,118,133,147
56 DATA 159,176,148,117,132,148,161,178,149,115,131,149,163,180,150,113,129,150,164,182
57 DATA 151,112,128,151,166,182,152,110,126,152,168,182,153,110,125,153,169,182,154,110
58 DATA 124,154,171,182,155,111,122,155,173,183,156,111,121,157,111,119
59 :
60 REM ** MG POLYGON FILL WRITTEN 2021-11-04 BY MICHAEL KIRCHER
... more to follow in the
in the next days ...