Blender V5.0
curves.cc File Reference
#include <cstring>
#include <optional>
#include "MEM_guardedalloc.h"
#include "DNA_curves_types.h"
#include "DNA_defaults.h"
#include "DNA_material_types.h"
#include "DNA_object_types.h"
#include "BLI_index_range.hh"
#include "BLI_math_matrix.hh"
#include "BLI_rand.hh"
#include "BLI_resource_scope.hh"
#include "BLI_span.hh"
#include "BLI_string.h"
#include "BLI_utildefines.h"
#include "BLI_vector.hh"
#include "BKE_anim_data.hh"
#include "BKE_attribute_legacy_convert.hh"
#include "BKE_curves.hh"
#include "BKE_customdata.hh"
#include "BKE_geometry_fields.hh"
#include "BKE_geometry_set.hh"
#include "BKE_idtype.hh"
#include "BKE_lib_id.hh"
#include "BKE_lib_query.hh"
#include "BKE_modifier.hh"
#include "BKE_object.hh"
#include "BKE_object_types.hh"
#include "BLT_translation.hh"
#include "DEG_depsgraph_query.hh"
#include "BLO_read_write.hh"

Go to the source code of this file.

Classes

class  RandomNumberGenerator

Namespaces

namespace  blender
namespace  blender::bke

Typedefs

using float3

Functions

static void curves_init_data (ID *id)
static void curves_copy_data (Main *, std::optional< Library * >, ID *id_dst, const ID *id_src, const int)
static void curves_free_data (ID *id)
static void curves_foreach_id (ID *id, LibraryForeachIDData *data)
static void curves_foreach_working_space_color (ID *id, const IDTypeForeachColorFunctionCallback &fn)
static void curves_blend_write (BlendWriter *writer, ID *id, const void *id_address)
static void curves_blend_read_data (BlendDataReader *reader, ID *id)
CurvesBKE_curves_add (Main *bmain, const char *name)
bool BKE_curves_attribute_required (const Curves *, const blender::StringRef name)
CurvesBKE_curves_copy_for_eval (const Curves *curves_src)
static void curves_evaluate_modifiers (Depsgraph *depsgraph, Scene *scene, Object *object, blender::bke::GeometrySet &geometry_set)
void BKE_curves_data_update (Depsgraph *depsgraph, Scene *scene, Object *object)
void BKE_curves_batch_cache_dirty_tag (Curves *curves, int mode)
void BKE_curves_batch_cache_free (Curves *curves)
Curvesblender::bke::curves_new_nomain (int points_num, int curves_num)
Curvesblender::bke::curves_new_nomain_single (int points_num, CurveType type)
Curvesblender::bke::curves_new_nomain (CurvesGeometry curves)
void blender::bke::curves_copy_parameters (const Curves &src, Curves &dst)
void blender::bke::curves_normals_point_domain_calc (const CurvesGeometry &curves, MutableSpan< float3 > normals)

Variables

static const char * ATTR_POSITION = "position"
IDTypeInfo IDType_ID_CV
void(* BKE_curves_batch_cache_dirty_tag_cb )(Curves *curves, int mode) = nullptr
void(* BKE_curves_batch_cache_free_cb )(Curves *curves) = nullptr

Typedef Documentation

◆ float3

Definition at line 619 of file BLI_math_vector_types.hh.

Function Documentation

◆ BKE_curves_add()

◆ BKE_curves_attribute_required()

bool BKE_curves_attribute_required ( const Curves * ,
const blender::StringRef name )

Definition at line 191 of file blenkernel/intern/curves.cc.

References ATTR_POSITION, and name.

◆ BKE_curves_batch_cache_dirty_tag()

void BKE_curves_batch_cache_dirty_tag ( Curves * curves,
int mode )

◆ BKE_curves_batch_cache_free()

void BKE_curves_batch_cache_free ( Curves * curves)

Definition at line 283 of file blenkernel/intern/curves.cc.

References BKE_curves_batch_cache_free_cb.

Referenced by curves_free_data().

◆ BKE_curves_copy_for_eval()

Curves * BKE_curves_copy_for_eval ( const Curves * curves_src)

Definition at line 196 of file blenkernel/intern/curves.cc.

References BKE_id_copy_ex(), Curves::id, and LIB_ID_COPY_LOCALIZE.

◆ BKE_curves_data_update()

◆ curves_blend_read_data()

void curves_blend_read_data ( BlendDataReader * reader,
ID * id )
static

◆ curves_blend_write()

◆ curves_copy_data()

void curves_copy_data ( Main * ,
std::optional< Library * > ,
ID * id_dst,
const ID * id_src,
const int  )
static

◆ curves_evaluate_modifiers()

◆ curves_foreach_id()

void curves_foreach_id ( ID * id,
LibraryForeachIDData * data )
static

◆ curves_foreach_working_space_color()

void curves_foreach_working_space_color ( ID * id,
const IDTypeForeachColorFunctionCallback & fn )
static

◆ curves_free_data()

◆ curves_init_data()

void curves_init_data ( ID * id)
static

Variable Documentation

◆ ATTR_POSITION

const char* ATTR_POSITION = "position"
static

◆ BKE_curves_batch_cache_dirty_tag_cb

void(* BKE_curves_batch_cache_dirty_tag_cb) (Curves *curves, int mode) ( Curves * curves,
int mode ) = nullptr

◆ BKE_curves_batch_cache_free_cb

void(* BKE_curves_batch_cache_free_cb) (Curves *curves) ( Curves * curves) = nullptr

Definition at line 274 of file blenkernel/intern/curves.cc.

Referenced by BKE_curves_batch_cache_free(), and DRW_module_init().

◆ IDType_ID_CV

IDTypeInfo IDType_ID_CV
Initial value:
= {
Curves::id_type,
sizeof(Curves),
"Curves",
N_("hair_curves"),
nullptr,
nullptr,
nullptr,
nullptr,
nullptr,
nullptr,
nullptr,
nullptr,
}
@ IDTYPE_FLAGS_APPEND_IS_REUSABLE
Definition BKE_idtype.hh:47
#define BLT_I18NCONTEXT_ID_CURVES
#define FILTER_ID_OB
Definition DNA_ID.h:1214
#define FILTER_ID_MA
Definition DNA_ID.h:1208
#define FILTER_ID_CV
Definition DNA_ID.h:1228
@ INDEX_ID_CV
Definition DNA_ID.h:1328
static void curves_foreach_working_space_color(ID *id, const IDTypeForeachColorFunctionCallback &fn)
static void curves_copy_data(Main *, std::optional< Library * >, ID *id_dst, const ID *id_src, const int)
static void curves_blend_read_data(BlendDataReader *reader, ID *id)
static void curves_init_data(ID *id)
static void curves_foreach_id(ID *id, LibraryForeachIDData *data)
static void curves_blend_write(BlendWriter *writer, ID *id, const void *id_address)
static void curves_free_data(ID *id)
#define N_(msgid)

Definition at line 153 of file blenkernel/intern/curves.cc.