Commit: 1700fde0dc38359aabfff372b411431c8dc75df0
Author: Hans Goudey
Date:   Fri Aug 6 12:45:21 2021 -0500
Branches: temp-geometry-nodes-fields-prototype
https://developer.blender.org/rB1700fde0dc38359aabfff372b411431c8dc75df0

Output anonymous attribute in select by handle node

===================================================================

M       
source/blender/nodes/geometry/nodes/node_geo_curve_select_by_handle_type.cc

===================================================================

diff --git 
a/source/blender/nodes/geometry/nodes/node_geo_curve_select_by_handle_type.cc 
b/source/blender/nodes/geometry/nodes/node_geo_curve_select_by_handle_type.cc
index fb21c05b0c0..84ee745869c 100644
--- 
a/source/blender/nodes/geometry/nodes/node_geo_curve_select_by_handle_type.cc
+++ 
b/source/blender/nodes/geometry/nodes/node_geo_curve_select_by_handle_type.cc
@@ -25,12 +25,12 @@
 
 static bNodeSocketTemplate geo_node_select_by_handle_type_in[] = {
     {SOCK_GEOMETRY, N_("Geometry")},
-    {SOCK_STRING, N_("Selection")},
     {-1, ""},
 };
 
 static bNodeSocketTemplate geo_node_select_by_handle_type_out[] = {
     {SOCK_GEOMETRY, N_("Geometry")},
+    {SOCK_BOOLEAN, N_("Selection")},
     {-1, ""},
 };
 
@@ -112,10 +112,11 @@ static void 
geo_node_select_by_handle_type_exec(GeoNodeExecParams params)
   CurveComponent &curve_component = 
geometry_set.get_component_for_write<CurveComponent>();
   const CurveEval *curve = curve_component.get_for_read();
 
+  AnonymousCustomDataLayerID *id = CustomData_anonymous_id_new("Selection");
+
   if (curve != nullptr) {
-    const std::string selection_name = 
params.extract_input<std::string>("Selection");
     OutputAttribute_Typed<bool> selection =
-        
curve_component.attribute_try_get_for_output_only<bool>(selection_name, 
ATTR_DOMAIN_POINT);
+        curve_component.attribute_try_get_anonymous_for_output_only<bool>(*id, 
ATTR_DOMAIN_POINT);
     if (selection) {
       select_curve_by_handle_type(*curve, handle_type, mode, 
selection.as_span());
       selection.save();
@@ -123,6 +124,9 @@ static void 
geo_node_select_by_handle_type_exec(GeoNodeExecParams params)
   }
 
   params.set_output("Geometry", std::move(geometry_set));
+  params.set_output(
+      "Selection",
+      bke::FieldRef<bool>(new bke::AnonymousAttributeField(*id, 
CPPType::get<bool>())));
 }
 
 }  // namespace blender::nodes

_______________________________________________
Bf-blender-cvs mailing list
[email protected]
List details, subscription details or unsubscribe:
https://lists.blender.org/mailman/listinfo/bf-blender-cvs

Reply via email to