Blender  V3.3
Namespaces | Functions
fillet_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_devirtualize_parameters.hh"
#include "BLI_math_geom.h"
#include "BLI_math_rotation.hh"
#include "BLI_task.hh"
#include "GEO_fillet_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)
 
template<typename T >
static void blender::geometry::threaded_slice_fill (const Span< T > src, const Span< int > offsets, MutableSpan< T > dst)
 
template<typename T >
static void blender::geometry::duplicate_fillet_point_data (const bke::CurvesGeometry &src_curves, const bke::CurvesGeometry &dst_curves, const IndexMask curve_selection, const Span< int > point_offsets, const Span< T > src, MutableSpan< T > dst)
 
static void blender::geometry::duplicate_fillet_point_data (const bke::CurvesGeometry &src_curves, const bke::CurvesGeometry &dst_curves, const IndexMask selection, const Span< int > point_offsets, const GSpan src, GMutableSpan dst)
 
static void blender::geometry::calculate_result_offsets (const bke::CurvesGeometry &src_curves, const IndexMask selection, const Span< IndexRange > unselected_ranges, const VArray< float > &radii, const VArray< int > &counts, const Span< bool > cyclic, MutableSpan< int > dst_curve_offsets, MutableSpan< int > dst_point_offsets)
 
static void blender::geometry::calculate_directions (const Span< float3 > positions, MutableSpan< float3 > directions)
 
static void blender::geometry::calculate_angles (const Span< float3 > directions, MutableSpan< float > angles)
 
static float blender::geometry::limit_radius (const float3 &position_prev, const float3 &position, const float3 &position_next, const float angle_prev, const float angle, const float angle_next, const float radius_prev, const float radius, const float radius_next)
 
static void blender::geometry::limit_radii (const Span< float3 > positions, const Span< float > angles, const Span< float > radii, const bool cyclic, MutableSpan< float > radii_clamped)
 
static void blender::geometry::calculate_fillet_positions (const Span< float3 > src_positions, const Span< float > angles, const Span< float > radii, const Span< float3 > directions, const Span< int > dst_offsets, MutableSpan< float3 > dst)
 
static void blender::geometry::calculate_bezier_handles_bezier_mode (const Span< float3 > src_handles_l, const Span< float3 > src_handles_r, const Span< int8_t > src_types_l, const Span< int8_t > src_types_r, const Span< float > angles, const Span< float > radii, const Span< float3 > directions, const Span< int > dst_offsets, const Span< 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)
 
static void blender::geometry::calculate_bezier_handles_poly_mode (const Span< float3 > src_handles_l, const Span< float3 > src_handles_r, const Span< int8_t > src_types_l, const Span< int8_t > src_types_r, const Span< int > dst_offsets, const Span< 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)
 
static bke::CurvesGeometry blender::geometry::fillet_curves (const bke::CurvesGeometry &src_curves, const IndexMask curve_selection, const VArray< float > &radius_input, const VArray< int > &counts, const bool limit_radius, const bool use_bezier_mode)
 
bke::CurvesGeometry blender::geometry::fillet_curves_poly (const bke::CurvesGeometry &src_curves, IndexMask curve_selection, const VArray< float > &radius, const VArray< int > &counts, bool limit_radius)
 
bke::CurvesGeometry blender::geometry::fillet_curves_bezier (const bke::CurvesGeometry &src_curves, IndexMask curve_selection, const VArray< float > &radius, bool limit_radius)