Blender V5.0
GEO_interpolate_curves.hh
Go to the documentation of this file.
1/* SPDX-FileCopyrightText: 2023 Blender Authors
2 *
3 * SPDX-License-Identifier: GPL-2.0-or-later */
4
5#pragma once
6
7#include "BKE_curves.hh"
8
9namespace blender::geometry {
10
19void sample_curve_padded(const Span<float3> positions,
20 bool cyclic,
21 MutableSpan<int> r_indices,
22 MutableSpan<float> r_factors);
23
34void sample_curve_padded(const bke::CurvesGeometry &curves,
35 int curve_index,
36 bool cyclic,
37 bool reverse,
38 MutableSpan<int> r_indices,
39 MutableSpan<float> r_factors);
40
45void interpolate_curves(const bke::CurvesGeometry &from_curves,
46 const bke::CurvesGeometry &to_curves,
47 Span<int> from_curve_indices,
48 Span<int> to_curve_indices,
49 const IndexMask &dst_curve_mask,
50 Span<bool> dst_curve_flip_direction,
51 float mix_factor,
52 bke::CurvesGeometry &dst_curves,
53 IndexMaskMemory &memory);
54
55void interpolate_curves_with_samples(const bke::CurvesGeometry &from_curves,
56 const bke::CurvesGeometry &to_curves,
57 Span<int> from_curve_indices,
58 Span<int> to_curve_indices,
59 Span<int> from_sample_indices,
60 Span<int> to_sample_indices,
61 Span<float> from_sample_factors,
62 Span<float> to_sample_factors,
63 const IndexMask &dst_curve_mask,
64 float mix_factor,
65 bke::CurvesGeometry &dst_curves,
66 IndexMaskMemory &memory);
67
68} // namespace blender::geometry
Low-level operations for curves.
void interpolate_curves_with_samples(const bke::CurvesGeometry &from_curves, const bke::CurvesGeometry &to_curves, Span< int > from_curve_indices, Span< int > to_curve_indices, Span< int > from_sample_indices, Span< int > to_sample_indices, Span< float > from_sample_factors, Span< float > to_sample_factors, const IndexMask &dst_curve_mask, float mix_factor, bke::CurvesGeometry &dst_curves, IndexMaskMemory &memory)
void sample_curve_padded(const Span< float3 > positions, bool cyclic, MutableSpan< int > r_indices, MutableSpan< float > r_factors)
void interpolate_curves(const bke::CurvesGeometry &from_curves, const bke::CurvesGeometry &to_curves, Span< int > from_curve_indices, Span< int > to_curve_indices, const IndexMask &dst_curve_mask, Span< bool > dst_curve_flip_direction, float mix_factor, bke::CurvesGeometry &dst_curves, IndexMaskMemory &memory)