57 #define DT_TYPE_MAX 27
69 bool *r_advanced_mixing,
76 #define DT_DATATYPE_IS_VERT(_dt) \
77 ELEM(_dt, DT_TYPE_MDEFORMVERT, DT_TYPE_SHAPEKEY, DT_TYPE_SKIN, DT_TYPE_BWEIGHT_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) ELEM(_dt, DT_TYPE_UV, DT_TYPE_VCOL, DT_TYPE_LNOR)
86 #define DT_DATATYPE_IS_POLY(_dt) ELEM(_dt, DT_TYPE_UV, DT_TYPE_SHARP_FACE, DT_TYPE_FREESTYLE_FACE)
88 #define DT_DATATYPE_IS_MULTILAYERS(_dt) \
89 ELEM(_dt, DT_TYPE_MDEFORMVERT, DT_TYPE_SHAPEKEY, DT_TYPE_VCOL, DT_TYPE_UV)
121 DT_LAYERS_CREATE_DST = -4,
129 const int data_types,
130 const bool use_delete,
138 const int data_types,
139 const bool use_create,
140 const int map_vert_mode,
141 const int map_edge_mode,
142 const int map_loop_mode,
143 const int map_poly_mode,
145 const bool auto_transform,
146 const float max_distance,
147 const float ray_radius,
148 const float islands_handling_precision,
152 const float mix_factor,
153 const char *vgroup_name,
154 const bool invert_vgroup,
161 const int data_types,
163 const int map_vert_mode,
164 const int map_edge_mode,
165 const int map_loop_mode,
166 const int map_poly_mode,
168 const bool auto_transform,
169 const float max_distance,
170 const float ray_radius,
171 const float islands_handling_precision,
175 const float mix_factor,
176 const char *vgroup_name,
177 const bool invert_vgroup,
CustomData interface, see also DNA_customdata_types.h.
@ DT_LAYERS_VGROUP_SRC_BONE_SELECT
@ DT_LAYERS_VGROUP_SRC_BONE_DEFORM
bool BKE_object_data_transfer_ex(struct Depsgraph *depsgraph, struct Scene *scene, struct Object *ob_src, struct Object *ob_dst, struct Mesh *me_dst, const int data_types, bool use_create, const int map_vert_mode, const int map_edge_mode, const int map_loop_mode, const int map_poly_mode, struct SpaceTransform *space_transform, const bool auto_transform, const float max_distance, const float ray_radius, const float islands_handling_precision, const int fromlayers_select[DT_MULTILAYER_INDEX_MAX], const int tolayers_select[DT_MULTILAYER_INDEX_MAX], const int mix_mode, const float mix_factor, const char *vgroup_name, const bool invert_vgroup, struct ReportList *reports)
int BKE_object_data_transfer_dttype_to_srcdst_index(const int dtdata_type)
int BKE_object_data_transfer_get_dttypes_item_types(const int dtdata_types)
void BKE_object_data_transfer_layout(struct Depsgraph *depsgraph, struct Scene *scene, struct Object *ob_src, struct Object *ob_dst, const int data_types, const bool use_delete, const int fromlayers_select[DT_MULTILAYER_INDEX_MAX], const int tolayers_select[DT_MULTILAYER_INDEX_MAX])
bool BKE_object_data_transfer_get_dttypes_capacity(const 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, const int data_types, const bool use_create, const int map_vert_mode, const int map_edge_mode, const int map_loop_mode, const int map_poly_mode, struct SpaceTransform *space_transform, const bool auto_transform, const float max_distance, const float ray_radius, const float islands_handling_precision, const int fromlayers_select[DT_MULTILAYER_INDEX_MAX], const int tolayers_select[DT_MULTILAYER_INDEX_MAX], const int mix_mode, const float mix_factor, const char *vgroup_name, const bool invert_vgroup, struct ReportList *reports)
int BKE_object_data_transfer_dttype_to_cdtype(const int dtdata_type)
@ DT_MULTILAYER_INDEX_MAX
@ DT_MULTILAYER_INDEX_MDEFORMVERT
@ DT_MULTILAYER_INDEX_INVALID
@ DT_MULTILAYER_INDEX_SHAPEKEY
@ DT_MULTILAYER_INDEX_VCOL
void BKE_object_data_transfer_dttypes_to_cdmask(const int dtdata_types, struct CustomData_MeshMasks *r_data_masks)
struct Depsgraph Depsgraph
const Depsgraph * depsgraph