Blender V5.0
BKE_curves_utils.hh File Reference

Low-level operations for curves. More...

#include "BKE_curves.hh"
#include "BLI_function_ref.hh"
#include "BLI_generic_pointer.hh"
#include "BLI_index_range.hh"

Go to the source code of this file.

Classes

struct  blender::bke::curves::CurveSegment
struct  blender::bke::curves::CurvePoint
class  blender::bke::curves::IndexRangeCyclic
struct  blender::bke::curves::IndexRangeCyclic::CyclicIterator

Namespaces

namespace  blender
namespace  blender::bke
namespace  blender::bke::curves
namespace  blender::bke::curves::bezier
namespace  blender::bke::curves::nurbs

Functions

Array< float3blender::bke::curves::bezier::retrieve_all_positions (const bke::CurvesGeometry &curves, const IndexMask &curves_selection)
void blender::bke::curves::bezier::write_all_positions (bke::CurvesGeometry &curves, const IndexMask &curves_selection, Span< float3 > all_positions)
void blender::bke::curves::nurbs::gather_custom_knots (const bke::CurvesGeometry &src, const IndexMask &src_curves, int dst_curve_offset, bke::CurvesGeometry &dst)
void blender::bke::curves::nurbs::update_custom_knot_modes (const IndexMask &mask, const KnotsMode mode_for_regular, const KnotsMode mode_for_cyclic, bke::CurvesGeometry &curves)
void blender::bke::curves::nurbs::copy_custom_knots (const bke::CurvesGeometry &src_curves, const IndexMask &exclude_curves, bke::CurvesGeometry &dst_curves)

Utility Functions

using blender::bke::curves::SelectedCallback
using blender::bke::curves::UnselectedCallback = FunctionRef<void(IndexRange curves, IndexRange unselected_points)>
IndexMask blender::bke::curves::curve_to_point_selection (OffsetIndices< int > points_by_curve, const IndexMask &curve_selection, IndexMaskMemory &memory)
IndexMask blender::bke::curves::curve_type_point_selection (const bke::CurvesGeometry &curves, CurveType curve_type, IndexMaskMemory &memory)
void blender::bke::curves::fill_points (OffsetIndices< int > points_by_curve, const IndexMask &curve_selection, GPointer value, GMutableSpan dst)
template<typename T>
void blender::bke::curves::fill_points (const OffsetIndices< int > points_by_curve, const IndexMask &curve_selection, const T &value, MutableSpan< T > dst)
bke::CurvesGeometry blender::bke::curves::copy_only_curve_domain (const bke::CurvesGeometry &src_curves)
IndexMask blender::bke::curves::indices_for_type (const VArray< int8_t > &types, const std::array< int, CURVE_TYPES_NUM > &type_counts, const CurveType type, const IndexMask &selection, IndexMaskMemory &memory)
void blender::bke::curves::foreach_curve_by_type (const VArray< int8_t > &types, const std::array< int, CURVE_TYPES_NUM > &type_counts, const IndexMask &selection, FunctionRef< void(IndexMask)> catmull_rom_fn, FunctionRef< void(IndexMask)> poly_fn, FunctionRef< void(IndexMask)> bezier_fn, FunctionRef< void(IndexMask)> nurbs_fn)
void blender::bke::curves::foreach_selected_point_ranges_per_curve (const IndexMask &mask, OffsetIndices< int > points_by_curve, SelectedCallback selected_fn)
void blender::bke::curves::foreach_selected_point_ranges_per_curve (const IndexMask &mask, OffsetIndices< int > points_by_curve, SelectedCallback selected_fn, UnselectedCallback unselected_fn)

Detailed Description

Low-level operations for curves.

Definition in file BKE_curves_utils.hh.