Fix T96577: setting curve handles not working correctly with multiple curves

Differential Revision: https://developer.blender.org/D14409
This commit is contained in:
Jacques Lucke 2022-03-22 14:41:21 +01:00
parent 3b5224b57c
commit e0ce1c45f8
Notes: blender-bot 2023-02-14 06:46:23 +01:00
Referenced by issue #96573, Geometry Nodes: Set Handle Position issue with multiple curves
Referenced by issue #96577, Set handle positions node does not respect side setting
1 changed files with 4 additions and 2 deletions

View File

@ -106,10 +106,12 @@ static void set_position_in_component(const GeometryNodeCurveHandleMode mode,
for (const int i : bezier.positions().index_range()) {
if (current_mask < selection.size() && selection[current_mask] == current_point) {
if (mode & GEO_NODE_CURVE_HANDLE_LEFT) {
bezier.set_handle_position_left(i, positions_input[i] + offsets_input[i]);
bezier.set_handle_position_left(
i, positions_input[current_point] + offsets_input[current_point]);
}
else {
bezier.set_handle_position_right(i, positions_input[i] + offsets_input[i]);
bezier.set_handle_position_right(
i, positions_input[current_point] + offsets_input[current_point]);
}
current_mask++;
}