Blender
V3.3
|
#include "DNA_mesh_types.h"
#include "DNA_modifier_types.h"
#include "DNA_object_types.h"
#include "DNA_scene_types.h"
#include "BLI_blenlib.h"
#include "BLI_math.h"
#include "BLI_string.h"
#include "BLI_utildefines.h"
#include "BKE_context.h"
#include "BKE_data_transfer.h"
#include "BKE_deform.h"
#include "BKE_mesh_mapping.h"
#include "BKE_mesh_remap.h"
#include "BKE_mesh_runtime.h"
#include "BKE_object.h"
#include "BKE_report.h"
#include "DEG_depsgraph.h"
#include "DEG_depsgraph_query.h"
#include "BLT_translation.h"
#include "RNA_access.h"
#include "RNA_define.h"
#include "RNA_enum_types.h"
#include "RNA_prototypes.h"
#include "WM_api.h"
#include "WM_types.h"
#include "ED_object.h"
#include "object_intern.h"
Go to the source code of this file.
Variables | |
static const EnumPropertyItem | DT_layer_items [] |
|
static |
Definition at line 332 of file object_data_transfer.c.
References DT_LAYERS_ACTIVE_DST, DT_LAYERS_ACTIVE_SRC, DT_LAYERS_NAME_DST, wmOperator::ptr, RNA_enum_get(), RNA_property_enum_get(), RNA_property_enum_set(), and RNA_struct_find_property().
Referenced by OBJECT_OT_data_transfer(), and OBJECT_OT_datalayout_transfer().
|
static |
Definition at line 418 of file object_data_transfer.c.
References BKE_object_data_transfer_dttype_to_srcdst_index(), BKE_object_data_transfer_mesh(), BKE_report(), BLI_freelistN(), BLI_SPACE_TRANSFORM_SETUP, C, CTX_data_ensure_evaluated_depsgraph(), CTX_data_main(), Object::data, PointerRNA::data, data_transfer_exec_is_object_valid(), data_transfer_exec_preprocess_objects(), DEG_get_evaluated_object(), DEG_get_evaluated_scene(), DEG_id_tag_update(), DEG_relations_tag_update(), depsgraph, DT_MULTILAYER_INDEX_INVALID, DT_MULTILAYER_INDEX_MAX, DT_TYPE_LNOR, ED_object_active_context(), ListBase::first, Object::id, ID_IS_LINKED, ID_IS_OVERRIDE_LIBRARY, ID_RECALC_GEOMETRY, ME_AUTOSMOOTH, NC_OBJECT, ND_DRAW, CollectionPointerLink::next, NULL, OPERATOR_CANCELLED, OPERATOR_FINISHED, wmOperator::ptr, CollectionPointerLink::ptr, wmOperator::reports, RNA_boolean_get(), RNA_enum_get(), RNA_float_get(), RPT_INFO, SWAP, and WM_event_add_notifier().
Referenced by OBJECT_OT_data_transfer().
|
static |
Definition at line 386 of file object_data_transfer.c.
References BKE_reportf(), Object::data, Mesh::id, Object::id, ID_IS_LINKED, ID_IS_OVERRIDE_LIBRARY, LIB_TAG_DOIT, ID::name, OB_MESH, wmOperator::reports, RPT_WARNING, ID::tag, and Object::type.
Referenced by data_transfer_exec(), and datalayout_transfer_exec().
|
static |
Definition at line 349 of file object_data_transfer.c.
References BKE_reportf(), C, CTX_data_selected_editable_objects(), Object::data, PointerRNA::data, ListBase::first, Mesh::id, Object::id, ID_IS_LINKED, ID_IS_OVERRIDE_LIBRARY, LIB_TAG_DOIT, ID::name, CollectionPointerLink::next, OB_MESH, CollectionPointerLink::ptr, wmOperator::reports, RPT_WARNING, ID::tag, and Object::type.
Referenced by data_transfer_exec(), and datalayout_transfer_exec().
|
static |
Definition at line 641 of file object_data_transfer.c.
References BLI_strdup(), NULL, ptr, RNA_boolean_get(), and TIP_.
Referenced by OBJECT_OT_data_transfer().
Definition at line 556 of file object_data_transfer.c.
References C, data, Object::data, ED_object_active_context(), NULL, OB_MESH, return(), and Object::type.
Referenced by datalayout_transfer_poll(), and OBJECT_OT_data_transfer().
|
static |
Definition at line 564 of file object_data_transfer.c.
References DT_DATATYPE_IS_EDGE, DT_DATATYPE_IS_LOOP, DT_DATATYPE_IS_MULTILAYERS, DT_DATATYPE_IS_POLY, DT_DATATYPE_IS_VERT, wmOperator::ptr, ptr, RNA_enum_get(), RNA_property_boolean_get(), RNA_property_identifier(), RNA_property_is_set(), RNA_struct_find_property(), STR_ELEM, and STREQ.
Referenced by OBJECT_OT_data_transfer(), and OBJECT_OT_datalayout_transfer().
|
static |
Definition at line 826 of file object_data_transfer.c.
References BKE_object_data_transfer_dttype_to_srcdst_index(), BKE_object_data_transfer_layout(), BLI_freelistN(), C, CTX_data_ensure_evaluated_depsgraph(), CTX_data_main(), PointerRNA::data, data_transfer_exec_is_object_valid(), data_transfer_exec_preprocess_objects(), DataTransferModifierData::data_types, DEG_get_evaluated_object(), DEG_get_evaluated_scene(), DEG_id_tag_update(), DEG_relations_tag_update(), depsgraph, DT_MULTILAYER_INDEX_INVALID, DT_MULTILAYER_INDEX_MAX, ED_object_active_context(), edit_modifier_property_get(), eModifierType_DataTransfer, ListBase::first, Object::id, ID_IS_LINKED, ID_IS_OVERRIDE_LIBRARY, ID_RECALC_GEOMETRY, DataTransferModifierData::layers_select_dst, DataTransferModifierData::layers_select_src, NC_OBJECT, ND_DRAW, CollectionPointerLink::next, NULL, DataTransferModifierData::ob_source, OPERATOR_CANCELLED, OPERATOR_FINISHED, wmOperator::ptr, CollectionPointerLink::ptr, RNA_boolean_get(), RNA_enum_get(), and WM_event_add_notifier().
Referenced by datalayout_transfer_invoke(), and OBJECT_OT_datalayout_transfer().
|
static |
Definition at line 910 of file object_data_transfer.c.
References C, datalayout_transfer_exec(), edit_modifier_invoke_properties(), and WM_menu_invoke().
Referenced by OBJECT_OT_datalayout_transfer().
Definition at line 820 of file object_data_transfer.c.
References C, data_transfer_poll(), edit_modifier_poll_generic(), and OB_MESH.
Referenced by OBJECT_OT_datalayout_transfer().
|
static |
Definition at line 99 of file object_data_transfer.c.
References CD_PROP_BYTE_COLOR, CD_PROP_COLOR, CD_TYPE_AS_MASK, CustomData_get_layer_name(), CustomData_number_of_layers(), EnumPropertyItem::identifier, mask(), EnumPropertyItem::name, RNA_enum_item_add(), RNA_enum_item_add_separator(), type, types, and EnumPropertyItem::value.
Referenced by dt_layers_select_src_itemf().
|
static |
Definition at line 237 of file object_data_transfer.c.
References C, DT_LAYERS_ACTIVE_DST, DT_LAYERS_ACTIVE_SRC, DT_LAYERS_INDEX_DST, DT_LAYERS_NAME_DST, NULL, ptr, rna_enum_dt_layers_select_dst_items, RNA_enum_get(), RNA_enum_item_end(), RNA_enum_items_add_value(), RNA_property_boolean_get(), and RNA_struct_find_property().
Referenced by dt_layers_select_itemf(), and OBJECT_OT_datalayout_transfer().
|
static |
Definition at line 271 of file object_data_transfer.c.
References C, dt_layers_select_dst_itemf(), dt_layers_select_src_itemf(), ptr, RNA_boolean_get(), RNA_property_identifier(), and STREQ.
Referenced by OBJECT_OT_data_transfer().
|
static |
Definition at line 126 of file object_data_transfer.c.
References BKE_object_defgroup_list(), BKE_object_pose_armature_get(), BKE_object_supports_vertex_groups(), C, CD_MASK_BAREMESH, CD_MASK_MLOOPUV, CD_MASK_PROP_BYTE_COLOR, CD_MASK_PROP_COLOR, CD_MLOOPUV, CTX_data_ensure_evaluated_depsgraph(), CustomData_get_layer_name(), CustomData_number_of_layers(), DEG_get_evaluated_object(), DEG_get_evaluated_scene(), depsgraph, dt_add_vcol_layers(), DT_LAYERS_ACTIVE_DST, DT_LAYERS_ACTIVE_SRC, DT_LAYERS_ALL_SRC, DT_LAYERS_VGROUP_SRC_BONE_DEFORM, DT_LAYERS_VGROUP_SRC_BONE_SELECT, DT_TYPE_MDEFORMVERT, DT_TYPE_MLOOPCOL_LOOP, DT_TYPE_MLOOPCOL_VERT, DT_TYPE_MPROPCOL_LOOP, DT_TYPE_MPROPCOL_VERT, DT_TYPE_SHAPEKEY, DT_TYPE_UV, DT_TYPE_VCOL_ALL, ED_object_active_context(), ListBase::first, Mesh::ldata, CustomData_MeshMasks::lmask, mesh_get_eval_final(), bDeformGroup::name, bDeformGroup::next, NULL, ptr, rna_enum_dt_layers_select_src_items, RNA_enum_get(), RNA_enum_item_add(), RNA_enum_item_add_separator(), RNA_enum_item_end(), RNA_enum_items_add_value(), RNA_property_boolean_get(), RNA_struct_find_property(), Mesh::vdata, and CustomData_MeshMasks::vmask.
Referenced by dt_layers_select_itemf(), and OBJECT_OT_datalayout_transfer().
|
static |
Definition at line 291 of file object_data_transfer.c.
References BKE_object_data_transfer_get_dttypes_capacity(), C, 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, NULL, ptr, rna_enum_dt_mix_mode_items, RNA_enum_get(), RNA_enum_item_add_separator(), RNA_enum_item_end(), and RNA_enum_items_add_value().
Referenced by OBJECT_OT_data_transfer().
void OBJECT_OT_data_transfer | ( | struct wmOperatorType * | ot | ) |
Transfer mesh data from active to selected objects.
Definition at line 655 of file object_data_transfer.c.
References CDT_MIX_TRANSFER, wmOperatorType::check, data_transfer_check(), data_transfer_exec(), data_transfer_get_description(), data_transfer_poll(), data_transfer_poll_property(), wmOperatorType::description, DT_layer_items, DT_LAYERS_ACTIVE_DST, DT_LAYERS_ACTIVE_SRC, dt_layers_select_itemf(), dt_mix_mode_itemf(), wmOperatorType::exec, wmOperatorType::flag, wmOperatorType::get_description, wmOperatorType::idname, wmOperatorType::invoke, MREMAP_MODE_EDGE_NEAREST, MREMAP_MODE_LOOP_NEAREST_POLYNOR, MREMAP_MODE_POLY_NEAREST, MREMAP_MODE_VERT_NEAREST, wmOperatorType::name, NULL, OPTYPE_REGISTER, OPTYPE_UNDO, ot, wmOperatorType::poll, wmOperatorType::poll_property, wmOperatorType::prop, PROP_DISTANCE, PROP_FACTOR, PROP_HIDDEN, PROP_SKIP_SAVE, RNA_def_boolean(), RNA_def_enum(), RNA_def_float(), RNA_def_property_enum_funcs_runtime(), RNA_def_property_flag(), RNA_def_property_subtype(), rna_enum_dt_layers_select_dst_items, rna_enum_dt_layers_select_src_items, rna_enum_dt_method_edge_items, rna_enum_dt_method_loop_items, rna_enum_dt_method_poly_items, rna_enum_dt_method_vertex_items, rna_enum_dt_mix_mode_items, wmOperatorType::srna, and WM_menu_invoke().
Referenced by ED_operatortypes_object().
void OBJECT_OT_datalayout_transfer | ( | wmOperatorType * | ot | ) |
Definition at line 918 of file object_data_transfer.c.
References wmOperatorType::check, data_transfer_check(), data_transfer_poll_property(), datalayout_transfer_exec(), datalayout_transfer_invoke(), datalayout_transfer_poll(), wmOperatorType::description, DT_layer_items, DT_LAYERS_ACTIVE_DST, DT_LAYERS_ACTIVE_SRC, dt_layers_select_dst_itemf(), dt_layers_select_src_itemf(), edit_modifier_properties(), wmOperatorType::exec, wmOperatorType::flag, wmOperatorType::idname, wmOperatorType::invoke, wmOperatorType::name, NULL, OPTYPE_REGISTER, OPTYPE_UNDO, ot, wmOperatorType::poll, wmOperatorType::poll_property, wmOperatorType::prop, RNA_def_boolean(), RNA_def_enum(), RNA_def_property_enum_funcs_runtime(), rna_enum_dt_layers_select_dst_items, rna_enum_dt_layers_select_src_items, and wmOperatorType::srna.
Referenced by ED_operatortypes_object().
|
static |
Definition at line 47 of file object_data_transfer.c.
Referenced by OBJECT_OT_data_transfer(), and OBJECT_OT_datalayout_transfer().