() .
тАФ (Edge Table, ET), ,
Ymin
.
Ymin
,
Xmin
.
тАФ (Active Edge Table, AET), , .
:
interface EdgeTableEntry {
ymin: number;
ymax: number;
x: number;
iSlope: number;
}
interface ActiveEdgeTableEntry {
scanlineY: number;
edge: EdgeTableEntry;
}
, :
1. y y ET. .
2. AET .
3. , AET, ET :
(a) ET
y AET ,
ymin тЙд y.
(b) AET ,
y = ymax, AET
x.
() y,
x AET.
(d) y , , .. .
(e) , AET,
x y (
edge.x = edge.x + edge.iSlope
)