Blender V4.3
curves.cc File Reference
#include <cmath>
#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_base.h"
#include "BLI_math_matrix.hh"
#include "BLI_rand.hh"
#include "BLI_span.hh"
#include "BLI_string.h"
#include "BLI_utildefines.h"
#include "BLI_vector.hh"
#include "BKE_anim_data.hh"
#include "BKE_curves.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.

Namespaces

namespace  blender
 
namespace  blender::bke
 

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_blend_write (BlendWriter *writer, ID *id, const void *id_address)
 
static void curves_blend_read_data (BlendDataReader *reader, ID *id)
 
void * BKE_curves_add (Main *bmain, const char *name)
 
bool BKE_curves_attribute_required (const Curves *, const char *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
 

Function Documentation

◆ BKE_curves_add()

void * BKE_curves_add ( Main * bmain,
const char * name )

◆ BKE_curves_attribute_required()

bool BKE_curves_attribute_required ( const Curves * ,
const char * name )

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

References ATTR_POSITION, and STREQ.

◆ 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 270 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 183 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()

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

◆ curves_blend_write()

static void curves_blend_write ( BlendWriter * writer,
ID * id,
const void * id_address )
static

◆ curves_copy_data()

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

◆ curves_evaluate_modifiers()

◆ curves_foreach_id()

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

◆ curves_free_data()

static void curves_free_data ( ID * id)
static

◆ curves_init_data()

static void curves_init_data ( ID * id)
static

Variable Documentation

◆ ATTR_POSITION

◆ 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

◆ IDType_ID_CV

IDTypeInfo IDType_ID_CV
Initial value:
= {
sizeof(Curves),
"Curves",
N_("hair_curves"),
nullptr,
nullptr,
nullptr,
nullptr,
nullptr,
nullptr,
nullptr,
nullptr,
}
@ IDTYPE_FLAGS_APPEND_IS_REUSABLE
Definition BKE_idtype.hh:39
#define BLT_I18NCONTEXT_ID_CURVES
#define FILTER_ID_OB
Definition DNA_ID.h:1181
#define FILTER_ID_MA
Definition DNA_ID.h:1175
#define FILTER_ID_CV
Definition DNA_ID.h:1195
@ INDEX_ID_CV
Definition DNA_ID.h:1296
@ ID_CV
struct Curves Curves
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 141 of file blenkernel/intern/curves.cc.