Blender V4.5
curve_nurbs.cc File Reference
#include "BLI_task.hh"
#include "BKE_attribute_math.hh"
#include "BKE_curves.hh"

Go to the source code of this file.

Namespaces

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

Functions

bool blender::bke::curves::nurbs::check_valid_num_and_order (int points_num, int8_t order, bool cyclic, KnotsMode knots_mode)
int blender::bke::curves::nurbs::calculate_evaluated_num (int points_num, int8_t order, bool cyclic, int resolution, KnotsMode knots_mode)
int blender::bke::curves::nurbs::knots_num (int points_num, int8_t order, bool cyclic)
static void blender::bke::curves::nurbs::copy_custom_knots (const int8_t order, const bool cyclic, const Span< float > custom_knots, MutableSpan< float > knots)
void blender::bke::curves::nurbs::calculate_knots (int points_num, KnotsMode mode, int8_t order, bool cyclic, MutableSpan< float > knots)
void blender::bke::curves::nurbs::load_curve_knots (KnotsMode mode, int points_num, int8_t order, bool cyclic, IndexRange curve_knots, Span< float > custom_knots, MutableSpan< float > knots)
Vector< int > blender::bke::curves::nurbs::calculate_multiplicity_sequence (Span< float > knots)
static void blender::bke::curves::nurbs::calculate_basis_for_point (const float parameter, const int points_num, const int degree, const Span< float > knots, MutableSpan< float > r_weights, int &r_start_index)
void blender::bke::curves::nurbs::calculate_basis_cache (int points_num, int evaluated_num, int8_t order, bool cyclic, Span< float > knots, BasisCache &basis_cache)
template<typename T>
static void blender::bke::curves::nurbs::interpolate_to_evaluated (const BasisCache &basis_cache, const int8_t order, const Span< T > src, MutableSpan< T > dst)
template<typename T>
static void blender::bke::curves::nurbs::interpolate_to_evaluated_rational (const BasisCache &basis_cache, const int8_t order, const Span< float > control_weights, const Span< T > src, MutableSpan< T > dst)
void blender::bke::curves::nurbs::interpolate_to_evaluated (const BasisCache &basis_cache, int8_t order, Span< float > control_weights, GSpan src, GMutableSpan dst)