Blender V5.0
transform_convert_curves.cc File Reference
#include <optional>
#include "BLI_array.hh"
#include "BLI_array_utils.hh"
#include "BLI_index_mask_expression.hh"
#include "BLI_inplace_priority_queue.hh"
#include "BLI_math_matrix.h"
#include "BLI_span.hh"
#include "BKE_attribute.hh"
#include "BKE_context.hh"
#include "BKE_crazyspace.hh"
#include "BKE_curves.hh"
#include "BKE_curves_utils.hh"
#include "BKE_geometry_set.hh"
#include "ED_curves.hh"
#include "MEM_guardedalloc.h"
#include "transform.hh"
#include "transform_convert.hh"
#include "transform_snap.hh"

Go to the source code of this file.

Namespaces

namespace  blender
namespace  blender::ed
namespace  blender::ed::transform
namespace  blender::ed::transform::curves

Functions

void blender::ed::transform::curves::create_aligned_handles_masks (const bke::CurvesGeometry &curves, Span< IndexMask > points_to_transform_per_attr, int curve_index, TransCustomData &custom_data)
static void blender::ed::transform::curves::curve_connected_point_distances (const Span< float3 > positions, MutableSpan< float > r_distances)
static void blender::ed::transform::curves::cyclic_curve_connected_point_distances (const Span< float3 > positions, MutableSpan< float > r_distances)
static IndexMask blender::ed::transform::curves::handles_by_type (const IndexMask &handles, const VArray< int8_t > &types, const HandleType type, IndexMaskMemory &memory)
static bool blender::ed::transform::curves::update_auto_handle_types (bke::CurvesGeometry &curves, const IndexMask &auto_handles, const IndexMask &auto_handles_opposite, const IndexMask &selected_handles, const IndexMask &selected_handles_opposite, const StringRef handle_type_name, IndexMaskMemory &memory)
static bool blender::ed::transform::curves::update_vector_handle_types (bke::CurvesGeometry &curves, const IndexMask &selected_handles, const StringRef handle_type_name)
bool blender::ed::transform::curves::update_handle_types_for_transform (eTfmMode mode, const std::array< IndexMask, 3 > &selection_per_attribute, const IndexMask &bezier_points, bke::CurvesGeometry &curves)
static MutableSpan< float3blender::ed::transform::curves::append_positions_to_custom_data (const IndexMask selection, Span< float3 > positions, TransCustomData &custom_data)
static void blender::ed::transform::curves::createTransCurvesVerts (bContext *C, TransInfo *t)
void blender::ed::transform::curves::calculate_aligned_handles (const TransCustomData &custom_data, bke::CurvesGeometry &curves, int curve_index)
static void blender::ed::transform::curves::recalcData_curves (TransInfo *t)
static OffsetIndices< int > blender::ed::transform::curves::recent_position_offsets (TransCustomData &custom_data, int num)
static void blender::ed::transform::curves::fill_map (const CurveType curve_type, const IndexRange curve_points, const OffsetIndices< int > position_offsets_in_td, const int handles_offset, MutableSpan< int > map)
CurvesTransformDatablender::ed::transform::curves::create_curves_transform_custom_data (TransCustomData &custom_data)
void blender::ed::transform::curves::copy_positions_from_curves_transform_custom_data (const TransCustomData &custom_data, int layer, MutableSpan< float3 > positions_dst)
void blender::ed::transform::curves::curve_populate_trans_data_structs (const TransInfo &t, TransDataContainer &tc, bke::CurvesGeometry &curves, const float4x4 &transform, const bke::crazyspace::GeometryDeformation &deformation, std::optional< MutableSpan< float > > value_attribute, Span< IndexMask > points_to_transform_per_attr, const IndexMask &affected_curves, bool use_connected_only, const IndexMask &bezier_curves, void *extra=nullptr)