No need for
to_ranges
andArray<int> offsets
. Thanks for suggestion. I wanted ranges to copy in chunks. I was frightened by fact that many curves with all vertices selected will be copied…
I don't see to separate GP without two separate curve_populate_trans_data_structs
functions.
Current version works for both, also I think it'll be handy for Bezier handles also.
If to go with array_utils::gather
selection as IndexMask
needs to be stored in tc.custom.type.data
for latter use by array_utils::scatter
. I didn't find how to make deep copy of…
I was trying to avoid new struct, it will change a lot.
I like array in tc->custom.type.data
solution more too.
Maybe I could implement it in #120222, because in any case I'll have to add Bezier handles to the solution?
@JacquesLucke I've root of the problem mentioned above, maybe you could look it through. It can be observed in main
branch also. In transform_convert_curves.cc
replace `curves.calculate_bezier…
Not quite yet.
I've added commented call curves.calculate_bezier_auto_handles();
. With it Blender crashes in random places if to move Bezier handles. Sometimes in Vector
destructor, sometimes…
If to comment it, does another std::reduce
is same file compiles?
Lambda's return value type is actually int64_t
, it should match init value type, which is int
.
Can you try casting…