Commit: 65b5023df457d1277588c554a1abc4bdb7eeab6e
Author: Johnny Matthews
Date: Mon Oct 4 12:47:35 2021 -0500
Branches: master
https://developer.blender.org/rB65b5023df457d1277588c554a1abc4bdb7eeab6e
Fix: Geometry Nodes Handle Type Selection Fix
Fix the selection logic on the Handle Type Selection node to work
as intended:
(Left is Selected AND Left is ChosenType)
OR
(Right is Selected AND Right is ChosenType)
===================================================================
M
source/blender/nodes/geometry/nodes/node_geo_curve_handle_type_selection.cc
===================================================================
diff --git
a/source/blender/nodes/geometry/nodes/node_geo_curve_handle_type_selection.cc
b/source/blender/nodes/geometry/nodes/node_geo_curve_handle_type_selection.cc
index 093146d563e..a40e839cc02 100644
---
a/source/blender/nodes/geometry/nodes/node_geo_curve_handle_type_selection.cc
+++
b/source/blender/nodes/geometry/nodes/node_geo_curve_handle_type_selection.cc
@@ -79,12 +79,10 @@ static void select_by_handle_type(const CurveEval &curve,
else {
BezierSpline *b = static_cast<BezierSpline *>(spline.get());
for (int i : IndexRange(b->size())) {
- if (mode & GeometryNodeCurveHandleMode::GEO_NODE_CURVE_HANDLE_LEFT) {
- r_selection[offset++] = b->handle_types_left()[i] == type;
- }
- else if (mode &
GeometryNodeCurveHandleMode::GEO_NODE_CURVE_HANDLE_RIGHT) {
- r_selection[offset++] = b->handle_types_right()[i] == type;
- }
+ r_selection[offset++] = (mode &
GeometryNodeCurveHandleMode::GEO_NODE_CURVE_HANDLE_LEFT &&
+ b->handle_types_left()[i] == type) ||
+ (mode &
GeometryNodeCurveHandleMode::GEO_NODE_CURVE_HANDLE_RIGHT &&
+ b->handle_types_right()[i] == type);
}
}
}
_______________________________________________
Bf-blender-cvs mailing list
[email protected]
List details, subscription details or unsubscribe:
https://lists.blender.org/mailman/listinfo/bf-blender-cvs