Changeset View
Changeset View
Standalone View
Standalone View
source/blender/nodes/geometry/nodes/node_geo_curve_subdivide.cc
| Show All 23 Lines | static void node_declare(NodeDeclarationBuilder &b) | ||||
| b.add_output<decl::Geometry>(N_("Curve")); | b.add_output<decl::Geometry>(N_("Curve")); | ||||
| } | } | ||||
| static void node_geo_exec(GeoNodeExecParams params) | static void node_geo_exec(GeoNodeExecParams params) | ||||
| { | { | ||||
| GeometrySet geometry_set = params.extract_input<GeometrySet>("Curve"); | GeometrySet geometry_set = params.extract_input<GeometrySet>("Curve"); | ||||
| Field<int> cuts_field = params.extract_input<Field<int>>("Cuts"); | Field<int> cuts_field = params.extract_input<Field<int>>("Cuts"); | ||||
| GeometryComponentEditData::remember_deformed_curve_positions_if_necessary(geometry_set); | |||||
| geometry_set.modify_geometry_sets([&](GeometrySet &geometry_set) { | geometry_set.modify_geometry_sets([&](GeometrySet &geometry_set) { | ||||
| if (!geometry_set.has_curves()) { | if (!geometry_set.has_curves()) { | ||||
| return; | return; | ||||
| } | } | ||||
| const CurveComponent &component = *geometry_set.get_component_for_read<CurveComponent>(); | const CurveComponent &component = *geometry_set.get_component_for_read<CurveComponent>(); | ||||
| const Curves &src_curves_id = *component.get_for_read(); | const Curves &src_curves_id = *component.get_for_read(); | ||||
| const bke::CurvesGeometry &src_curves = bke::CurvesGeometry::wrap(src_curves_id.geometry); | const bke::CurvesGeometry &src_curves = bke::CurvesGeometry::wrap(src_curves_id.geometry); | ||||
| Show All 33 Lines | |||||