49b48209e7ab535e421626aa80e44427bfcfdfac
IndexMask::complement() is often used in geometry processing algorithms when a selection needs to be inverted, mostly just in curves code so far. Instead of reusing `from_predicate` and lookup in the source mask, scan the mask once, inserting segments between the original indices. Theoretically this improves the performance from O(N*log(N)) to O(N). But with the small constant offset of the former, the improvement is generally just 3-4 times faster. However in some cases like empty and full masks, the new code takes constant time.  Pull Request: https://projects.blender.org/blender/blender/pulls/108331
…
Blender
Blender is the free and open source 3D creation suite. It supports the entirety of the 3D pipeline-modeling, rigging, animation, simulation, rendering, compositing, motion tracking and video editing.
Project Pages
Development
License
Blender as a whole is licensed under the GNU General Public License, Version 3. Individual files may have a different, but compatible license.
See blender.org/about/license for details.
Description
Languages
C++
78%
Python
14.9%
C
2.9%
GLSL
1.9%
CMake
1.2%
Other
0.9%
