|
Blender V5.0
|
#include "BKE_customdata.hh"Go to the source code of this file.
Enumerations | |
| enum | { CD_FAKE = 1 << 8 , CD_FAKE_MDEFORMVERT = CD_FAKE | CD_MDEFORMVERT , CD_FAKE_SEAM = CD_FAKE | 100 , CD_FAKE_UV , CD_FAKE_LNOR = CD_FAKE | 200 , CD_FAKE_SHARP = CD_FAKE | 300 , CD_FAKE_BWEIGHT = CD_FAKE | 400 , CD_FAKE_CREASE = CD_FAKE | 500 , CD_FAKE_FREESTYLE_EDGE = CD_FAKE | 600 , CD_FAKE_FREESTYLE_FACE = CD_FAKE | 700 } |
Functions | |
| float | data_transfer_interp_float_do (int mix_mode, float val_dst, float val_src, float mix_factor) |
| void | data_transfer_layersmapping_add_item (ListBase *r_map, int data_type, int mix_mode, float mix_factor, const float *mix_weights, const void *data_src, void *data_dst, int data_src_n, int data_dst_n, size_t elem_size, size_t data_size, size_t data_offset, uint64_t data_flag, cd_datatransfer_interp interp, void *interp_data) |
| bool | data_transfer_layersmapping_vgroups (ListBase *r_map, int mix_mode, float mix_factor, const float *mix_weights, bool use_create, bool use_delete, Object *ob_src, Object *ob_dst, const Mesh &mesh_src, Mesh &mesh_dst, bool use_dupref_dst, int fromlayers, int tolayers) |
| void | customdata_data_transfer_interp_normal_normals (const CustomDataTransferLayerMap *laymap, void *data_dst, const void **sources, const float *weights, int count, float mix_factor) |
| anonymous enum |
Fake CD_LAYERS (those are actually 'real' data stored directly into elements' structs, or otherwise not (directly) accessible to usual CDLayer system).
| Enumerator | |
|---|---|
| CD_FAKE | |
| CD_FAKE_MDEFORMVERT | |
| CD_FAKE_SEAM | |
| CD_FAKE_UV | |
| CD_FAKE_LNOR | |
| CD_FAKE_SHARP | |
| CD_FAKE_BWEIGHT | |
| CD_FAKE_CREASE | |
| CD_FAKE_FREESTYLE_EDGE | |
| CD_FAKE_FREESTYLE_FACE | |
Definition at line 23 of file data_transfer_intern.hh.
| void customdata_data_transfer_interp_normal_normals | ( | const CustomDataTransferLayerMap * | laymap, |
| void * | data_dst, | ||
| const void ** | sources, | ||
| const float * | weights, | ||
| int | count, | ||
| float | mix_factor ) |
Normals are special, we need to take care of source & destination spaces.
Definition at line 4884 of file customdata.cc.
References BLI_assert, BLI_space_transform_invert_normal(), CD_NORMAL, count, CustomData_data_mix_value(), CustomDataTransferLayerMap::data_type, LayerTypeInfo::interp, CustomDataTransferLayerMap::interp_data, layerType_getInfo(), and CustomDataTransferLayerMap::mix_mode.
Referenced by data_transfer_layersmapping_generate().
| float data_transfer_interp_float_do | ( | int | mix_mode, |
| float | val_dst, | ||
| float | val_src, | ||
| float | mix_factor ) |
Definition at line 411 of file data_transfer.cc.
References CDT_MIX_ADD, CDT_MIX_MIX, CDT_MIX_MUL, CDT_MIX_REPLACE_ABOVE_THRESHOLD, CDT_MIX_REPLACE_BELOW_THRESHOLD, CDT_MIX_SUB, CDT_MIX_TRANSFER, and interpf().
Referenced by vgroups_datatransfer_interp().
| void data_transfer_layersmapping_add_item | ( | ListBase * | r_map, |
| int | data_type, | ||
| int | mix_mode, | ||
| float | mix_factor, | ||
| const float * | mix_weights, | ||
| const void * | data_src, | ||
| void * | data_dst, | ||
| int | data_src_n, | ||
| int | data_dst_n, | ||
| size_t | elem_size, | ||
| size_t | data_size, | ||
| size_t | data_offset, | ||
| uint64_t | data_flag, | ||
| cd_datatransfer_interp | interp, | ||
| void * | interp_data ) |
Definition at line 451 of file data_transfer.cc.
References BLI_addtail(), BLI_assert, CustomDataTransferLayerMap::data_dst, CustomDataTransferLayerMap::data_dst_n, CustomDataTransferLayerMap::data_flag, CustomDataTransferLayerMap::data_offset, CustomDataTransferLayerMap::data_size, CustomDataTransferLayerMap::data_src, CustomDataTransferLayerMap::data_src_n, CustomDataTransferLayerMap::data_type, CustomDataTransferLayerMap::elem_size, CustomDataTransferLayerMap::interp, interp(), CustomDataTransferLayerMap::interp_data, MEM_callocN(), CustomDataTransferLayerMap::mix_factor, CustomDataTransferLayerMap::mix_mode, and CustomDataTransferLayerMap::mix_weights.
Referenced by data_transfer_layersmapping_add_item_cd(), data_transfer_layersmapping_vgroups(), and data_transfer_layersmapping_vgroups_multisrc_to_dst().
| bool data_transfer_layersmapping_vgroups | ( | ListBase * | r_map, |
| int | mix_mode, | ||
| float | mix_factor, | ||
| const float * | mix_weights, | ||
| bool | use_create, | ||
| bool | use_delete, | ||
| Object * | ob_src, | ||
| Object * | ob_dst, | ||
| const Mesh & | mesh_src, | ||
| Mesh & | mesh_dst, | ||
| bool | use_dupref_dst, | ||
| int | fromlayers, | ||
| int | tolayers ) |
Definition at line 1394 of file deform.cc.
References BKE_object_defgroup_active_index_get(), BKE_object_defgroup_add(), BKE_object_defgroup_add_name(), BKE_object_defgroup_list(), BKE_object_defgroup_name_index(), BKE_object_defgroup_remove_all(), BKE_object_defgroup_subset_from_select_type(), BLI_assert, BLI_findlink(), BLI_listbase_count(), BLI_listbase_is_empty(), CD_FAKE_MDEFORMVERT, data_transfer_layersmapping_add_item(), data_transfer_layersmapping_vgroups_multisrc_to_dst(), DT_LAYERS_ACTIVE_DST, DT_LAYERS_ACTIVE_SRC, DT_LAYERS_ALL_SRC, DT_LAYERS_INDEX_DST, DT_LAYERS_NAME_DST, DT_LAYERS_VGROUP_SRC_BONE_DEFORM, DT_LAYERS_VGROUP_SRC_BONE_SELECT, MEM_SAFE_FREE, bDeformGroup::name, num, ret, UNUSED_VARS_NDEBUG, vgroups_datatransfer_interp(), WT_VGROUP_ALL, WT_VGROUP_BONE_DEFORM, and WT_VGROUP_BONE_SELECT.
Referenced by data_transfer_layersmapping_generate().