Delete completed edges. Update 'xIntersect' field for others
| 193 | |
| 194 | // Delete completed edges. Update 'xIntersect' field for others |
| 195 | void UpdateActiveList(ILint scan, Edge *active) |
| 196 | { |
| 197 | Edge *q = active, *p = active->next; |
| 198 | |
| 199 | while (p) { |
| 200 | if (scan >= p->yUpper) { |
| 201 | p = p->next; |
| 202 | DeleteAfter(q); |
| 203 | } |
| 204 | else { |
| 205 | p->xIntersect = p->xIntersect + p->dxPerScan; |
| 206 | q = p; |
| 207 | p = p->next; |
| 208 | } |
| 209 | } |
| 210 | } |
| 211 | |
| 212 | |
| 213 | void ResortActiveList(Edge *active) |
no test coverage detected