Blocks :
|
|
Blocks :
|
|
Relates :
|
|
Relates :
|
In ScanlineIterator.next() insertion sort is performed on an array consisting of almost sorted crossing points from previous edges (left part) and unsorted starting points of new edges (right part). In some very common cases (see linked issues), it just happens so that the right part is almost sorted in the reverse order thus making insertion sort very inefficient when the number of new edges is large (thousands). With rendering taking so long, application becomes totally unresponsive.
|