Blender  V3.3
Classes | Macros
object_relations.c File Reference
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include "MEM_guardedalloc.h"
#include "DNA_anim_types.h"
#include "DNA_armature_types.h"
#include "DNA_camera_types.h"
#include "DNA_collection_types.h"
#include "DNA_constraint_types.h"
#include "DNA_gpencil_types.h"
#include "DNA_key_types.h"
#include "DNA_lattice_types.h"
#include "DNA_light_types.h"
#include "DNA_material_types.h"
#include "DNA_mesh_types.h"
#include "DNA_meta_types.h"
#include "DNA_object_types.h"
#include "DNA_particle_types.h"
#include "DNA_scene_types.h"
#include "DNA_vfont_types.h"
#include "DNA_world_types.h"
#include "BLI_kdtree.h"
#include "BLI_linklist.h"
#include "BLI_listbase.h"
#include "BLI_math.h"
#include "BLI_string.h"
#include "BLI_utildefines.h"
#include "BLT_translation.h"
#include "BKE_DerivedMesh.h"
#include "BKE_action.h"
#include "BKE_anim_data.h"
#include "BKE_armature.h"
#include "BKE_camera.h"
#include "BKE_collection.h"
#include "BKE_constraint.h"
#include "BKE_context.h"
#include "BKE_curve.h"
#include "BKE_curves.h"
#include "BKE_displist.h"
#include "BKE_editmesh.h"
#include "BKE_fcurve.h"
#include "BKE_gpencil.h"
#include "BKE_idprop.h"
#include "BKE_idtype.h"
#include "BKE_lattice.h"
#include "BKE_layer.h"
#include "BKE_lib_id.h"
#include "BKE_lib_override.h"
#include "BKE_lib_query.h"
#include "BKE_lib_remap.h"
#include "BKE_light.h"
#include "BKE_lightprobe.h"
#include "BKE_main.h"
#include "BKE_material.h"
#include "BKE_mball.h"
#include "BKE_mesh.h"
#include "BKE_modifier.h"
#include "BKE_node.h"
#include "BKE_object.h"
#include "BKE_pointcloud.h"
#include "BKE_report.h"
#include "BKE_scene.h"
#include "BKE_speaker.h"
#include "BKE_texture.h"
#include "BKE_volume.h"
#include "DEG_depsgraph.h"
#include "DEG_depsgraph_build.h"
#include "DEG_depsgraph_query.h"
#include "WM_api.h"
#include "WM_types.h"
#include "UI_interface.h"
#include "UI_resources.h"
#include "RNA_access.h"
#include "RNA_define.h"
#include "RNA_enum_types.h"
#include "ED_armature.h"
#include "ED_curve.h"
#include "ED_gpencil.h"
#include "ED_keyframing.h"
#include "ED_mesh.h"
#include "ED_object.h"
#include "ED_screen.h"
#include "ED_view3d.h"
#include "object_intern.h"

Go to the source code of this file.

Classes

struct  ParentingContext
 

Macros

#define INDEX_UNSET   -1
 

Functions

Make Vertex Parent Operator
static bool vertex_parent_set_poll (bContext *C)
 
static int vertex_parent_set_exec (bContext *C, wmOperator *op)
 
void OBJECT_OT_vertex_parent_set (wmOperatorType *ot)
 
Make Parent Without Inverse Operator
static int parent_noinv_set_exec (bContext *C, wmOperator *op)
 
void OBJECT_OT_parent_no_inverse_set (wmOperatorType *ot)
 
Make Library Override Operator
static bool make_override_library_object_overridable_check (Main *bmain, Object *object)
 
static int make_override_library_exec (bContext *C, wmOperator *op)
 
static int make_override_library_invoke (bContext *C, wmOperator *op, const wmEvent *UNUSED(event))
 
static bool make_override_library_poll (bContext *C)
 
void OBJECT_OT_make_override_library (wmOperatorType *ot)
 
static bool reset_clear_override_library_poll (bContext *C)
 
static int reset_override_library_exec (bContext *C, wmOperator *UNUSED(op))
 
void OBJECT_OT_reset_override_library (wmOperatorType *ot)
 
static int clear_override_library_exec (bContext *C, wmOperator *UNUSED(op))
 
void OBJECT_OT_clear_override_library (wmOperatorType *ot)
 
Drop Named Material on Object Operator
char * ED_object_ot_drop_named_material_tooltip (bContext *C, const char *name, const int mval[2])
 
static int drop_named_material_invoke (bContext *C, wmOperator *op, const wmEvent *event)
 
void OBJECT_OT_drop_named_material (wmOperatorType *ot)
 
Unlink Object Operator
static int object_unlink_data_exec (bContext *C, wmOperator *op)
 
void OBJECT_OT_unlink_data (wmOperatorType *ot)
 

Clear Track Operator

enum  { CLEAR_TRACK = 1 , CLEAR_TRACK_KEEP_TRANSFORM = 2 }
 
static const EnumPropertyItem prop_clear_track_types []
 
static int object_track_clear_exec (bContext *C, wmOperator *op)
 
void OBJECT_OT_track_clear (wmOperatorType *ot)
 

Make Track Operator

enum  { CREATE_TRACK_DAMPTRACK = 1 , CREATE_TRACK_TRACKTO = 2 , CREATE_TRACK_LOCKTRACK = 3 }
 
static const EnumPropertyItem prop_make_track_types []
 
static int track_set_exec (bContext *C, wmOperator *op)
 
void OBJECT_OT_track_set (wmOperatorType *ot)
 

Link to Scene Operator

enum  {
  MAKE_LINKS_OBDATA = 1 , MAKE_LINKS_MATERIALS = 2 , MAKE_LINKS_ANIMDATA = 3 , MAKE_LINKS_GROUP = 4 ,
  MAKE_LINKS_DUPLICOLLECTION = 5 , MAKE_LINKS_MODIFIERS = 6 , MAKE_LINKS_FONTS = 7 , MAKE_LINKS_SHADERFX = 8
}
 
static int make_links_scene_exec (bContext *C, wmOperator *op)
 
static bool allow_make_links_data (const int type, Object *ob_src, Object *ob_dst)
 
static int make_links_data_exec (bContext *C, wmOperator *op)
 
void OBJECT_OT_make_links_scene (wmOperatorType *ot)
 
void OBJECT_OT_make_links_data (wmOperatorType *ot)
 

Make Local Operator

enum  { MAKE_LOCAL_SELECT_OB = 1 , MAKE_LOCAL_SELECT_OBDATA = 2 , MAKE_LOCAL_SELECT_OBDATA_MATERIAL = 3 , MAKE_LOCAL_ALL = 4 }
 
static int tag_localizable_looper (LibraryIDLinkCallbackData *cb_data)
 
static void tag_localizable_objects (bContext *C, const int mode)
 
static bool make_local_all__instance_indirect_unused (Main *bmain, ViewLayer *view_layer, Collection *collection)
 
static void make_local_animdata_tag_strips (ListBase *strips)
 
static void make_local_animdata_tag (AnimData *adt)
 
static void make_local_material_tag (Material *ma)
 
static int make_local_exec (bContext *C, wmOperator *op)
 
void OBJECT_OT_make_local (wmOperatorType *ot)
 

Make Single User Operator

enum  { MAKE_SINGLE_USER_ALL = 1 , MAKE_SINGLE_USER_SELECTED = 2 }
 
static bool single_data_needs_duplication (ID *id)
 
static void libblock_relink_collection (Main *bmain, Collection *collection, const bool do_collection)
 
static Collectionsingle_object_users_collection (Main *bmain, Scene *scene, Collection *collection, const int flag, const bool copy_collections, const bool is_master_collection)
 
static void single_object_users (Main *bmain, Scene *scene, View3D *v3d, const int flag, const bool copy_collections)
 
void ED_object_single_user (Main *bmain, Scene *scene, Object *ob)
 
static void single_obdata_users (Main *bmain, Scene *scene, ViewLayer *view_layer, View3D *v3d, const int flag)
 
void ED_object_single_obdata_user (Main *bmain, Scene *scene, Object *ob)
 
static void single_object_action_users (Main *bmain, Scene *scene, ViewLayer *view_layer, View3D *v3d, const int flag)
 
static void single_objectdata_action_users (Main *bmain, Scene *scene, ViewLayer *view_layer, View3D *v3d, const int flag)
 
static void single_mat_users (Main *bmain, Scene *scene, ViewLayer *view_layer, View3D *v3d, const int flag)
 
static int make_single_user_exec (bContext *C, wmOperator *op)
 
void OBJECT_OT_make_single_user (wmOperatorType *ot)
 

Clear Parent Operator

EnumPropertyItem prop_clear_parent_types []
 
static void object_remove_parent_deform_modifiers (Object *ob, const Object *par)
 
void ED_object_parent_clear (Object *ob, const int type)
 
static int parent_clear_exec (bContext *C, wmOperator *op)
 
void OBJECT_OT_parent_clear (wmOperatorType *ot)
 

Make Parent Operator

EnumPropertyItem prop_make_parent_types []
 
void ED_object_parent (Object *ob, Object *par, const int type, const char *substr)
 
bool ED_object_parent_set (ReportList *reports, const bContext *C, Scene *scene, Object *const ob, Object *const par, int partype, const bool xmirror, const bool keep_transform, const int vert_par[3])
 
static void parent_set_vert_find (KDTree_3d *tree, Object *child, int vert_par[3], bool is_tri)
 
static bool parent_set_nonvertex_parent (bContext *C, struct ParentingContext *parenting_context)
 
static bool parent_set_vertex_parent_with_kdtree (bContext *C, struct ParentingContext *parenting_context, struct KDTree_3d *tree)
 
static bool parent_set_vertex_parent (bContext *C, struct ParentingContext *parenting_context)
 
static int parent_set_exec (bContext *C, wmOperator *op)
 
static int parent_set_invoke_menu (bContext *C, wmOperatorType *ot)
 
static int parent_set_invoke (bContext *C, wmOperator *op, const wmEvent *UNUSED(event))
 
static bool parent_set_poll_property (const bContext *UNUSED(C), wmOperator *op, const PropertyRNA *prop)
 
void OBJECT_OT_parent_set (wmOperatorType *ot)
 

Macro Definition Documentation

◆ INDEX_UNSET

#define INDEX_UNSET   -1

Enumeration Type Documentation

◆ anonymous enum

anonymous enum
Enumerator
CLEAR_TRACK 
CLEAR_TRACK_KEEP_TRANSFORM 

Definition at line 1147 of file object_relations.c.

◆ anonymous enum

anonymous enum
Enumerator
CREATE_TRACK_DAMPTRACK 
CREATE_TRACK_TRACKTO 
CREATE_TRACK_LOCKTRACK 

Definition at line 1227 of file object_relations.c.

◆ anonymous enum

anonymous enum
Enumerator
MAKE_LINKS_OBDATA 
MAKE_LINKS_MATERIALS 
MAKE_LINKS_ANIMDATA 
MAKE_LINKS_GROUP 
MAKE_LINKS_DUPLICOLLECTION 
MAKE_LINKS_MODIFIERS 
MAKE_LINKS_FONTS 
MAKE_LINKS_SHADERFX 

Definition at line 1410 of file object_relations.c.

◆ anonymous enum

anonymous enum
Enumerator
MAKE_LOCAL_SELECT_OB 
MAKE_LOCAL_SELECT_OBDATA 
MAKE_LOCAL_SELECT_OBDATA_MATERIAL 
MAKE_LOCAL_ALL 

Definition at line 2019 of file object_relations.c.

◆ anonymous enum

anonymous enum
Enumerator
MAKE_SINGLE_USER_ALL 
MAKE_SINGLE_USER_SELECTED 

Definition at line 2683 of file object_relations.c.

Function Documentation

◆ allow_make_links_data()

static bool allow_make_links_data ( const int  type,
Object ob_src,
Object ob_dst 
)
static

◆ clear_override_library_exec()

static int clear_override_library_exec ( bContext C,
wmOperator UNUSEDop 
)
static

◆ drop_named_material_invoke()

static int drop_named_material_invoke ( bContext C,
wmOperator op,
const wmEvent event 
)
static

◆ ED_object_ot_drop_named_material_tooltip()

char* ED_object_ot_drop_named_material_tooltip ( bContext C,
const char *  name,
const int  mval[2] 
)

◆ ED_object_parent()

void ED_object_parent ( Object ob,
Object par,
const int  type,
const char *  substr 
)

◆ ED_object_parent_clear()

void ED_object_parent_clear ( Object ob,
const int  type 
)

◆ ED_object_parent_set()

bool ED_object_parent_set ( ReportList reports,
const bContext C,
Scene scene,
Object *const  ob,
Object *const  par,
int  partype,
const bool  xmirror,
const bool  keep_transform,
const int  vert_par[3] 
)

Definition at line 506 of file object_relations.c.

References add_fmodifier(), CurveCache::anim_path_accum_length, ARM_GROUPS_AUTO, ARM_GROUPS_ENVELOPE, ARM_GROUPS_NAME, FCurve::bezt, BKE_constraint_add_for_object(), BKE_constraint_target_matrix_get(), BKE_displist_make_curveTypes(), BKE_modifiers_is_deformed_by_armature(), BKE_modifiers_is_deformed_by_curve(), BKE_modifiers_is_deformed_by_lattice(), BKE_object_apply_mat4(), BKE_object_parent_loop_check(), BKE_object_workob_calc_parent(), BKE_pose_channel_active_if_layer_visible(), BKE_report(), BLI_strncpy(), bPoseChannel::bone, BONE_RELATIVE_PARENTING, C, RenderData::cfra, CONSTRAINT_OBTYPE_OBJECT, CONSTRAINT_TYPE_FOLLOWPATH, copy_v3_v3(), copy_v3_v3_int(), CTX_data_ensure_evaluated_depsgraph(), CTX_data_main(), CU_FOLLOW, CU_PATH, Object_Runtime::curve_cache, data, bConstraint::data, Object::data, DEG_get_evaluated_object(), DEG_id_tag_update(), depsgraph, ED_action_fcurve_ensure(), ED_gpencil_add_armature(), ED_gpencil_add_armature_weights(), ED_gpencil_add_lattice_modifier(), ED_id_action_ensure(), ED_object_modifier_add(), ED_object_vgroup_calc_from_armature(), ELEM, eModifierType_Armature, eModifierType_Curve, eModifierType_Lattice, ListBase::first, Bone::flag, Curve::flag, FMODIFIER_TYPE_GENERATOR, FCurve::fpt, GP_PAR_ARMATURE_AUTO, GP_PAR_ARMATURE_NAME, Curve::id, Object::id, ID_RECALC_GEOMETRY, ID_RECALC_TRANSFORM, invert_m4_m4(), Object::loc, FCurve::modifiers, bPoseChannel::name, NULL, OB_ARMATURE, OB_CURVES_LEGACY, OB_FONT, OB_GPENCIL, OB_LATTICE, OB_MESH, OB_SURF, Object::obmat, Object::par1, PAR_ARMATURE, PAR_ARMATURE_AUTO, PAR_ARMATURE_ENVELOPE, PAR_ARMATURE_NAME, PAR_BONE, PAR_BONE_RELATIVE, PAR_CURVE, PAR_FOLLOW, PAR_LATTICE, PAR_OBJECT, PAR_PATH_CONST, PAR_VERTEX, PAR_VERTEX_TRI, PARBONE, Object::parent, Object::parentinv, PAROBJECT, Object::parsubstr, Object::partype, PARVERT1, PARVERT3, Scene::r, RPT_ERROR, Object::runtime, scene, sub_v3_v3v3(), Object::type, unit_m4(), and WM_cursor_wait().

Referenced by parent_set_nonvertex_parent(), and parent_set_vertex_parent_with_kdtree().

◆ ED_object_single_obdata_user()

void ED_object_single_obdata_user ( Main bmain,
Scene scene,
Object ob 
)

◆ ED_object_single_user()

void ED_object_single_user ( struct Main bmain,
struct Scene scene,
struct Object ob 
)

Not an especially efficient function, only added so the single user button can be functional.

Definition at line 1806 of file object_relations.c.

References BKE_main_id_newptr_and_tag_clear(), Object::flag, FOREACH_SCENE_OBJECT_BEGIN, FOREACH_SCENE_OBJECT_END, NULL, OB_DONE, scene, and single_object_users().

Referenced by template_id_cb().

◆ libblock_relink_collection()

static void libblock_relink_collection ( Main bmain,
Collection collection,
const bool  do_collection 
)
static

◆ make_links_data_exec()

static int make_links_data_exec ( bContext C,
wmOperator op 
)
static

◆ make_links_scene_exec()

static int make_links_scene_exec ( bContext C,
wmOperator op 
)
static

◆ make_local_all__instance_indirect_unused()

static bool make_local_all__instance_indirect_unused ( Main bmain,
ViewLayer view_layer,
Collection collection 
)
static

Instance indirectly referenced zero user objects, otherwise they're lost on reload, see T40595.

Definition at line 2079 of file object_relations.c.

References BA_SELECT, BKE_collection_object_add(), BKE_view_layer_base_find(), DEG_id_tag_update(), ED_object_base_select(), ListBase::first, Object::id, ID_IS_LINKED, ID_RECALC_ANIMATION, ID_RECALC_GEOMETRY, ID_RECALC_TRANSFORM, id_us_plus(), ID::next, Main::objects, and ID::us.

Referenced by make_local_exec().

◆ make_local_animdata_tag()

static void make_local_animdata_tag ( AnimData adt)
static

◆ make_local_animdata_tag_strips()

static void make_local_animdata_tag_strips ( ListBase strips)
static

◆ make_local_exec()

static int make_local_exec ( bContext C,
wmOperator op 
)
static

◆ make_local_material_tag()

static void make_local_material_tag ( Material ma)
static

◆ make_override_library_exec()

static int make_override_library_exec ( bContext C,
wmOperator op 
)
static

Definition at line 2278 of file object_relations.c.

References BKE_collection_child_remove(), BKE_lib_override_library_create(), BKE_main_id_tag_all(), BKE_reportf(), BKE_view_layer_has_collection(), BLI_assert, BLI_ghashutil_intcmp(), BLI_ghashutil_inthash_p(), BLI_gset_add(), BLI_gset_free(), BLI_gset_haskey(), BLI_gset_new(), BLI_listbase_bytes_find(), C, Main::collections, CTX_data_active_object(), CTX_data_main(), CTX_data_scene(), CTX_data_view_layer(), CTX_wm_view3d(), DEG_id_tag_update(), ED_object_base_free_and_unlink(), IDOverrideLibrary::flag, FOREACH_COLLECTION_OBJECT_RECURSIVE_BEGIN, FOREACH_COLLECTION_OBJECT_RECURSIVE_END, FOREACH_MAIN_ID_BEGIN, FOREACH_MAIN_ID_END, FOREACH_SELECTED_OBJECT_BEGIN, FOREACH_SELECTED_OBJECT_END, GS, IDOverrideLibrary::hierarchy_root, Collection::id, Object::id, ID_GR, ID_IS_LINKED, ID_IS_OVERRIDABLE_LIBRARY, ID_IS_OVERRIDE_LIBRARY_REAL, ID_OB, ID_RECALC_BASE_FLAGS, ID_RECALC_COPY_ON_WRITE, IDOVERRIDE_LIBRARY_FLAG_SYSTEM_DEFINED, Object::instance_collection, LIB_TAG_DOIT, LISTBASE_FOREACH, LISTBASE_FOREACH_MUTABLE, MAIN_ID_SESSION_UUID_UNSET, make_override_library_object_overridable_check(), ID::name, NC_SPACE, NC_WINDOW, NC_WM, ND_LIB_OVERRIDE_CHANGED, ND_SPACE_VIEW3D, NULL, OB_ARMATURE, OPERATOR_CANCELLED, OPERATOR_FINISHED, ID::override_library, Collection::parents, POINTER_FROM_UINT, wmOperatorType::prop, wmOperator::ptr, IDOverrideLibrary::reference, wmOperator::reports, RNA_property_int_get(), RPT_ERROR_INVALID_INPUT, scene, ID::session_uuid, wmOperator::type, and WM_event_add_notifier().

Referenced by make_override_library_invoke(), and OBJECT_OT_make_override_library().

◆ make_override_library_invoke()

static int make_override_library_invoke ( bContext C,
wmOperator op,
const wmEvent UNUSEDevent 
)
static

◆ make_override_library_object_overridable_check()

static bool make_override_library_object_overridable_check ( Main bmain,
Object object 
)
static

◆ make_override_library_poll()

static bool make_override_library_poll ( bContext C)
static

◆ make_single_user_exec()

static int make_single_user_exec ( bContext C,
wmOperator op 
)
static

◆ OBJECT_OT_clear_override_library()

void OBJECT_OT_clear_override_library ( wmOperatorType ot)

◆ OBJECT_OT_drop_named_material()

void OBJECT_OT_drop_named_material ( struct wmOperatorType ot)

◆ OBJECT_OT_make_links_data()

void OBJECT_OT_make_links_data ( wmOperatorType ot)

◆ OBJECT_OT_make_links_scene()

void OBJECT_OT_make_links_scene ( wmOperatorType ot)

◆ OBJECT_OT_make_local()

void OBJECT_OT_make_local ( wmOperatorType ot)

◆ OBJECT_OT_make_override_library()

void OBJECT_OT_make_override_library ( wmOperatorType ot)

◆ OBJECT_OT_make_single_user()

void OBJECT_OT_make_single_user ( wmOperatorType ot)

◆ OBJECT_OT_parent_clear()

void OBJECT_OT_parent_clear ( wmOperatorType ot)

◆ OBJECT_OT_parent_no_inverse_set()

void OBJECT_OT_parent_no_inverse_set ( wmOperatorType ot)

◆ OBJECT_OT_parent_set()

void OBJECT_OT_parent_set ( wmOperatorType ot)

◆ OBJECT_OT_reset_override_library()

void OBJECT_OT_reset_override_library ( wmOperatorType ot)

◆ OBJECT_OT_track_clear()

void OBJECT_OT_track_clear ( wmOperatorType ot)

◆ OBJECT_OT_track_set()

void OBJECT_OT_track_set ( wmOperatorType ot)

◆ OBJECT_OT_unlink_data()

void OBJECT_OT_unlink_data ( struct wmOperatorType ot)
Note
Only for empty-image objects, this operator is needed

Definition at line 2895 of file object_relations.c.

References wmOperatorType::exec, wmOperatorType::flag, wmOperatorType::idname, wmOperatorType::name, object_unlink_data_exec(), OPTYPE_INTERNAL, and ot.

Referenced by ED_operatortypes_object().

◆ OBJECT_OT_vertex_parent_set()

void OBJECT_OT_vertex_parent_set ( wmOperatorType ot)

◆ object_remove_parent_deform_modifiers()

static void object_remove_parent_deform_modifiers ( Object ob,
const Object par 
)
static

◆ object_track_clear_exec()

static int object_track_clear_exec ( bContext C,
wmOperator op 
)
static

◆ object_unlink_data_exec()

static int object_unlink_data_exec ( bContext C,
wmOperator op 
)
static

◆ parent_clear_exec()

static int parent_clear_exec ( bContext C,
wmOperator op 
)
static

◆ parent_noinv_set_exec()

static int parent_noinv_set_exec ( bContext C,
wmOperator op 
)
static

◆ parent_set_exec()

static int parent_set_exec ( bContext C,
wmOperator op 
)
static

◆ parent_set_invoke()

static int parent_set_invoke ( bContext C,
wmOperator op,
const wmEvent UNUSEDevent 
)
static

◆ parent_set_invoke_menu()

static int parent_set_invoke_menu ( bContext C,
wmOperatorType ot 
)
static

◆ parent_set_nonvertex_parent()

static bool parent_set_nonvertex_parent ( bContext C,
struct ParentingContext parenting_context 
)
static

◆ parent_set_poll_property()

static bool parent_set_poll_property ( const bContext UNUSEDC,
wmOperator op,
const PropertyRNA prop 
)
static

◆ parent_set_vert_find()

static void parent_set_vert_find ( KDTree_3d *  tree,
Object child,
int  vert_par[3],
bool  is_tri 
)
static

◆ parent_set_vertex_parent()

static bool parent_set_vertex_parent ( bContext C,
struct ParentingContext parenting_context 
)
static

◆ parent_set_vertex_parent_with_kdtree()

static bool parent_set_vertex_parent_with_kdtree ( bContext C,
struct ParentingContext parenting_context,
struct KDTree_3d *  tree 
)
static

◆ reset_clear_override_library_poll()

static bool reset_clear_override_library_poll ( bContext C)
static

◆ reset_override_library_exec()

static int reset_override_library_exec ( bContext C,
wmOperator UNUSEDop 
)
static

◆ single_data_needs_duplication()

static bool single_data_needs_duplication ( ID id)
static

◆ single_mat_users()

static void single_mat_users ( Main bmain,
Scene scene,
ViewLayer view_layer,
View3D v3d,
const int  flag 
)
static

◆ single_obdata_users()

static void single_obdata_users ( Main bmain,
Scene scene,
ViewLayer view_layer,
View3D v3d,
const int  flag 
)
static

◆ single_object_action_users()

static void single_object_action_users ( Main bmain,
Scene scene,
ViewLayer view_layer,
View3D v3d,
const int  flag 
)
static

◆ single_object_users()

static void single_object_users ( Main bmain,
Scene scene,
View3D v3d,
const int  flag,
const bool  copy_collections 
)
static

◆ single_object_users_collection()

static Collection* single_object_users_collection ( Main bmain,
Scene scene,
Collection collection,
const int  flag,
const bool  copy_collections,
const bool  is_master_collection 
)
static

◆ single_objectdata_action_users()

static void single_objectdata_action_users ( Main bmain,
Scene scene,
ViewLayer view_layer,
View3D v3d,
const int  flag 
)
static

◆ tag_localizable_looper()

static int tag_localizable_looper ( LibraryIDLinkCallbackData cb_data)
static

◆ tag_localizable_objects()

static void tag_localizable_objects ( bContext C,
const int  mode 
)
static

◆ track_set_exec()

static int track_set_exec ( bContext C,
wmOperator op 
)
static

◆ vertex_parent_set_exec()

static int vertex_parent_set_exec ( bContext C,
wmOperator op 
)
static

◆ vertex_parent_set_poll()

static bool vertex_parent_set_poll ( bContext C)
static

Variable Documentation

◆ prop_clear_parent_types

EnumPropertyItem prop_clear_parent_types[]
Initial value:
= {
"CLEAR",
0,
"Clear Parent",
"Completely clear the parenting relationship, including involved modifiers if any"},
"CLEAR_KEEP_TRANSFORM",
0,
"Clear and Keep Transformation",
"As 'Clear Parent', but keep the current visual transformations of the object"},
"CLEAR_INVERSE",
0,
"Clear Parent Inverse",
"Reset the transform corrections applied to the parenting relationship, does not remove "
"parenting itself"},
{0, NULL, 0, NULL, NULL},
}
@ CLEAR_PARENT_ALL
Definition: ED_object.h:160
@ CLEAR_PARENT_KEEP_TRANSFORM
Definition: ED_object.h:161
@ CLEAR_PARENT_INVERSE
Definition: ED_object.h:162

Definition at line 321 of file object_relations.c.

Referenced by OBJECT_OT_parent_clear().

◆ prop_clear_track_types

const EnumPropertyItem prop_clear_track_types[]
static
Initial value:
= {
{CLEAR_TRACK, "CLEAR", 0, "Clear Track", ""},
"CLEAR_KEEP_TRANSFORM",
0,
"Clear and Keep Transformation (Clear Track)",
""},
{0, NULL, 0, NULL, NULL},
}
@ CLEAR_TRACK
@ CLEAR_TRACK_KEEP_TRANSFORM

Definition at line 1152 of file object_relations.c.

Referenced by OBJECT_OT_track_clear().

◆ prop_make_parent_types

EnumPropertyItem prop_make_parent_types[]
Initial value:
= {
{PAR_OBJECT, "OBJECT", 0, "Object", ""},
{PAR_ARMATURE, "ARMATURE", 0, "Armature Deform", ""},
{PAR_ARMATURE_NAME, "ARMATURE_NAME", 0, " With Empty Groups", ""},
{PAR_ARMATURE_AUTO, "ARMATURE_AUTO", 0, " With Automatic Weights", ""},
{PAR_ARMATURE_ENVELOPE, "ARMATURE_ENVELOPE", 0, " With Envelope Weights", ""},
{PAR_BONE, "BONE", 0, "Bone", ""},
{PAR_BONE_RELATIVE, "BONE_RELATIVE", 0, "Bone Relative", ""},
{PAR_CURVE, "CURVE", 0, "Curve Deform", ""},
{PAR_FOLLOW, "FOLLOW", 0, "Follow Path", ""},
{PAR_PATH_CONST, "PATH_CONST", 0, "Path Constraint", ""},
{PAR_LATTICE, "LATTICE", 0, "Lattice Deform", ""},
{PAR_VERTEX, "VERTEX", 0, "Vertex", ""},
{PAR_VERTEX_TRI, "VERTEX_TRI", 0, "Vertex (Triangle)", ""},
{0, NULL, 0, NULL, NULL},
}
@ PAR_OBJECT
Definition: ED_object.h:138
@ PAR_BONE
Definition: ED_object.h:143
@ PAR_BONE_RELATIVE
Definition: ED_object.h:144
@ PAR_ARMATURE_ENVELOPE
Definition: ED_object.h:141
@ PAR_CURVE
Definition: ED_object.h:145
@ PAR_ARMATURE_AUTO
Definition: ED_object.h:142
@ PAR_VERTEX
Definition: ED_object.h:149
@ PAR_LATTICE
Definition: ED_object.h:148
@ PAR_VERTEX_TRI
Definition: ED_object.h:150
@ PAR_ARMATURE_NAME
Definition: ED_object.h:140
@ PAR_ARMATURE
Definition: ED_object.h:139
@ PAR_FOLLOW
Definition: ED_object.h:146
@ PAR_PATH_CONST
Definition: ED_object.h:147

Definition at line 489 of file object_relations.c.

Referenced by OBJECT_OT_parent_set().

◆ prop_make_track_types

const EnumPropertyItem prop_make_track_types[]
static
Initial value:
= {
{CREATE_TRACK_DAMPTRACK, "DAMPTRACK", 0, "Damped Track Constraint", ""},
{CREATE_TRACK_TRACKTO, "TRACKTO", 0, "Track to Constraint", ""},
{CREATE_TRACK_LOCKTRACK, "LOCKTRACK", 0, "Lock Track Constraint", ""},
{0, NULL, 0, NULL, NULL},
}
@ CREATE_TRACK_DAMPTRACK
@ CREATE_TRACK_LOCKTRACK
@ CREATE_TRACK_TRACKTO

Definition at line 1233 of file object_relations.c.

Referenced by OBJECT_OT_track_set().