e98c9f283f
Refactors `SHAPE_POLY_SET::fractureSingle()` to be more efficient, while not changing the actual algorithm: * increase cache locality by using contiguous arrays instead of what was effectively a linked list * reduce latency and jitter by replacing per-edge allocator calls with ahead-of-time std::vector reserves * increase cache efficiency by making the vertex struct smaller * replace O(n^2) leftmost edge search with O(n log n) std::sort * sort the polygons instead of the edges * cut iteration count in half in the remaining O(polygons * edges) part |
||
---|---|---|
.. | ||
core | ||
kimath | ||
kiplatform | ||
sexpr | ||
CMakeLists.txt |