46 #define DT_TYPE_MAX 30
63 bool *r_advanced_mixing,
70 #define DT_DATATYPE_IS_VERT(_dt) \
72 DT_TYPE_MDEFORMVERT, \
75 DT_TYPE_BWEIGHT_VERT, \
76 DT_TYPE_MLOOPCOL_VERT, \
77 DT_TYPE_MPROPCOL_VERT)
78 #define DT_DATATYPE_IS_EDGE(_dt) \
83 DT_TYPE_BWEIGHT_EDGE, \
84 DT_TYPE_FREESTYLE_EDGE)
85 #define DT_DATATYPE_IS_LOOP(_dt) \
86 ELEM(_dt, DT_TYPE_UV, DT_TYPE_LNOR, DT_TYPE_MLOOPCOL_LOOP, DT_TYPE_MPROPCOL_LOOP)
87 #define DT_DATATYPE_IS_POLY(_dt) ELEM(_dt, DT_TYPE_UV, DT_TYPE_SHARP_FACE, DT_TYPE_FREESTYLE_FACE)
89 #define DT_DATATYPE_IS_MULTILAYERS(_dt) \
91 DT_TYPE_MDEFORMVERT, \
93 DT_TYPE_MPROPCOL_VERT, \
94 DT_TYPE_MLOOPCOL_VERT, \
95 DT_TYPE_MPROPCOL_VERT | DT_TYPE_MLOOPCOL_VERT, \
96 DT_TYPE_MPROPCOL_LOOP, \
97 DT_TYPE_MLOOPCOL_LOOP, \
98 DT_TYPE_MPROPCOL_LOOP | DT_TYPE_MLOOPCOL_LOOP, \
132 DT_LAYERS_CREATE_DST = -4,
165 float islands_handling_precision,
170 const char *vgroup_name,
188 float islands_handling_precision,
193 const char *vgroup_name,
CustomData interface, see also DNA_customdata_types.h.
@ DT_MULTILAYER_INDEX_MAX
@ DT_MULTILAYER_INDEX_MDEFORMVERT
@ DT_MULTILAYER_INDEX_INVALID
@ DT_MULTILAYER_INDEX_SHAPEKEY
@ DT_MULTILAYER_INDEX_VCOL_VERT
@ DT_MULTILAYER_INDEX_VCOL_LOOP
@ DT_LAYERS_VGROUP_SRC_BONE_SELECT
@ DT_LAYERS_VGROUP_SRC_BONE_DEFORM
int BKE_object_data_transfer_dttype_to_srcdst_index(int dtdata_type)
void BKE_object_data_transfer_layout(struct Depsgraph *depsgraph, struct Scene *scene, struct Object *ob_src, struct Object *ob_dst, int data_types, bool use_delete, const int fromlayers_select[DT_MULTILAYER_INDEX_MAX], const int tolayers_select[DT_MULTILAYER_INDEX_MAX])
int BKE_object_data_transfer_dttype_to_cdtype(int dtdata_type)
int BKE_object_data_transfer_get_dttypes_item_types(int dtdata_types)
bool BKE_object_data_transfer_get_dttypes_capacity(int dtdata_types, bool *r_advanced_mixing, bool *r_threshold)
bool BKE_object_data_transfer_mesh(struct Depsgraph *depsgraph, struct Scene *scene, struct Object *ob_src, struct Object *ob_dst, int data_types, bool use_create, int map_vert_mode, int map_edge_mode, int map_loop_mode, int map_poly_mode, struct SpaceTransform *space_transform, bool auto_transform, float max_distance, float ray_radius, float islands_handling_precision, const int fromlayers_select[DT_MULTILAYER_INDEX_MAX], const int tolayers_select[DT_MULTILAYER_INDEX_MAX], int mix_mode, float mix_factor, const char *vgroup_name, bool invert_vgroup, struct ReportList *reports)
void BKE_object_data_transfer_dttypes_to_cdmask(int dtdata_types, struct CustomData_MeshMasks *r_data_masks)
bool BKE_object_data_transfer_ex(struct Depsgraph *depsgraph, struct Scene *scene, struct Object *ob_src, struct Object *ob_dst, struct Mesh *me_dst, int data_types, bool use_create, int map_vert_mode, int map_edge_mode, int map_loop_mode, int map_poly_mode, struct SpaceTransform *space_transform, bool auto_transform, float max_distance, float ray_radius, float islands_handling_precision, const int fromlayers_select[DT_MULTILAYER_INDEX_MAX], const int tolayers_select[DT_MULTILAYER_INDEX_MAX], int mix_mode, float mix_factor, const char *vgroup_name, bool invert_vgroup, struct ReportList *reports)
struct Depsgraph Depsgraph
const Depsgraph * depsgraph