24 const VArray<float> &influence_by_point,
25 const bool smooth_ends,
26 const bool keep_shape,
34 const OffsetIndices<int> points_by_curve,
35 const VArray<bool> &point_selection,
36 const VArray<bool> &cyclic,
41 GMutableSpan attribute_data);
47 const OffsetIndices<int> points_by_curve,
48 const VArray<bool> &point_selection,
49 const VArray<bool> &cyclic,
51 const VArray<float> &influence_by_point,
54 GMutableSpan attribute_data);
60 const IndexMask &curves_to_smooth,
62 const VArray<float> &influence_by_point,
66 const IndexMask &curves_to_smooth,
static bool is_cyclic(const Nurb *nu)
void smooth_curve_attribute(const IndexMask &curves_to_smooth, const OffsetIndices< int > points_by_curve, const VArray< bool > &point_selection, const VArray< bool > &cyclic, int iterations, float influence, bool smooth_ends, bool keep_shape, GMutableSpan attribute_data)
void smooth_curve_positions(bke::CurvesGeometry &curves, const IndexMask &curves_to_smooth, int iterations, const VArray< float > &influence_by_point, bool smooth_ends, bool keep_shape)
void gaussian_blur_1D(const GSpan src, int iterations, const VArray< float > &influence_by_point, const bool smooth_ends, const bool keep_shape, const bool is_cyclic, GMutableSpan dst)