1193f2d7ec
This patch refactors most of the code of the hard eraser, both for readability purpose, and to prepare the integration of the soft mode of the eraser. The refactoring includes : - the use of specific structures and enum types `SegmentCircleIntersection`, `PointCircleSide`, and `PointTransferData` to handle the data more easily, - improve readability of the intersections functions (better naming, and more accurate and generic comments), - definition of a more generic `compute_topology_change` function that handles point insertion, removal, and curve splitting for curves geometry. Pull Request: https://projects.blender.org/blender/blender/pulls/111390