Blender  V3.3
Namespaces | Functions
subdivide_curves.cc File Reference
#include "BKE_attribute_math.hh"
#include "BKE_curves.hh"
#include "BKE_curves_utils.hh"
#include "BKE_geometry_set.hh"
#include "BLI_task.hh"
#include "GEO_subdivide_curves.hh"

Go to the source code of this file.

Namespaces

 blender
 
 blender::geometry
 

Functions

static IndexRange blender::geometry::curve_dst_offsets (const IndexRange points, const int curve_index)
 
static void blender::geometry::calculate_result_offsets (const bke::CurvesGeometry &src_curves, const IndexMask selection, const Span< IndexRange > unselected_ranges, const VArray< int > &cuts, const Span< bool > cyclic, MutableSpan< int > dst_curve_offsets, MutableSpan< int > dst_point_offsets)
 
template<typename T >
static void blender::geometry::linear_interpolation (const T &a, const T &b, MutableSpan< T > dst)
 
template<typename T >
static void blender::geometry::subdivide_attribute_linear (const bke::CurvesGeometry &src_curves, const bke::CurvesGeometry &dst_curves, const IndexMask selection, const Span< int > point_offsets, const Span< T > src, MutableSpan< T > dst)
 
static void blender::geometry::subdivide_attribute_linear (const bke::CurvesGeometry &src_curves, const bke::CurvesGeometry &dst_curves, const IndexMask selection, const Span< int > point_offsets, const GSpan src, GMutableSpan dst)
 
template<typename T >
static void blender::geometry::subdivide_attribute_catmull_rom (const bke::CurvesGeometry &src_curves, const bke::CurvesGeometry &dst_curves, const IndexMask selection, const Span< int > point_offsets, const Span< bool > cyclic, const Span< T > src, MutableSpan< T > dst)
 
static void blender::geometry::subdivide_attribute_catmull_rom (const bke::CurvesGeometry &src_curves, const bke::CurvesGeometry &dst_curves, const IndexMask selection, const Span< int > point_offsets, const Span< bool > cyclic, const GSpan src, GMutableSpan dst)
 
static void blender::geometry::subdivide_bezier_segment (const float3 &position_prev, const float3 &handle_prev, const float3 &handle_next, const float3 &position_next, const HandleType type_prev, const HandleType type_next, const IndexRange segment_points, MutableSpan< float3 > dst_positions, MutableSpan< float3 > dst_handles_l, MutableSpan< float3 > dst_handles_r, MutableSpan< int8_t > dst_types_l, MutableSpan< int8_t > dst_types_r, const bool is_last_cyclic_segment)
 
static void blender::geometry::subdivide_bezier_positions (const Span< float3 > src_positions, const Span< int8_t > src_types_l, const Span< int8_t > src_types_r, const Span< float3 > src_handles_l, const Span< float3 > src_handles_r, const Span< int > evaluated_offsets, const bool cyclic, MutableSpan< float3 > dst_positions, MutableSpan< int8_t > dst_types_l, MutableSpan< int8_t > dst_types_r, MutableSpan< float3 > dst_handles_l, MutableSpan< float3 > dst_handles_r)
 
bke::CurvesGeometry blender::geometry::subdivide_curves (const bke::CurvesGeometry &src_curves, IndexMask selection, const VArray< int > &cuts)