Differential D16083 Diff 56395 source/blender/nodes/geometry/nodes/node_geo_curve_handle_type_selection.cc
Changeset View
Changeset View
Standalone View
Standalone View
source/blender/nodes/geometry/nodes/node_geo_curve_handle_type_selection.cc
| Show First 20 Lines • Show All 102 Lines • ▼ Show 20 Lines | public: | ||||
| bool is_equal_to(const fn::FieldNode &other) const override | bool is_equal_to(const fn::FieldNode &other) const override | ||||
| { | { | ||||
| if (const HandleTypeFieldInput *other_handle_selection = | if (const HandleTypeFieldInput *other_handle_selection = | ||||
| dynamic_cast<const HandleTypeFieldInput *>(&other)) { | dynamic_cast<const HandleTypeFieldInput *>(&other)) { | ||||
| return mode_ == other_handle_selection->mode_ && type_ == other_handle_selection->type_; | return mode_ == other_handle_selection->mode_ && type_ == other_handle_selection->type_; | ||||
| } | } | ||||
| return false; | return false; | ||||
| } | } | ||||
| std::optional<eAttrDomain> preferred_domain(const CurvesGeometry & /*curves*/) const | |||||
| { | |||||
| return ATTR_DOMAIN_POINT; | |||||
| } | |||||
| }; | }; | ||||
| static void node_geo_exec(GeoNodeExecParams params) | static void node_geo_exec(GeoNodeExecParams params) | ||||
| { | { | ||||
| const NodeGeometryCurveSelectHandles &storage = node_storage(params.node()); | const NodeGeometryCurveSelectHandles &storage = node_storage(params.node()); | ||||
| const HandleType handle_type = handle_type_from_input_type( | const HandleType handle_type = handle_type_from_input_type( | ||||
| (GeometryNodeCurveHandleType)storage.handle_type); | (GeometryNodeCurveHandleType)storage.handle_type); | ||||
| const GeometryNodeCurveHandleMode mode = (GeometryNodeCurveHandleMode)storage.mode; | const GeometryNodeCurveHandleMode mode = (GeometryNodeCurveHandleMode)storage.mode; | ||||
| Show All 26 Lines | |||||