Blender V5.0
blender::ed::object Namespace Reference

Namespaces

namespace  shapekey
namespace  bake_simulation

Classes

struct  XFormObjectData
struct  CollectionAddInfo
struct  ObjectConversionInfo
class  FillColorRecord
struct  MultiresBakerJobData
struct  MultiresBakeJob
struct  BakeAPIRender
struct  CollectionExportStats
struct  ElemData_Armature
struct  ElemData_MetaBall
struct  XFormObjectData_Mesh
struct  XFormObjectData_Lattice
struct  XFormObjectData_Curve
struct  XFormObjectData_Armature
struct  XFormObjectData_MetaBall
struct  XFormObjectData_GreasePencil
struct  XFormObjectData_Curves
struct  XFormObjectData_PointCloud
struct  OceanBakeJob
struct  ParentingContext
struct  VoxelSizeEditCustomData
struct  QuadriFlowJob
struct  XFormAxisItem
struct  XFormAxisData
struct  XFormObjectSkipChild
struct  XFormObjectSkipChild_Container
struct  XFormObjectData_Container
struct  XFormObjectData_Extra
struct  ComponentObjects
struct  CollectionWithTransform
class  GeometryToObjectsBuilder

Enumerations

enum  { XFORM_OB_SKIP_CHILD_PARENT_IS_XFORM = 1 , XFORM_OB_SKIP_CHILD_PARENT_IS_XFORM_INDIRECT = 3 , XFORM_OB_SKIP_CHILD_PARENT_APPLY = 2 }
enum  eParentType {
  PAR_OBJECT , PAR_ARMATURE , PAR_ARMATURE_NAME , PAR_ARMATURE_ENVELOPE ,
  PAR_ARMATURE_AUTO , PAR_BONE , PAR_BONE_RELATIVE , PAR_CURVE ,
  PAR_FOLLOW , PAR_PATH_CONST , PAR_LATTICE , PAR_VERTEX ,
  PAR_VERTEX_TRI
}
enum  eObjectSelect_Mode { BA_DESELECT = 0 , BA_SELECT = 1 , BA_INVERT = 2 }
enum  eObClearParentTypes { CLEAR_PARENT_ALL = 0 , CLEAR_PARENT_KEEP_TRANSFORM , CLEAR_PARENT_INVERSE }
enum  { EM_FREEDATA = (1 << 0) , EM_NO_CONTEXT = (1 << 1) }
enum  eObjectPathCalcRange { OBJECT_PATH_CALC_RANGE_CURRENT_FRAME , OBJECT_PATH_CALC_RANGE_CHANGED , OBJECT_PATH_CALC_RANGE_FULL }
enum  { MODIFIER_APPLY_DATA = 1 , MODIFIER_APPLY_SHAPE }
enum  ClearFlag { CLEAR_TANGENT_NORMAL = 1 , CLEAR_DISPLACEMENT = 2 }
enum  eObject_Hook_Add_Mode { OBJECT_ADDHOOK_NEWOB = 1 , OBJECT_ADDHOOK_SELOB , OBJECT_ADDHOOK_SELOB_BONE }

Functions

void operatortypes_object ()
void operatormacros_object ()
void keymap_object (wmKeyConfig *keyconf)
void ui_template_modifier_asset_menu_items (uiLayout &layout, StringRef catalog_path, bool skip_essentials)
static bool all_loading_finished ()
static asset::AssetItemTree build_catalog_tree (const bContext &C)
static asset::AssetItemTreeget_static_item_tree ()
static void catalog_assets_draw (const bContext *C, Menu *menu)
static bool unassigned_local_poll (const Main &bmain)
static void unassigned_assets_draw (const bContext *C, Menu *menu)
static void root_catalogs_draw (const bContext *C, Menu *menu)
static bNodeTreeget_asset_or_local_node_group (const bContext &C, PointerRNA &ptr, ReportList *reports)
static bNodeTreeget_node_group (const bContext &C, PointerRNA &ptr, ReportList *reports)
static wmOperatorStatus modifier_add_asset_exec (bContext *C, wmOperator *op)
static wmOperatorStatus modifier_add_asset_invoke (bContext *C, wmOperator *op, const wmEvent *event)
static std::string modifier_add_asset_get_description (bContext *C, wmOperatorType *, PointerRNA *ptr)
static void OBJECT_OT_modifier_add_node_group (wmOperatorType *ot)
static MenuType modifier_add_unassigned_assets_menu_type ()
static MenuType modifier_add_catalog_assets_menu_type ()
static MenuType modifier_add_root_catalogs_menu_type ()
void object_modifier_add_asset_register ()
static Imagebake_object_image_get (Object &object, const int mat_nr)
static Vector< Image * > bake_object_image_get_array (Object &object)
static bool multiresbake_check (bContext *C, wmOperator *op)
static void clear_single_image (Image *image, ClearFlag flag)
static void clear_images_poly (const Span< Image * > ob_image_array, const ClearFlag flag)
static wmOperatorStatus multiresbake_image_exec_locked (bContext *C, wmOperator *op)
static void init_multiresbake_job (bContext *C, MultiresBakeJob *bkj)
static void multiresbake_startjob (void *bkv, wmJobWorkerStatus *worker_status)
static void multiresbake_freejob (void *bkv)
static wmOperatorStatus multiresbake_image_exec (bContext *C, wmOperator *op)
static wmOperatorStatus objects_bake_render_modal (bContext *C, wmOperator *, const wmEvent *event)
static bool is_multires_bake (Scene *scene)
static wmOperatorStatus objects_bake_render_invoke (bContext *C, wmOperator *op, const wmEvent *)
static wmOperatorStatus bake_image_exec (bContext *C, wmOperator *op)
void OBJECT_OT_bake_image (wmOperatorType *ot)
static void bake_set_props (wmOperator *op, Scene *scene)
static void bake_progress_update (void *bjv, float progress)
static wmOperatorStatus bake_modal (bContext *C, wmOperator *, const wmEvent *event)
static bool bake_break (void *)
static void bake_update_image (ScrArea *area, Image *image)
static void bias_tangent_normal_pixels (float *rect, int channels, int width, int height, int stride)
static bool write_internal_bake_pixels (Image *image, const int image_tile_number, BakePixel pixel_array[], float *buffer, const int width, const int height, const int margin, const char margin_type, const bool is_clear, const bool is_noncolor, const bool is_tangent_normal, Mesh const *mesh_eval, const StringRef uv_layer, const float uv_offset[2])
static void bake_targets_refresh (BakeTargets *targets)
static bool write_external_bake_pixels (const char *filepath, BakePixel pixel_array[], float *buffer, const int width, const int height, const int margin, const int margin_type, ImageFormatData const *im_format, const bool is_noncolor, const bool is_tangent_normal, Mesh const *mesh_eval, const StringRef uv_layer, const float uv_offset[2])
static bool is_noncolor_pass (eScenePassType pass_type)
static bool bake_object_check (const Scene *scene, ViewLayer *view_layer, Object *ob, const eBakeTarget target, ReportList *reports)
static bool bake_pass_filter_check (eScenePassType pass_type, const int pass_filter, ReportList *reports)
static bool bake_objects_check (Main *bmain, const Scene *scene, ViewLayer *view_layer, Object *ob, Span< PointerRNA > selected_objects, ReportList *reports, const bool is_selected_to_active, const eBakeTarget target)
static void bake_targets_clear (Main *bmain, const bool is_tangent)
static Meshbake_mesh_new_from_object (Depsgraph *depsgraph, Object *object, const bool preserve_origindex)
static bool bake_targets_init_image_textures (const BakeAPIRender *bkr, BakeTargets *targets, Object *ob, ReportList *reports)
static bool bake_targets_init_internal (const BakeAPIRender *bkr, BakeTargets *targets, Object *ob, ReportList *reports)
static bool bake_targets_output_internal (const BakeAPIRender *bkr, BakeTargets *targets, Object *ob, BakePixel *pixel_array, ReportList *reports, Mesh *mesh_eval)
static bool bake_targets_init_external (const BakeAPIRender *bkr, BakeTargets *targets, Object *ob, ReportList *reports)
static bool bake_targets_output_external (const BakeAPIRender *bkr, BakeTargets *targets, Object *ob, Object *ob_eval, Mesh *mesh_eval, BakePixel *pixel_array, ReportList *reports)
static bool bake_targets_init_vertex_colors (Main *bmain, BakeTargets *targets, Object *ob, ReportList *reports)
static int find_original_loop (const OffsetIndices< int > orig_faces, const Span< int > orig_corner_verts, const int *vert_origindex, const int *poly_origindex, const int poly_eval, const int vert_eval)
static void bake_targets_populate_pixels_color_attributes (BakeTargets *targets, Object *ob, Mesh *mesh_eval, BakePixel *pixel_array)
static void bake_result_add_to_rgba (float rgba[4], const float *result, const int channels_num)
static void convert_float_color_to_byte_color (const MPropCol *float_colors, const int num, const bool is_noncolor, MLoopCol *byte_colors)
static bool bake_targets_output_vertex_colors (BakeTargets *targets, Object *ob)
static bool bake_targets_init (const BakeAPIRender *bkr, BakeTargets *targets, Object *ob, Object *ob_eval, ReportList *reports)
static void bake_targets_populate_pixels (const BakeAPIRender *bkr, BakeTargets *targets, Object *ob, Mesh *mesh_eval, BakePixel *pixel_array)
static bool bake_targets_output (const BakeAPIRender *bkr, BakeTargets *targets, Object *ob, Object *ob_eval, Mesh *mesh_eval, BakePixel *pixel_array, ReportList *reports)
static void bake_targets_free (BakeTargets *targets)
static wmOperatorStatus bake (const BakeAPIRender *bkr, Object *ob_low, const Span< PointerRNA > selected_objects, ReportList *reports)
static void bake_init_api_data (wmOperator *op, bContext *C, BakeAPIRender *bkr)
static wmOperatorStatus bake_exec (bContext *C, wmOperator *op)
static void bake_startjob (void *bkv, wmJobWorkerStatus *worker_status)
static void bake_job_complete (void *bkv)
static void bake_job_canceled (void *bkv)
static void bake_freejob (void *bkv)
static wmOperatorStatus bake_invoke (bContext *C, wmOperator *op, const wmEvent *)
void OBJECT_OT_bake (wmOperatorType *ot)
static const EnumPropertyItemcollection_object_active_itemf (bContext *C, PointerRNA *, PropertyRNA *, bool *r_free)
static Collectioncollection_object_active_find_index (Main *bmain, Scene *scene, Object *ob, const int collection_object_index)
static wmOperatorStatus objects_add_active_exec (bContext *C, wmOperator *op)
void COLLECTION_OT_objects_add_active (wmOperatorType *ot)
static wmOperatorStatus objects_remove_active_exec (bContext *C, wmOperator *op)
void COLLECTION_OT_objects_remove_active (wmOperatorType *ot)
static wmOperatorStatus collection_objects_remove_all_exec (bContext *C, wmOperator *)
void COLLECTION_OT_objects_remove_all (wmOperatorType *ot)
static wmOperatorStatus collection_objects_remove_exec (bContext *C, wmOperator *op)
void COLLECTION_OT_objects_remove (wmOperatorType *ot)
static wmOperatorStatus collection_create_exec (bContext *C, wmOperator *op)
void COLLECTION_OT_create (wmOperatorType *ot)
static bool collection_exporter_common_check (const Collection *collection)
static bool collection_exporter_poll (bContext *C)
static bool collection_exporter_remove_poll (bContext *C)
static bool collection_export_all_poll (bContext *C)
static wmOperatorStatus collection_exporter_add_exec (bContext *C, wmOperator *op)
static void COLLECTION_OT_exporter_add (wmOperatorType *ot)
static wmOperatorStatus collection_exporter_remove_exec (bContext *C, wmOperator *op)
static wmOperatorStatus collection_exporter_remove_invoke (bContext *C, wmOperator *op, const wmEvent *)
static void COLLECTION_OT_exporter_remove (wmOperatorType *ot)
static wmOperatorStatus collection_exporter_move_exec (bContext *C, wmOperator *op)
static void COLLECTION_OT_exporter_move (wmOperatorType *ot)
static wmOperatorStatus collection_exporter_export (bContext *C, wmOperator *op, CollectionExport *data, Collection *collection, const bool report_success)
static wmOperatorStatus collection_exporter_export_exec (bContext *C, wmOperator *op)
static void COLLECTION_OT_exporter_export (wmOperatorType *ot)
static wmOperatorStatus collection_export (bContext *C, wmOperator *op, Collection *collection, CollectionExportStats &stats)
static wmOperatorStatus collection_io_export_all_exec (bContext *C, wmOperator *op)
static void COLLECTION_OT_export_all (wmOperatorType *ot)
static wmOperatorStatus collection_export_recursive (bContext *C, wmOperator *op, LayerCollection *layer_collection, CollectionExportStats &stats)
static wmOperatorStatus wm_collection_export_all_exec (bContext *C, wmOperator *op)
static void WM_OT_collection_export_all (wmOperatorType *ot)
static void collection_exporter_menu_draw (const bContext *, Menu *menu)
void collection_exporter_register ()
static wmOperatorStatus collection_add_exec (bContext *C, wmOperator *)
void OBJECT_OT_collection_add (wmOperatorType *ot)
static wmOperatorStatus collection_link_exec (bContext *C, wmOperator *op)
void OBJECT_OT_collection_link (wmOperatorType *ot)
static wmOperatorStatus collection_remove_exec (bContext *C, wmOperator *op)
void OBJECT_OT_collection_remove (wmOperatorType *ot)
static wmOperatorStatus collection_unlink_exec (bContext *C, wmOperator *op)
static bool collection_unlink_poll (bContext *C)
void OBJECT_OT_collection_unlink (wmOperatorType *ot)
static wmOperatorStatus select_grouped_exec (bContext *C, wmOperator *)
void OBJECT_OT_collection_objects_select (wmOperatorType *ot)
static void dt_add_vcol_layers (const CustomData *cdata, eCustomDataMask mask, EnumPropertyItem **r_item, int *r_totitem)
static const EnumPropertyItemdt_layers_select_src_itemf (bContext *C, PointerRNA *ptr, PropertyRNA *, bool *r_free)
static const EnumPropertyItemdt_layers_select_dst_itemf (bContext *C, PointerRNA *ptr, PropertyRNA *, bool *r_free)
static const EnumPropertyItemdt_layers_select_itemf (bContext *C, PointerRNA *ptr, PropertyRNA *prop, bool *r_free)
static const EnumPropertyItemdt_mix_mode_itemf (bContext *C, PointerRNA *ptr, PropertyRNA *, bool *r_free)
static bool data_transfer_check (bContext *, wmOperator *op)
static void data_transfer_exec_preprocess_objects (bContext *C, wmOperator *op, Object *ob_src, Vector< PointerRNA > *ctx_objects, const bool reverse_transfer)
static bool data_transfer_exec_is_object_valid (wmOperator *op, Object *ob_src, Object *ob_dst, const bool reverse_transfer)
static wmOperatorStatus data_transfer_exec (bContext *C, wmOperator *op)
static bool data_transfer_poll (bContext *C)
static bool data_transfer_poll_property (const bContext *, wmOperator *op, const PropertyRNA *prop)
static std::string data_transfer_get_description (bContext *, wmOperatorType *, PointerRNA *ptr)
void OBJECT_OT_data_transfer (wmOperatorType *ot)
static bool datalayout_transfer_poll (bContext *C)
static wmOperatorStatus datalayout_transfer_exec (bContext *C, wmOperator *op)
static wmOperatorStatus datalayout_transfer_invoke (bContext *C, wmOperator *op, const wmEvent *event)
void OBJECT_OT_datalayout_transfer (wmOperatorType *ot)
static int return_editmesh_indexar (BMEditMesh *em, int *r_indexar_num, int **r_indexar, float r_cent[3])
static bool return_editmesh_vgroup (Object *obedit, BMEditMesh *em, char *r_name, float r_cent[3])
static void select_editbmesh_hook (Object *ob, HookModifierData *hmd)
static int return_editlattice_indexar (Lattice *editlatt, int **r_indexar, int *r_indexar_num, float r_cent[3])
static void select_editlattice_hook (Object *obedit, HookModifierData *hmd)
static int return_editcurve_indexar (Object *obedit, int **r_indexar, int *r_indexar_num, float r_cent[3])
static bool object_hook_index_array (Main *bmain, Scene *scene, Object *obedit, int **r_indexar, int *r_indexar_num, char *r_name, float r_cent[3])
static void select_editcurve_hook (Object *obedit, HookModifierData *hmd)
static void object_hook_from_context (bContext *C, PointerRNA *ptr, const int num, Object **r_ob, HookModifierData **r_hmd)
static void object_hook_select (Object *ob, HookModifierData *hmd)
static bool hook_op_edit_poll (bContext *C)
static Objectadd_hook_object_new (Main *bmain, Scene *scene, ViewLayer *view_layer, View3D *v3d, Object *obedit)
static int add_hook_object (const bContext *C, Main *bmain, Scene *scene, ViewLayer *view_layer, View3D *v3d, Object *obedit, Object *ob, int mode, ReportList *reports)
static wmOperatorStatus object_add_hook_selob_exec (bContext *C, wmOperator *op)
void OBJECT_OT_hook_add_selob (wmOperatorType *ot)
static wmOperatorStatus object_add_hook_newob_exec (bContext *C, wmOperator *op)
void OBJECT_OT_hook_add_newob (wmOperatorType *ot)
static wmOperatorStatus object_hook_remove_exec (bContext *C, wmOperator *op)
static const EnumPropertyItemhook_mod_itemf (bContext *C, PointerRNA *, PropertyRNA *, bool *r_free)
void OBJECT_OT_hook_remove (wmOperatorType *ot)
static wmOperatorStatus object_hook_reset_exec (bContext *C, wmOperator *op)
void OBJECT_OT_hook_reset (wmOperatorType *ot)
static wmOperatorStatus object_hook_recenter_exec (bContext *C, wmOperator *op)
void OBJECT_OT_hook_recenter (wmOperatorType *ot)
static wmOperatorStatus object_hook_assign_exec (bContext *C, wmOperator *op)
void OBJECT_OT_hook_assign (wmOperatorType *ot)
static wmOperatorStatus object_hook_select_exec (bContext *C, wmOperator *op)
void OBJECT_OT_hook_select (wmOperatorType *ot)
void OBJECT_OT_volume_add (wmOperatorType *ot)
void OBJECT_OT_volume_import (wmOperatorType *ot)
void TRANSFORM_OT_vertex_warp (wmOperatorType *ot)
void TRANSFORM_OT_vertex_random (wmOperatorType *ot)
Vector< PointerRNAmodifier_get_edit_objects (const bContext &C, const wmOperator &op)
void modifier_register_use_selected_objects_prop (wmOperatorType *ot)
void OBJECT_OT_visual_geometry_to_objects (wmOperatorType *ot)
static bool object_mode_poll (bContext *C)
static bool object_rand_transverts (TransVertStore *tvs, const float offset, const float uniform, const float normal_factor, const uint seed)
static wmOperatorStatus object_rand_verts_exec (bContext *C, wmOperator *op)
static void set_local_object_transform (Object &ob, const float4x4 &transform)
static void copy_materials_to_new_geometry_object (const Object &src_ob_eval, const ID &src_data_eval, Object &dst_ob_orig, ID &dst_data_orig)
static Vector< Collection * > find_collections_containing_object (Main &bmain, Scene *scene, Object &object)
static wmOperatorStatus visual_geometry_to_objects_exec (bContext *C, wmOperator *)
static Objectobject_volume_add (bContext *C, wmOperator *op, const char *name)
static wmOperatorStatus object_volume_add_exec (bContext *C, wmOperator *op)
static wmOperatorStatus volume_import_exec (bContext *C, wmOperator *op)
static wmOperatorStatus volume_import_invoke (bContext *C, wmOperator *op, const wmEvent *)
static void object_warp_calc_view_matrix (float r_mat_view[4][4], float r_center_view[3], Object *obedit, const float viewmat[4][4], const float center[3], const float offset_angle)
static void object_warp_transverts_minmax_x (TransVertStore *tvs, const float mat_view[4][4], const float center_view[3], float *r_min, float *r_max)
static void object_warp_transverts (TransVertStore *tvs, const float mat_view[4][4], const float center_view[3], const float angle_, const float min, const float max)
static wmOperatorStatus object_warp_verts_exec (bContext *C, wmOperator *op)
Internal Utilities
Objectcontext_object (const bContext *C)
Objectcontext_active_object (const bContext *C)
blender::Vector< Object * > objects_in_mode_or_selected (bContext *C, bool(*filter_fn)(const Object *ob, void *user_data), void *filter_user_data)
static bool object_mode_set_ok_or_report (ReportList *reports)
Hide Operator
void collection_hide_menu_draw (const bContext *C, uiLayout *layout)
static bool object_hide_poll (bContext *C)
static wmOperatorStatus object_hide_view_clear_exec (bContext *C, wmOperator *op)
void OBJECT_OT_hide_view_clear (wmOperatorType *ot)
static wmOperatorStatus object_hide_view_set_exec (bContext *C, wmOperator *op)
void OBJECT_OT_hide_view_set (wmOperatorType *ot)
static wmOperatorStatus object_hide_collection_exec (bContext *C, wmOperator *op)
static wmOperatorStatus object_hide_collection_invoke (bContext *C, wmOperator *op, const wmEvent *event)
void OBJECT_OT_hide_collection (wmOperatorType *ot)
Material Functions
bool material_active_index_set (Object *ob, int index)
Shape Key Lock Checks
bool shape_key_report_if_locked (const Object *obedit, ReportList *reports)
bool shape_key_report_if_active_locked (Object *ob, ReportList *reports)
bool shape_key_report_if_any_locked (Object *ob, ReportList *reports)
bool shape_key_is_selected (const Object &object, const KeyBlock &kb, int keyblock_index)
static bool object_is_any_shape_key_locked (Object *ob)
Remove Shape Key Function
void shape_key_mirror (Object *ob, KeyBlock *kb, bool use_topology, int &totmirr, int &totfail)
static bool object_shape_key_mirror (bContext *C, Object *ob, int *r_totmirr, int *r_totfail, bool use_topology)
Active Element Center
bool calc_active_center_for_editmode (Object *obedit, bool select_only, float r_center[3])
bool calc_active_center_for_posemode (Object *ob, bool select_only, float r_center[3])
bool calc_active_center (Object *ob, bool select_only, float r_center[3])
Object Data Transform Container

Use to implement 'Affect Only Origins' feature.

XFormObjectData_Containerdata_xform_container_create ()
void data_xform_container_destroy (XFormObjectData_Container *xds)
void data_xform_container_update_all (XFormObjectData_Container *xds, Main *bmain, Depsgraph *depsgraph)
void data_xform_container_item_ensure (XFormObjectData_Container *xds, Object *ob)
static void trans_obdata_in_obmode_free_elem (void *xf_p)
Object Child Skip

Don't transform unselected children, this is done using the parent inverse matrix.

Note
The complex logic here is caused by mixed selection within a single selection chain, otherwise we only need XFORM_OB_SKIP_CHILD_PARENT_IS_XFORM for single objects.
XFormObjectSkipChild_Containerxform_skip_child_container_create ()
void xform_skip_child_container_item_ensure_from_array (XFormObjectSkipChild_Container *xcs, const Scene *scene, ViewLayer *view_layer, Object **objects, uint objects_len)
void object_xform_skip_child_container_destroy (XFormObjectSkipChild_Container *xcs)
void object_xform_skip_child_container_update_all (XFormObjectSkipChild_Container *xcs, Main *bmain, Depsgraph *depsgraph)
void object_xform_skip_child_container_item_ensure (XFormObjectSkipChild_Container *xcs, Object *ob, Object *ob_parent_recurse, int mode)
Transform Object Array

Low level object transform function, transforming objects by matrix. Simple alternative to full transform logic.

void object_xform_array_m4 (Object **objects, uint objects_len, const float matrix[4][4])
static bool object_parent_in_set (const Set< Object * > &objects_set, Object *ob)
Public Object Selection API
void base_select (Base *base, eObjectSelect_Mode mode)
void base_activate (bContext *C, Base *base)
void base_activate_with_mode_exit_if_needed (bContext *C, Base *base)
void base_active_refresh (Main *bmain, Scene *scene, ViewLayer *view_layer)
bool base_deselect_all_ex (const Scene *scene, ViewLayer *view_layer, View3D *v3d, int action, bool *r_any_visible)
bool base_deselect_all (const Scene *scene, ViewLayer *view_layer, View3D *v3d, int action)
Delete Object Operator
void base_free_and_unlink (Main *bmain, Scene *scene, Object *ob)
void base_free_and_unlink_no_indirect_check (Main *bmain, Scene *scene, Object *ob)
static wmOperatorStatus object_delete_exec (bContext *C, wmOperator *op)
static wmOperatorStatus object_delete_invoke (bContext *C, wmOperator *op, const wmEvent *)
void OBJECT_OT_delete (wmOperatorType *ot)
Duplicate Object Operator
Baseadd_duplicate (Main *bmain, Scene *scene, ViewLayer *view_layer, Base *base, eDupli_ID_Flags dupflag)
static void object_add_sync_base_collection (Main *bmain, Scene *scene, ViewLayer *view_layer, Base *base_src, Object *object_new)
static void object_add_sync_local_view (Base *base_src, Base *base_new)
static void object_add_sync_rigid_body (Main *bmain, Object *object_src, Object *object_new)
static void object_add_duplicate_internal (Main *bmain, Object *ob, const eDupli_ID_Flags dupflag, const eLibIDDuplicateFlags duplicate_options, Object **r_ob_new)
static Baseobject_add_duplicate_internal (Main *bmain, Scene *scene, ViewLayer *view_layer, Object *ob, const eDupli_ID_Flags dupflag, const eLibIDDuplicateFlags duplicate_options, Object **r_ob_new)
static wmOperatorStatus duplicate_exec (bContext *C, wmOperator *op)
void OBJECT_OT_duplicate (wmOperatorType *ot)
Drop Named Material on Object Operator
std::string drop_named_material_tooltip (bContext *C, const char *name, const int mval[2])
void OBJECT_OT_drop_named_material (wmOperatorType *ot)
static wmOperatorStatus drop_named_material_invoke (bContext *C, wmOperator *op, const wmEvent *event)
Drop Geometry Nodes on Object Operator
std::string drop_geometry_nodes_tooltip (bContext *C, PointerRNA *properties, const int mval[2])
void OBJECT_OT_drop_geometry_nodes (wmOperatorType *ot)
static bool check_geometry_node_group_sockets (wmOperator *op, const bNodeTree *tree)
static wmOperatorStatus drop_geometry_nodes_invoke (bContext *C, wmOperator *op, const wmEvent *event)
Toggle Edit-Mode Operator
bool editmode_exit_ex (Main *bmain, Scene *scene, Object *obedit, int flag)
bool editmode_exit (bContext *C, int flag)
bool editmode_free_ex (Main *bmain, Object *obedit)
bool editmode_exit_multi_ex (Main *bmain, Scene *scene, ViewLayer *view_layer, int flag)
bool editmode_exit_multi (bContext *C, int flag)
bool editmode_enter_ex (Main *bmain, Scene *scene, Object *ob, int flag)
bool editmode_enter (bContext *C, int flag)
bool editmode_load (Main *bmain, Object *obedit)
static void flush_bone_selection_to_pose (Object &ob)
static void flush_pose_selection_to_bone (Object &ob)
static bool mesh_needs_keyindex (Main *bmain, const Mesh *mesh)
static bool editmode_load_free_ex (Main *bmain, Object *obedit, const bool load_data, const bool free_data)
static wmOperatorStatus editmode_toggle_exec (bContext *C, wmOperator *op)
static bool editmode_toggle_poll (bContext *C)
void OBJECT_OT_editmode_toggle (wmOperatorType *ot)
Public Add Object API
void location_from_view (bContext *C, float loc[3])
void rotation_from_quat (float rot[3], const float quat[4], char align_axis)
void rotation_from_view (bContext *C, float rot[3], char align_axis)
void init_transform_on_add (Object *object, const float loc[3], const float rot[3])
float new_primitive_matrix (bContext *C, Object *obedit, const float loc[3], const float rot[3], const float scale[3], float primmat[4][4])
Add Object Operator
void add_unit_props_size (wmOperatorType *ot)
void add_unit_props_radius_ex (wmOperatorType *ot, float default_value)
void add_unit_props_radius (wmOperatorType *ot)
void add_generic_props (wmOperatorType *ot, bool do_editmode)
void add_mesh_props (wmOperatorType *ot)
void add_generic_get_opts (bContext *C, wmOperator *op, char view_align_axis, float r_loc[3], float r_rot[3], float r_scale[3], bool *r_enter_editmode, unsigned short *r_local_view_bits, bool *r_is_view_aligned)
Objectadd_type_with_obdata (bContext *C, int type, const char *name, const float loc[3], const float rot[3], bool enter_editmode, ushort local_view_bits, ID *obdata)
Objectadd_type (bContext *C, int type, const char *name, const float loc[3], const float rot[3], bool enter_editmode, unsigned short local_view_bits) ATTR_NONNULL(1) ATTR_RETURNS_NONNULL
static void view_align_update (Main *, Scene *, PointerRNA *ptr)
static bool object_can_have_lattice_modifier (const Object *ob)
static wmOperatorStatus object_add_exec (bContext *C, wmOperator *op)
void OBJECT_OT_add (wmOperatorType *ot)
Clear Motion Paths Operator
void motion_paths_clear (bContext *C, bool only_selected)
static void object_clear_mpath (Object *ob)
static wmOperatorStatus object_clear_paths_exec (bContext *C, wmOperator *op)
static std::string object_clear_paths_get_description (bContext *, wmOperatorType *, PointerRNA *ptr)
void OBJECT_OT_paths_clear (wmOperatorType *ot)
Calculate Motion Paths Operator
void motion_paths_recalc (bContext *C, Scene *scene, eObjectPathCalcRange range, ListBase *ld_objects)
void motion_paths_recalc_selected (bContext *C, Scene *scene, eObjectPathCalcRange range)
void motion_paths_recalc_visible (bContext *C, Scene *scene, eObjectPathCalcRange range)
static eAnimvizCalcRange object_path_convert_range (eObjectPathCalcRange range)
static bool has_object_motion_paths (Object *ob)
static bool has_pose_motion_paths (Object *ob)
static wmOperatorStatus object_calculate_paths_invoke (bContext *C, wmOperator *op, const wmEvent *)
static wmOperatorStatus object_calculate_paths_exec (bContext *C, wmOperator *op)
void OBJECT_OT_paths_calculate (wmOperatorType *ot)
Constraint Data Accessors
ListBaseconstraint_active_list (Object *ob)
ListBasepose_constraint_list (const bContext *C)
ListBaseconstraint_list_from_constraint (Object *ob, bConstraint *con, bPoseChannel **r_pchan)
bConstraintconstraint_active_get (Object *ob)
Constraint Sanity Testing
void object_test_constraints (Main *bmain, Object *ob)
static void test_constraint (Main *bmain, Object *owner, bPoseChannel *pchan, bConstraint *con, int type)
static int constraint_type_get (Object *owner, bPoseChannel *pchan)
static void test_constraints (Main *bmain, Object *ob, bPoseChannel *pchan)
static void object_test_constraint (Main *bmain, Object *ob, bConstraint *con)
Constraint Management Utilities
void constraint_active_set (Object *ob, bConstraint *con)
void constraint_update (Main *bmain, Object *ob)
void constraint_dependency_update (Main *bmain, Object *ob)
void constraint_tag_update (Main *bmain, Object *ob, bConstraint *con)
void constraint_dependency_tag_update (Main *bmain, Object *ob, bConstraint *con)
bool constraint_move_to_index (Object *ob, bConstraint *con, int index)
void constraint_link (Main *bmain, Object *ob_dst, ListBase *dst, ListBase *src)
void constraint_copy_for_object (Main *bmain, Object *ob_dst, bConstraint *con)
void constraint_copy_for_pose (Main *bmain, Object *ob_dst, bPoseChannel *pchan, bConstraint *con)
static void object_pose_tag_update (Main *bmain, Object *ob)
High Level Mode Operations
bool mode_compat_test (const Object *ob, eObjectMode mode)
bool mode_compat_set (bContext *C, Object *ob, eObjectMode mode, ReportList *reports)
static const char * object_mode_op_string (eObjectMode mode)
Generic Mode Enter/Exit

Supports exiting a mode without it being in the current context. This could be done for entering modes too if it's needed.

bool mode_set_ex (bContext *C, eObjectMode mode, bool use_undo, ReportList *reports)
bool mode_set (bContext *C, eObjectMode mode)
void mode_generic_exit (Main *bmain, Depsgraph *depsgraph, Scene *scene, Object *ob)
bool mode_generic_has_data (Depsgraph *depsgraph, const Object *ob)
void posemode_set_for_weight_paint (bContext *C, Main *bmain, Object *ob, bool is_mode_set)
static bool ed_object_mode_generic_exit_ex (Main *bmain, Depsgraph *depsgraph, Scene *scene, Object *ob, bool only_test)
static void ed_object_posemode_set_for_weight_paint_ex (bContext *C, Main *bmain, Object *ob_arm, const bool is_mode_set)
Object Index Lookup/Creation
int object_in_mode_to_index (const Scene *scene, ViewLayer *view_layer, eObjectMode mode, const Object *ob)
Objectobject_in_mode_from_index (const Scene *scene, ViewLayer *view_layer, eObjectMode mode, int index)
Public API
ModifierDatamodifier_add (ReportList *reports, Main *bmain, Scene *scene, Object *ob, const char *name, int type)
bool modifier_remove (ReportList *reports, Main *bmain, Scene *scene, Object *ob, ModifierData *md)
void modifiers_clear (Main *bmain, Scene *scene, Object *ob)
bool modifier_move_down (ReportList *reports, eReportType error_type, Object *ob, ModifierData *md)
bool modifier_move_up (ReportList *reports, eReportType error_type, Object *ob, ModifierData *md)
bool modifier_move_to_index (ReportList *reports, eReportType error_type, Object *ob, ModifierData *md, int index, bool allow_partial)
bool convert_psys_to_mesh (ReportList *reports, Main *bmain, Depsgraph *depsgraph, Scene *scene, ViewLayer *view_layer, Object *ob, ModifierData *md)
bool modifier_apply (Main *bmain, ReportList *reports, Depsgraph *depsgraph, Scene *scene, Object *ob, ModifierData *md, int mode, bool keep_modifier, bool do_all_keyframes)
bool modifier_copy (ReportList *reports, Main *bmain, Scene *scene, Object *ob, ModifierData *md)
void modifier_link (bContext *C, Object *ob_dst, Object *ob_src)
bool modifier_copy_to_object (Main *bmain, const Scene *scene, const Object *ob_src, const ModifierData *md, Object *ob_dst, ReportList *reports)
bool iter_other (Main *bmain, Object *orig_ob, bool include_orig, bool(*callback)(Object *ob, void *callback_data), void *callback_data)
bool multires_update_totlevels (Object *ob, void *totlevel_v)
ShaderFxDatashaderfx_add (ReportList *reports, Main *bmain, Scene *scene, Object *ob, const char *name, int type)
bool shaderfx_remove (ReportList *reports, Main *bmain, Object *ob, ShaderFxData *fx)
void shaderfx_clear (Main *bmain, Object *ob)
int shaderfx_move_down (ReportList *reports, Object *ob, ShaderFxData *fx)
int shaderfx_move_up (ReportList *reports, Object *ob, ShaderFxData *fx)
bool shaderfx_move_to_index (ReportList *reports, Object *ob, ShaderFxData *fx, int index)
void shaderfx_link (Object *dst, Object *src)
void shaderfx_copy (Object *dst, ShaderFxData *fx)
static void object_force_modifier_update_for_bind (Depsgraph *depsgraph, Object *ob)
static void object_force_modifier_bind_simple_options (Depsgraph *depsgraph, Object *object, ModifierData *md)
static bool object_has_modifier (const Object *ob, const ModifierData *exclude, ModifierType type)
static bool object_has_modifier_cb (Object *ob, void *data)
static bool object_modifier_safe_to_delete (Main *bmain, Object *ob, ModifierData *exclude, ModifierType type)
static bool object_modifier_remove (Main *bmain, Scene *scene, Object *ob, ModifierData *md, bool *r_sort_depsgraph)
static bool object_modifier_check_move_before (ReportList *reports, eReportType error_type, ModifierData *md, ModifierData *md_prev)
static bool object_modifier_check_move_after (ReportList *reports, eReportType error_type, ModifierData *md, ModifierData *md_next)
static void add_shapekey_layers (Mesh &mesh_dest, const Mesh &mesh_src)
static Meshcreate_applied_mesh_for_modifier (Depsgraph *depsgraph, Scene *scene, Object *ob_eval, ModifierData *md_eval, const bool use_virtual_modifiers, const bool build_shapekey_layers, ReportList *reports)
static bool modifier_apply_shape (Main *bmain, ReportList *reports, Depsgraph *depsgraph, Scene *scene, Object *ob, ModifierData *md_eval)
static bool apply_grease_pencil_for_modifier (Depsgraph *depsgraph, Object *ob, GreasePencil &grease_pencil_orig, ModifierData *md_eval)
static bool apply_grease_pencil_for_modifier_all_keyframes (Depsgraph *depsgraph, Scene *scene, Object *ob, GreasePencil &grease_pencil_orig, ModifierData *md)
static bool modifier_apply_obdata (ReportList *reports, Depsgraph *depsgraph, Scene *scene, Object *ob, ModifierData *md_eval, const bool do_all_keyframes)
static bool UNUSED_FUNCTION object_has_shaderfx (const Object *ob, const ShaderFxData *exclude, ShaderFxType type)
static bool object_shaderfx_remove (Main *bmain, Object *ob, ShaderFxData *fx, bool *)
Force Field Toggle Operator
void check_force_modifiers (Main *bmain, Scene *scene, Object *object)
static wmOperatorStatus forcefield_toggle_exec (bContext *C, wmOperator *)
void OBJECT_OT_forcefield_toggle (wmOperatorType *ot)
Jump To Object Utilities
Basefind_first_by_data_id (const Scene *scene, ViewLayer *view_layer, ID *id)
bool jump_to_object (bContext *C, Object *ob, bool reveal_hidden)
bool jump_to_bone (bContext *C, Object *ob, const char *bone_name, bool reveal_hidden)
static int get_base_select_priority (Base *base)
Public Object Data Storage API

Used for interactively transforming object data.

Store object data transformation in an opaque struct.

std::unique_ptr< XFormObjectDatadata_xform_create (ID *id)
std::unique_ptr< XFormObjectDatadata_xform_create_from_edit_mode (ID *id)
void data_xform_by_mat4 (XFormObjectData &xod, const float4x4 &transform)
void data_xform_restore (XFormObjectData &xod)
void data_xform_tag_update (XFormObjectData &xod)
static std::unique_ptr< XFormObjectDatadata_xform_create_ex (ID *id, bool is_edit_mode)
static void copy_transformed_radii (const Span< float > src, const float4x4 &transform, MutableSpan< float > dst)
Public Utility Functions
bool vgroup_sync_from_pose (Object *ob)
void vgroup_data_clamp_range (ID *id, int total)
bool vgroup_array_copy (Object *ob, Object *ob_from)
bool vgroup_parray_alloc (ID *id, MDeformVert ***dvert_arr, int *dvert_tot, bool use_vert_sel, std::optional< int > current_frame={})
void vgroup_parray_mirror_sync (Object *ob, MDeformVert **dvert_array, int dvert_tot, const bool *vgroup_validmap, int vgroup_tot)
void vgroup_parray_mirror_assign (Object *ob, MDeformVert **dvert_array, int dvert_tot)
void vgroup_parray_remove_zero (MDeformVert **dvert_array, int dvert_tot, const bool *vgroup_validmap, int vgroup_tot, float epsilon, bool keep_single)
void vgroup_parray_to_weight_array (const MDeformVert **dvert_array, int dvert_tot, float *dvert_weights, int def_nr)
void vgroup_parray_from_weight_array (MDeformVert **dvert_array, int dvert_tot, const float *dvert_weights, int def_nr, bool remove_zero)
void vgroup_vert_active_mirror (Object *ob, int def_nr)
static void mesh_defvert_mirror_update_internal (Object *ob, MDeformVert *dvert_dst, MDeformVert *dvert_src, const int def_nr)
static void mesh_defvert_mirror_update_em (Object *ob, BMVert *eve, int def_nr, int vidx, const int cd_dvert_offset)
static void mesh_defvert_mirror_update_ob (Object *ob, int def_nr, int vidx)
static void vgroup_remove_weight (Object *ob, const int def_nr)
static bool vgroup_normalize_active_vertex (Object *ob, eVGroupSelect subset_type)
static void vgroup_copy_active_to_sel (Object *ob, eVGroupSelect subset_type)
High Level Vertex Group Add/Remove

Wrap lower level BKE functions.

Note
that operations on many vertices should use vgroup_parray_alloc.
void vgroup_select_by_name (Object *ob, const char *name)
void vgroup_vert_add (Object *ob, bDeformGroup *dg, int vertnum, float weight, int assignmode)
void vgroup_vert_remove (Object *ob, bDeformGroup *dg, int vertnum)
float vgroup_vert_weight (Object *ob, bDeformGroup *dg, int vertnum)
static void vgroup_nr_vert_add (Object *ob, const int def_nr, const int vertnum, const float weight, const int assignmode)
static float get_vert_def_nr (Object *ob, const int def_nr, const int vertnum)
Local Helpers
static void object_add_drop_xy_props (wmOperatorType *ot)
static bool object_add_drop_xy_is_set (const wmOperator *op)
static bool object_add_drop_xy_get (bContext *C, wmOperator *op, int(*r_mval)[2])
static wmOperatorStatus object_add_drop_xy_generic_invoke (bContext *C, wmOperator *op, const wmEvent *event)
Add Lattice Deformation to Selected Operator
static std::optional< Bounds< float3 > > lattice_add_to_selected_collect_targets_and_calc_bounds (bContext *C, const float orientation_matrix[3][3], Vector< Object * > &r_targets)
static wmOperatorStatus lattice_add_to_selected_exec (bContext *C, wmOperator *op)
static bool object_add_to_selected_poll_property (const bContext *, wmOperator *op, const PropertyRNA *prop)
void OBJECT_OT_lattice_add_to_selected (wmOperatorType *ot)
Add Probe Operator
static const char * get_lightprobe_defname (int type)
static wmOperatorStatus lightprobe_add_exec (bContext *C, wmOperator *op)
void OBJECT_OT_lightprobe_add (wmOperatorType *ot)
Add Effector Operator
static const char * get_effector_defname (ePFieldType type)
static wmOperatorStatus effector_add_exec (bContext *C, wmOperator *op)
void OBJECT_OT_effector_add (wmOperatorType *ot)
Add Camera Operator
static wmOperatorStatus object_camera_add_exec (bContext *C, wmOperator *op)
void OBJECT_OT_camera_add (wmOperatorType *ot)
Add Metaball Operator
static wmOperatorStatus object_metaball_add_exec (bContext *C, wmOperator *op)
void OBJECT_OT_metaball_add (wmOperatorType *ot)
Add Text Operator
static wmOperatorStatus object_add_text_exec (bContext *C, wmOperator *op)
void OBJECT_OT_text_add (wmOperatorType *ot)
Add Armature Operator
static wmOperatorStatus object_armature_add_exec (bContext *C, wmOperator *op)
void OBJECT_OT_armature_add (wmOperatorType *ot)
Add Empty Operator
static wmOperatorStatus object_empty_add_exec (bContext *C, wmOperator *op)
void OBJECT_OT_empty_add (wmOperatorType *ot)
static wmOperatorStatus object_image_add_exec (bContext *C, wmOperator *op)
static wmOperatorStatus object_image_add_invoke (bContext *C, wmOperator *op, const wmEvent *event)
static bool object_image_add_poll (bContext *C)
void OBJECT_OT_empty_image_add (wmOperatorType *ot)
Add Light Operator
static const char * get_light_defname (int type)
static wmOperatorStatus object_light_add_exec (bContext *C, wmOperator *op)
void OBJECT_OT_light_add (wmOperatorType *ot)
Add Collection Instance Operator
static std::optional< CollectionAddInfocollection_add_info_get_from_op (bContext *C, wmOperator *op)
static wmOperatorStatus collection_instance_add_exec (bContext *C, wmOperator *op)
static wmOperatorStatus object_instance_add_invoke (bContext *C, wmOperator *op, const wmEvent *event)
void OBJECT_OT_collection_instance_add (wmOperatorType *ot)
Collection Drop Operator

Internal operator for collection dropping.

Warning
This is tied closely together to the drop-box callbacks, so it shouldn't be used on its own.

The drop-box callback imports the collection, links it into the view-layer, selects all imported objects (which may include peripheral objects like parents or boolean-objects of an object in the collection) and activates one. Only the callback has enough info to do this reliably. Based on the instancing operator option, this operator then does one of two things:

  • Instancing enabled: Unlink the collection again, and instead add a collection instance empty at the drop position.
  • Instancing disabled: Transform the objects to the drop position, keeping all relative transforms of the objects to each other as is.
static wmOperatorStatus collection_drop_exec (bContext *C, wmOperator *op)
void OBJECT_OT_collection_external_asset_drop (wmOperatorType *ot)
Add Data Instance Operator

Use for dropping ID's from the outliner.

static wmOperatorStatus object_data_instance_add_exec (bContext *C, wmOperator *op)
void OBJECT_OT_data_instance_add (wmOperatorType *ot)
Add Speaker Operator
static wmOperatorStatus object_speaker_add_exec (bContext *C, wmOperator *op)
void OBJECT_OT_speaker_add (wmOperatorType *ot)
Add Curves Operator
static wmOperatorStatus object_curves_random_add_exec (bContext *C, wmOperator *op)
void OBJECT_OT_curves_random_add (wmOperatorType *ot)
static wmOperatorStatus object_curves_empty_hair_add_exec (bContext *C, wmOperator *op)
static bool object_curves_empty_hair_add_poll (bContext *C)
void OBJECT_OT_curves_empty_hair_add (wmOperatorType *ot)
Add Point Cloud Operator
static wmOperatorStatus object_pointcloud_add_exec (bContext *C, wmOperator *op)
void OBJECT_OT_pointcloud_random_add (wmOperatorType *ot)
Copy Object Utilities
static void copy_object_set_idnew (bContext *C)
Make Instanced Objects Real Operator
static uint dupliobject_hash (const void *ptr)
static uint dupliobject_instancer_hash (const void *ptr)
static bool dupliobject_cmp (const void *a_, const void *b_)
static bool dupliobject_instancer_cmp (const void *a_, const void *b_)
static void make_object_duplilist_real (bContext *C, Depsgraph *depsgraph, Scene *scene, Base *base, const bool use_base_parent, const bool use_hierarchy)
static wmOperatorStatus object_duplicates_make_real_exec (bContext *C, wmOperator *op)
void OBJECT_OT_duplicates_make_real (wmOperatorType *ot)
Add Named Object Operator

Use for drag & drop.

static wmOperatorStatus object_add_named_exec (bContext *C, wmOperator *op)
void OBJECT_OT_add_named (wmOperatorType *ot)
Transform Object to Mouse Operator
static wmOperatorStatus object_transform_to_mouse_exec (bContext *C, wmOperator *op)
void OBJECT_OT_transform_to_mouse (wmOperatorType *ot)
Join Object Operator
static bool object_join_poll (bContext *C)
static wmOperatorStatus object_join_exec (bContext *C, wmOperator *op)
void OBJECT_OT_join (wmOperatorType *ot)
Join Key Data Operators
static bool active_shape_key_editable_poll (bContext *C)
static wmOperatorStatus join_shapes_exec (bContext *C, wmOperator *op)
void OBJECT_OT_join_shapes (wmOperatorType *ot)
static wmOperatorStatus update_all_shape_keys_exec (bContext *C, wmOperator *op)
static bool object_update_shapes_poll (bContext *C)
void OBJECT_OT_update_shapes (wmOperatorType *ot)
Custom Camera Update
static bool object_camera_custom_update_poll (bContext *C)
static wmOperatorStatus object_camera_custom_update_exec (bContext *C, wmOperator *op)
void OBJECT_OT_camera_custom_update (wmOperatorType *ot)
Add Constraint Utilities
static void set_constraint_nth_target (bConstraint *con, Object *target, const char subtarget[], int index)
Stretch-To/Limit-Distance Constraint (Reset Original Length Operator)

For Stretch-To & Limit-Distance constraints.

static wmOperatorStatus stretchto_reset_exec (bContext *C, wmOperator *op)
static wmOperatorStatus stretchto_reset_invoke (bContext *C, wmOperator *op, const wmEvent *)
void CONSTRAINT_OT_stretchto_reset (wmOperatorType *ot)
Distance Constraint (Reset Operator)

For Limit-Distance constraint.

static wmOperatorStatus limitdistance_reset_exec (bContext *C, wmOperator *op)
static wmOperatorStatus limitdistance_reset_invoke (bContext *C, wmOperator *op, const wmEvent *)
void CONSTRAINT_OT_limitdistance_reset (wmOperatorType *ot)
Child-Of Constraint (Set Inverse Operator)
static void force_evaluation_if_constraint_disabled (bContext *C, Object *ob, bConstraint *con)
static wmOperatorStatus childof_set_inverse_exec (bContext *C, wmOperator *op)
static wmOperatorStatus childof_set_inverse_invoke (bContext *C, wmOperator *op, const wmEvent *)
void CONSTRAINT_OT_childof_set_inverse (wmOperatorType *ot)
static wmOperatorStatus childof_clear_inverse_exec (bContext *C, wmOperator *op)
static wmOperatorStatus childof_clear_inverse_invoke (bContext *C, wmOperator *op, const wmEvent *)
static bool childof_clear_inverse_poll (bContext *C)
void CONSTRAINT_OT_childof_clear_inverse (wmOperatorType *ot)
Follow Path Constraint (Auto Animate Path Operator)
static wmOperatorStatus followpath_path_animate_exec (bContext *C, wmOperator *op)
static wmOperatorStatus followpath_path_animate_invoke (bContext *C, wmOperator *op, const wmEvent *)
void CONSTRAINT_OT_followpath_path_animate (wmOperatorType *ot)
Object Solver Constraint (Set Inverse Operator)
static wmOperatorStatus objectsolver_set_inverse_exec (bContext *C, wmOperator *op)
static wmOperatorStatus objectsolver_set_inverse_invoke (bContext *C, wmOperator *op, const wmEvent *)
void CONSTRAINT_OT_objectsolver_set_inverse (wmOperatorType *ot)
Object Solver Constraint (Clear Inverse Operator)
static wmOperatorStatus objectsolver_clear_inverse_exec (bContext *C, wmOperator *op)
static wmOperatorStatus objectsolver_clear_inverse_invoke (bContext *C, wmOperator *op, const wmEvent *)
static bool objectsolver_clear_inverse_poll (bContext *C)
void CONSTRAINT_OT_objectsolver_clear_inverse (wmOperatorType *ot)
Delete Constraint Operator
static wmOperatorStatus constraint_delete_exec (bContext *C, wmOperator *op)
static wmOperatorStatus constraint_delete_invoke (bContext *C, wmOperator *op, const wmEvent *event)
void CONSTRAINT_OT_delete (wmOperatorType *ot)
Apply Constraint Operator
static wmOperatorStatus constraint_apply_exec (bContext *C, wmOperator *op)
static wmOperatorStatus constraint_apply_invoke (bContext *C, wmOperator *op, const wmEvent *event)
void CONSTRAINT_OT_apply (wmOperatorType *ot)
Copy Constraint Operator
static wmOperatorStatus constraint_copy_exec (bContext *C, wmOperator *op)
static wmOperatorStatus constraint_copy_invoke (bContext *C, wmOperator *op, const wmEvent *event)
void CONSTRAINT_OT_copy (wmOperatorType *ot)
Copy Constraint To Selected Operator
static wmOperatorStatus constraint_copy_to_selected_exec (bContext *C, wmOperator *op)
static wmOperatorStatus constraint_copy_to_selected_invoke (bContext *C, wmOperator *op, const wmEvent *event)
static bool constraint_copy_to_selected_poll (bContext *C)
void CONSTRAINT_OT_copy_to_selected (wmOperatorType *ot)
Move Down Constraint Operator
static wmOperatorStatus constraint_move_down_exec (bContext *C, wmOperator *op)
static wmOperatorStatus constraint_move_down_invoke (bContext *C, wmOperator *op, const wmEvent *event)
void CONSTRAINT_OT_move_down (wmOperatorType *ot)
Move Up Constraint Operator
static wmOperatorStatus constraint_move_up_exec (bContext *C, wmOperator *op)
static wmOperatorStatus constraint_move_up_invoke (bContext *C, wmOperator *op, const wmEvent *event)
void CONSTRAINT_OT_move_up (wmOperatorType *ot)
Move Constraint To Index Operator
static wmOperatorStatus constraint_move_to_index_exec (bContext *C, wmOperator *op)
static wmOperatorStatus constraint_move_to_index_invoke (bContext *C, wmOperator *op, const wmEvent *event)
void CONSTRAINT_OT_move_to_index (wmOperatorType *ot)
Clear Pose Constraints Operator
static wmOperatorStatus pose_constraints_clear_exec (bContext *C, wmOperator *)
void POSE_OT_constraints_clear (wmOperatorType *ot)
static wmOperatorStatus object_constraints_clear_exec (bContext *C, wmOperator *)
Clear Object Constraints Operator
void OBJECT_OT_constraints_clear (wmOperatorType *ot)
Copy Pose Constraints Operator
static wmOperatorStatus pose_constraint_copy_exec (bContext *C, wmOperator *op)
void POSE_OT_constraints_copy (wmOperatorType *ot)
Copy Object Constraints Operator
static wmOperatorStatus object_constraint_copy_exec (bContext *C, wmOperator *)
void OBJECT_OT_constraints_copy (wmOperatorType *ot)
Add Constraints Operator
static bool get_new_constraint_target (bContext *C, int con_type, Object **tar_ob, bPoseChannel **tar_pchan, bool add)
static wmOperatorStatus constraint_add_exec (bContext *C, wmOperator *op, Object *ob, ListBase *list, int type, const bool setTarget)
static wmOperatorStatus object_constraint_add_exec (bContext *C, wmOperator *op)
static wmOperatorStatus pose_constraint_add_exec (bContext *C, wmOperator *op)
static const EnumPropertyItemobject_constraint_add_itemf (bContext *, PointerRNA *, PropertyRNA *, bool *r_free)
void OBJECT_OT_constraint_add (wmOperatorType *ot)
Add Constraints With Targets Operator
void OBJECT_OT_constraint_add_with_targets (wmOperatorType *ot)
void POSE_OT_constraint_add (wmOperatorType *ot)
void POSE_OT_constraint_add_with_targets (wmOperatorType *ot)
Add IK to Bone Operator
Note
Only for pose-channels.
static wmOperatorStatus pose_ik_add_invoke (bContext *C, wmOperator *op, const wmEvent *)
static wmOperatorStatus pose_ik_add_exec (bContext *C, wmOperator *op)
void POSE_OT_ik_add (wmOperatorType *ot)
Clear IK from Bone Operator

Remove IK constraints from selected bones.

static wmOperatorStatus pose_ik_clear_exec (bContext *C, wmOperator *)
void POSE_OT_ik_clear (wmOperatorType *ot)
Internal Transform Get/Apply

Some object data types don't have utility functions to access their transformation data. Define these locally.

static ElemData_Armaturearmature_coords_and_quats_get_recurse (const ListBase *bone_base, ElemData_Armature *elem_array)
static void armature_coords_and_quats_get (const bArmature *arm, MutableSpan< ElemData_Armature > elem_array)
static const ElemData_Armaturearmature_coords_and_quats_apply_with_mat4_recurse (ListBase *bone_base, const ElemData_Armature *elem_array, const float4x4 &transform)
static void armature_coords_and_quats_apply_with_mat4 (bArmature *arm, const Span< ElemData_Armature > elem_array, const float4x4 &transform)
static void armature_coords_and_quats_apply (bArmature *arm, const Span< ElemData_Armature > elem_array)
static void edit_armature_coords_and_quats_get (const bArmature *arm, MutableSpan< ElemData_Armature > elem_array)
static void edit_armature_coords_and_quats_apply_with_mat4 (bArmature *arm, const Span< ElemData_Armature > elem_array, const float4x4 &transform)
static void edit_armature_coords_and_quats_apply (bArmature *arm, const Span< ElemData_Armature > elem_array)
static void metaball_coords_and_quats_get (const MetaBall *mb, MutableSpan< ElemData_MetaBall > elem_array)
static void metaball_coords_and_quats_apply_with_mat4 (MetaBall *mb, const Span< ElemData_MetaBall > elem_array, const float4x4 &transform)
static void metaball_coords_and_quats_apply (MetaBall *mb, const Span< ElemData_MetaBall > elem_array)
Object Link/Move to Collection Operator
static ListBase selected_objects_get (bContext *C)
static bool move_to_collection_poll (bContext *C)
static wmOperatorStatus move_to_collection_exec (bContext *C, wmOperator *op)
static wmOperatorStatus move_to_collection_invoke (bContext *C, wmOperator *op, const wmEvent *)
static void move_to_collection_menu_draw (Menu *menu, Collection *collection, int icon)
static void move_to_collection_recursive_menu_draw (const bContext *, Menu *menu)
static void move_to_collection_menu_draw (const bContext *C, Menu *menu)
void move_to_collection_menu_register ()
void link_to_collection_menu_register ()
void OBJECT_OT_move_to_collection (wmOperatorType *ot)
void OBJECT_OT_link_to_collection (wmOperatorType *ot)
Toggle Pose-Mode Operator
static wmOperatorStatus posemode_exec (bContext *C, wmOperator *op)
void OBJECT_OT_posemode_toggle (wmOperatorType *ot)
Update Motion Paths Operator
static bool object_update_paths_poll (bContext *C)
static wmOperatorStatus object_update_paths_exec (bContext *C, wmOperator *op)
void OBJECT_OT_paths_update (wmOperatorType *ot)
Update All Motion Paths Operator
static bool object_update_all_paths_poll (bContext *)
static wmOperatorStatus object_update_all_paths_exec (bContext *C, wmOperator *)
void OBJECT_OT_paths_update_visible (wmOperatorType *ot)
Object Shade Smooth/Flat Operator
static bool is_smooth_by_angle_modifier (const ModifierData &md)
static wmOperatorStatus shade_smooth_exec (bContext *C, wmOperator *op)
static bool shade_poll (bContext *C)
void OBJECT_OT_shade_flat (wmOperatorType *ot)
void OBJECT_OT_shade_smooth (wmOperatorType *ot)
void OBJECT_OT_shade_smooth_by_angle (wmOperatorType *ot)
Object Shade Auto Smooth Operator
static bool is_valid_smooth_by_angle_group (const bNodeTree &ntree)
static wmOperatorStatus shade_auto_smooth_exec (bContext *C, wmOperator *op)
static void shade_auto_smooth_ui (bContext *, wmOperator *op)
void OBJECT_OT_shade_auto_smooth (wmOperatorType *ot)
Object Mode Set Operator
static const EnumPropertyItemobject_mode_set_itemf (bContext *C, PointerRNA *, PropertyRNA *, bool *r_free)
static bool object_mode_set_poll (bContext *C)
static wmOperatorStatus object_mode_set_exec (bContext *C, wmOperator *op)
void OBJECT_OT_mode_set (wmOperatorType *ot)
void OBJECT_OT_mode_set_with_submode (wmOperatorType *ot)
Clear Location Operator
void OBJECT_OT_location_clear (wmOperatorType *ot)
static wmOperatorStatus object_location_clear_exec (bContext *C, wmOperator *op)
Clear Rotation Operator
void OBJECT_OT_rotation_clear (wmOperatorType *ot)
static wmOperatorStatus object_rotation_clear_exec (bContext *C, wmOperator *op)
Clear Scale Operator
void OBJECT_OT_scale_clear (wmOperatorType *ot)
static wmOperatorStatus object_scale_clear_exec (bContext *C, wmOperator *op)
Clear Origin Operator
void OBJECT_OT_origin_clear (wmOperatorType *ot)
static wmOperatorStatus object_origin_clear_exec (bContext *C, wmOperator *)
Apply Transformation Operator
void OBJECT_OT_visual_transform_apply (wmOperatorType *ot)
void OBJECT_OT_transform_apply (wmOperatorType *ot)
static void ignore_parent_tx (Main *bmain, Depsgraph *depsgraph, Scene *scene, Object *ob)
static void append_sorted_object_parent_hierarchy (Object *root_object, Object *object, Object **sorted_objects, int *object_index)
static Array< Object * > sorted_selected_editable_objects (bContext *C)
static bool apply_objects_internal_can_multiuser (bContext *C)
static bool apply_objects_internal_need_single_user (bContext *C)
static wmOperatorStatus apply_objects_internal (bContext *C, ReportList *reports, bool apply_loc, bool apply_rot, bool apply_scale, bool do_props, bool do_single_user)
static wmOperatorStatus visual_transform_apply_exec (bContext *C, wmOperator *)
static wmOperatorStatus object_transform_apply_exec (bContext *C, wmOperator *op)
static wmOperatorStatus object_transform_apply_invoke (bContext *C, wmOperator *op, const wmEvent *)
Apply Parent Inverse Operator
void OBJECT_OT_parent_inverse_apply (wmOperatorType *ot)
static wmOperatorStatus object_parent_inverse_apply_exec (bContext *C, wmOperator *)
Transform Axis Target

Note this is an experimental operator to point lights/cameras at objects. We may re-work how this behaves based on user feedback.

  • campbell.
void OBJECT_OT_transform_axis_target (wmOperatorType *ot)
static void object_transform_axis_target_calc_depth_init (XFormAxisData *xfd, const int mval[2])
static bool object_is_target_compat (const Object *ob)
static void object_transform_axis_target_free_data (wmOperator *op)
static void object_apply_rotation (Object *ob, const float rmat[3][3])
static void object_apply_location (Object *ob, const float loc[3])
static bool object_orient_to_location (Object *ob, const float rot_orig[3][3], const float axis[3], const float location[3], const bool z_flip)
static void object_transform_axis_target_cancel (bContext *C, wmOperator *op)
static wmOperatorStatus object_transform_axis_target_invoke (bContext *C, wmOperator *op, const wmEvent *event)
static wmOperatorStatus object_transform_axis_target_modal (bContext *C, wmOperator *op, const wmEvent *event)
Make Parent Without Inverse Operator
void OBJECT_OT_parent_no_inverse_set (wmOperatorType *ot)
static wmOperatorStatus parent_noinv_set_exec (bContext *C, wmOperator *op)
Make Vertex Parent Operator
void OBJECT_OT_vertex_parent_set (wmOperatorType *ot)
static bool vertex_parent_set_poll (bContext *C)
static wmOperatorStatus vertex_parent_set_exec (bContext *C, wmOperator *op)
Make Library Override Operator
void OBJECT_OT_make_override_library (wmOperatorType *ot)
static bool make_override_library_object_overridable_check (Main *bmain, Object *object)
static wmOperatorStatus make_override_library_exec (bContext *C, wmOperator *op)
static wmOperatorStatus make_override_library_invoke (bContext *C, wmOperator *op, const wmEvent *)
static bool make_override_library_poll (bContext *C)
Reset Library Override Operator
void OBJECT_OT_reset_override_library (wmOperatorType *ot)
static bool reset_clear_override_library_poll (bContext *C)
static wmOperatorStatus reset_override_library_exec (bContext *C, wmOperator *)
Clear Library Override Operator
void OBJECT_OT_clear_override_library (wmOperatorType *ot)
static wmOperatorStatus clear_override_library_exec (bContext *C, wmOperator *)
Unlink Object Operator
void OBJECT_OT_unlink_data (wmOperatorType *ot)
static wmOperatorStatus object_unlink_data_exec (bContext *C, wmOperator *op)
(De)select All
void OBJECT_OT_select_all (wmOperatorType *ot)
static wmOperatorStatus object_select_all_exec (bContext *C, wmOperator *op)
Select Random
void OBJECT_OT_select_random (wmOperatorType *ot)
static wmOperatorStatus object_select_random_exec (bContext *C, wmOperator *op)
Select by Type
void OBJECT_OT_select_by_type (wmOperatorType *ot)
static wmOperatorStatus object_select_by_type_exec (bContext *C, wmOperator *op)
Select Mirror
void OBJECT_OT_select_mirror (wmOperatorType *ot)
static wmOperatorStatus object_select_mirror_exec (bContext *C, wmOperator *op)
Select More/Less
void OBJECT_OT_select_more (wmOperatorType *ot)
void OBJECT_OT_select_less (wmOperatorType *ot)
static bool object_select_more_less (bContext *C, const bool select)
static wmOperatorStatus object_select_more_exec (bContext *C, wmOperator *)
static wmOperatorStatus object_select_less_exec (bContext *C, wmOperator *)
Select In The Same Collection
void OBJECT_OT_select_same_collection (wmOperatorType *ot)
static wmOperatorStatus object_select_same_collection_exec (bContext *C, wmOperator *op)
Create New Light Linking Receiver/Blocker Collection Operators
void OBJECT_OT_light_linking_receiver_collection_new (wmOperatorType *ot)
void OBJECT_OT_light_linking_blocker_collection_new (wmOperatorType *ot)
template<LightLinkingType link_type>
static wmOperatorStatus light_linking_collection_new_exec (bContext *C, wmOperator *)
Select Light Linking Receivers/Blockers Operator
void OBJECT_OT_light_linking_receivers_select (wmOperatorType *ot)
void OBJECT_OT_light_linking_blockers_select (wmOperatorType *ot)
template<LightLinkingType link_type>
static wmOperatorStatus light_linking_select_exec (bContext *C, wmOperator *)
Link Receivers/Blockers to Emitter Operator
void OBJECT_OT_light_linking_receivers_link (wmOperatorType *ot)
void OBJECT_OT_light_linking_blockers_link (wmOperatorType *ot)
template<LightLinkingType link_type>
static wmOperatorStatus light_linking_link_exec (bContext *C, wmOperator *op)
Unlink from the Light Linking Collection Operator
void OBJECT_OT_light_linking_unlink_from_collection (wmOperatorType *ot)
static wmOperatorStatus light_linking_unlink_from_collection_exec (bContext *C, wmOperator *op)
Generic Poll Function and Properties

Using modifier names and data context.

bool edit_modifier_poll_generic (bContext *C, StructRNA *rna_type, int obtype_flag, bool is_editmode_allowed, bool is_liboverride_allowed)
void edit_modifier_properties (wmOperatorType *ot)
static bool edit_modifier_poll (bContext *C)
static bool edit_modifier_liboverride_allowed_poll (bContext *C)
static void edit_modifier_report_property (wmOperatorType *ot)
Generic Invoke Functions

Using modifier names and data context.

bool edit_modifier_invoke_properties (bContext *C, wmOperator *op)
ModifierDataedit_modifier_property_get (wmOperator *op, Object *ob, int type)
static bool edit_modifier_invoke_properties_with_hover (bContext *C, wmOperator *op, const wmEvent *event, wmOperatorStatus *r_retval)
Add Modifier Operator
void OBJECT_OT_modifier_add (wmOperatorType *ot)
static wmOperatorStatus modifier_add_exec (bContext *C, wmOperator *op)
static wmOperatorStatus modifier_add_invoke (bContext *C, wmOperator *op, const wmEvent *event)
static const EnumPropertyItemmodifier_add_itemf (bContext *C, PointerRNA *, PropertyRNA *, bool *r_free)
Remove Modifier Operator
void OBJECT_OT_modifier_remove (wmOperatorType *ot)
void OBJECT_OT_modifiers_clear (wmOperatorType *ot)
static wmOperatorStatus modifier_remove_exec (bContext *C, wmOperator *op)
static wmOperatorStatus modifier_remove_invoke (bContext *C, wmOperator *op, const wmEvent *event)
static wmOperatorStatus modifiers_clear_exec (bContext *C, wmOperator *)
static bool modifiers_clear_poll (bContext *C)
Move Up Modifier Operator
void OBJECT_OT_modifier_move_up (wmOperatorType *ot)
static wmOperatorStatus modifier_move_up_exec (bContext *C, wmOperator *op)
static wmOperatorStatus modifier_move_up_invoke (bContext *C, wmOperator *op, const wmEvent *event)
Move Down Modifier Operator
void OBJECT_OT_modifier_move_down (wmOperatorType *ot)
static wmOperatorStatus modifier_move_down_exec (bContext *C, wmOperator *op)
static wmOperatorStatus modifier_move_down_invoke (bContext *C, wmOperator *op, const wmEvent *event)
Move to Index Modifier Operator
void OBJECT_OT_modifier_move_to_index (wmOperatorType *ot)
static wmOperatorStatus modifier_move_to_index_exec (bContext *C, wmOperator *op)
static wmOperatorStatus modifier_move_to_index_invoke (bContext *C, wmOperator *op, const wmEvent *event)
Apply Modifier Operator
void OBJECT_OT_modifier_apply (wmOperatorType *ot)
static bool modifier_apply_poll (bContext *C)
static wmOperatorStatus modifier_apply_exec_ex (bContext *C, wmOperator *op, int apply_as, bool keep_modifier)
static wmOperatorStatus modifier_apply_exec (bContext *C, wmOperator *op)
static wmOperatorStatus modifier_apply_invoke (bContext *C, wmOperator *op, const wmEvent *event)
Apply Modifier As Shape-Key Operator
void OBJECT_OT_modifier_apply_as_shapekey (wmOperatorType *ot)
static bool modifier_apply_as_shapekey_poll (bContext *C)
static wmOperatorStatus modifier_apply_as_shapekey_exec (bContext *C, wmOperator *op)
static wmOperatorStatus modifier_apply_as_shapekey_invoke (bContext *C, wmOperator *op, const wmEvent *event)
static std::string modifier_apply_as_shapekey_get_description (bContext *, wmOperatorType *, PointerRNA *ptr)
Convert Particle System Modifier to Mesh Operator
void OBJECT_OT_modifier_convert (wmOperatorType *ot)
static wmOperatorStatus modifier_convert_exec (bContext *C, wmOperator *op)
static wmOperatorStatus modifier_convert_invoke (bContext *C, wmOperator *op, const wmEvent *)
Copy Modifier Operator
void OBJECT_OT_modifier_copy (wmOperatorType *ot)
static wmOperatorStatus modifier_copy_exec (bContext *C, wmOperator *op)
static wmOperatorStatus modifier_copy_invoke (bContext *C, wmOperator *op, const wmEvent *event)
Copy Modifier To Selected Operator
void OBJECT_OT_modifier_copy_to_selected (wmOperatorType *ot)
void OBJECT_OT_modifiers_copy_to_selected (wmOperatorType *ot)
static wmOperatorStatus modifier_copy_to_selected_exec (bContext *C, wmOperator *op)
static wmOperatorStatus modifier_copy_to_selected_invoke (bContext *C, wmOperator *op, const wmEvent *event)
static bool modifier_copy_to_selected_poll (bContext *C)
static wmOperatorStatus object_modifiers_copy_exec (bContext *C, wmOperator *op)
static bool modifiers_copy_to_selected_poll (bContext *C)
Set Active Modifier Operator
void OBJECT_OT_modifier_set_active (wmOperatorType *ot)
static wmOperatorStatus modifier_set_active_exec (bContext *C, wmOperator *op)
static wmOperatorStatus modifier_set_active_invoke (bContext *C, wmOperator *op, const wmEvent *event)
Multires Reshape Operator
void OBJECT_OT_multires_reshape (wmOperatorType *ot)
static wmOperatorStatus multires_reshape_exec (bContext *C, wmOperator *op)
static wmOperatorStatus multires_reshape_invoke (bContext *C, wmOperator *op, const wmEvent *)
Multires Delete Higher Levels Operator
void OBJECT_OT_multires_higher_levels_delete (wmOperatorType *ot)
static bool multires_poll (bContext *C)
static wmOperatorStatus multires_higher_levels_delete_exec (bContext *C, wmOperator *op)
static wmOperatorStatus multires_higher_levels_delete_invoke (bContext *C, wmOperator *op, const wmEvent *)
Multires Apply Base
void OBJECT_OT_multires_base_apply (wmOperatorType *ot)
static wmOperatorStatus multires_base_apply_exec (bContext *C, wmOperator *op)
static wmOperatorStatus multires_base_apply_invoke (bContext *C, wmOperator *op, const wmEvent *)
Multires Unsubdivide
void OBJECT_OT_multires_unsubdivide (wmOperatorType *ot)
static wmOperatorStatus multires_unsubdivide_exec (bContext *C, wmOperator *op)
static wmOperatorStatus multires_unsubdivide_invoke (bContext *C, wmOperator *op, const wmEvent *)
Multires Rebuild Subdivisions
void OBJECT_OT_multires_rebuild_subdiv (wmOperatorType *ot)
static wmOperatorStatus multires_rebuild_subdiv_exec (bContext *C, wmOperator *op)
static wmOperatorStatus multires_rebuild_subdiv_invoke (bContext *C, wmOperator *op, const wmEvent *)
Multires Save External Operator
void OBJECT_OT_multires_external_save (wmOperatorType *ot)
static wmOperatorStatus multires_external_save_exec (bContext *C, wmOperator *op)
static wmOperatorStatus multires_external_save_invoke (bContext *C, wmOperator *op, const wmEvent *)
Multires Pack Operator
void OBJECT_OT_multires_external_pack (wmOperatorType *ot)
static wmOperatorStatus multires_external_pack_exec (bContext *C, wmOperator *)
Delta Mesh Bind Operator
void OBJECT_OT_correctivesmooth_bind (wmOperatorType *ot)
static bool correctivesmooth_poll (bContext *C)
static wmOperatorStatus correctivesmooth_bind_exec (bContext *C, wmOperator *op)
static wmOperatorStatus correctivesmooth_bind_invoke (bContext *C, wmOperator *op, const wmEvent *)
Mesh Deform Bind Operator
void OBJECT_OT_meshdeform_bind (wmOperatorType *ot)
static bool meshdeform_poll (bContext *C)
static wmOperatorStatus meshdeform_bind_exec (bContext *C, wmOperator *op)
static wmOperatorStatus meshdeform_bind_invoke (bContext *C, wmOperator *op, const wmEvent *)
Explode Refresh Operator
void OBJECT_OT_explode_refresh (wmOperatorType *ot)
static bool explode_poll (bContext *C)
static wmOperatorStatus explode_refresh_exec (bContext *C, wmOperator *op)
static wmOperatorStatus explode_refresh_invoke (bContext *C, wmOperator *op, const wmEvent *)
Ocean Bake Operator
void OBJECT_OT_ocean_bake (wmOperatorType *ot)
static bool ocean_bake_poll (bContext *C)
static void oceanbake_free (void *customdata)
static int oceanbake_breakjob (void *)
static void oceanbake_update (void *customdata, float progress, int *cancel)
static void oceanbake_startjob (void *customdata, wmJobWorkerStatus *worker_status)
static void oceanbake_endjob (void *customdata)
static wmOperatorStatus ocean_bake_exec (bContext *C, wmOperator *op)
static wmOperatorStatus ocean_bake_invoke (bContext *C, wmOperator *op, const wmEvent *)
Laplacian-Deform Bind Operator
void OBJECT_OT_laplaciandeform_bind (wmOperatorType *ot)
static bool laplaciandeform_poll (bContext *C)
static wmOperatorStatus laplaciandeform_bind_exec (bContext *C, wmOperator *op)
static wmOperatorStatus laplaciandeform_bind_invoke (bContext *C, wmOperator *op, const wmEvent *)
Surface Deform Bind Operator
void OBJECT_OT_surfacedeform_bind (wmOperatorType *ot)
static bool surfacedeform_bind_poll (bContext *C)
static wmOperatorStatus surfacedeform_bind_exec (bContext *C, wmOperator *op)
static wmOperatorStatus surfacedeform_bind_invoke (bContext *C, wmOperator *op, const wmEvent *)
Toggle Value or Attribute Operator
Note
This operator basically only exists to provide a better tooltip for the toggle button, since it is stored as an IDProperty. It also stops the button from being highlighted when "use_attribute" is on, which isn't expected.
void OBJECT_OT_geometry_nodes_input_attribute_toggle (wmOperatorType *ot)
static wmOperatorStatus geometry_nodes_input_attribute_toggle_exec (bContext *C, wmOperator *op)
Copy and Assign Geometry Node Group operator
void OBJECT_OT_geometry_node_tree_copy_assign (wmOperatorType *ot)
static wmOperatorStatus geometry_node_tree_copy_assign_exec (bContext *C, wmOperator *)
Add Effect Operator
void OBJECT_OT_shaderfx_add (wmOperatorType *ot)
static wmOperatorStatus shaderfx_add_exec (bContext *C, wmOperator *op)
static const EnumPropertyItemshaderfx_add_itemf (bContext *C, PointerRNA *, PropertyRNA *, bool *r_free)
Copy Shader Operator
void OBJECT_OT_shaderfx_copy (wmOperatorType *ot)
static wmOperatorStatus shaderfx_copy_exec (bContext *C, wmOperator *op)
static wmOperatorStatus shaderfx_copy_invoke (bContext *C, wmOperator *op, const wmEvent *event)
Remove ShaderFX Operator
void OBJECT_OT_shaderfx_remove (wmOperatorType *ot)
static wmOperatorStatus shaderfx_remove_exec (bContext *C, wmOperator *op)
static wmOperatorStatus shaderfx_remove_invoke (bContext *C, wmOperator *op, const wmEvent *event)
Move up ShaderFX Operator
void OBJECT_OT_shaderfx_move_up (wmOperatorType *ot)
static wmOperatorStatus shaderfx_move_up_exec (bContext *C, wmOperator *op)
static wmOperatorStatus shaderfx_move_up_invoke (bContext *C, wmOperator *op, const wmEvent *event)
Move Down ShaderFX Operator
void OBJECT_OT_shaderfx_move_down (wmOperatorType *ot)
static wmOperatorStatus shaderfx_move_down_exec (bContext *C, wmOperator *op)
static wmOperatorStatus shaderfx_move_down_invoke (bContext *C, wmOperator *op, const wmEvent *event)
Move ShaderFX to Index Operator
void OBJECT_OT_shaderfx_move_to_index (wmOperatorType *ot)
static wmOperatorStatus shaderfx_move_to_index_exec (bContext *C, wmOperator *op)
static wmOperatorStatus shaderfx_move_to_index_invoke (bContext *C, wmOperator *op, const wmEvent *event)
Vertex Group Add Operator
void OBJECT_OT_vertex_group_add (wmOperatorType *ot)
static wmOperatorStatus vertex_group_add_exec (bContext *C, wmOperator *)
Vertex Group Remove Operator
void OBJECT_OT_vertex_group_remove (wmOperatorType *ot)
static void grease_pencil_clear_from_vgroup (Scene &scene, Object &ob, bDeformGroup *dg, const bool use_selection, const bool all_drawings=false)
static void grease_pencil_clear_from_all_vgroup (Scene &scene, Object &ob, const bool use_selection, const bool all_drawings=false, const bool only_unlocked=false)
static wmOperatorStatus vertex_group_remove_exec (bContext *C, wmOperator *op)
Vertex Group Assign Operator
void OBJECT_OT_vertex_group_assign (wmOperatorType *ot)
static wmOperatorStatus vertex_group_assign_exec (bContext *C, wmOperator *op)
Vertex Group Assign New Operator
void OBJECT_OT_vertex_group_assign_new (wmOperatorType *ot)
static wmOperatorStatus vertex_group_assign_new_exec (bContext *C, wmOperator *op)
Vertex Group Remove From Operator
void OBJECT_OT_vertex_group_remove_from (wmOperatorType *ot)
static wmOperatorStatus vertex_group_remove_from_exec (bContext *C, wmOperator *op)
Vertex Group Select Operator
void OBJECT_OT_vertex_group_select (wmOperatorType *ot)
static wmOperatorStatus vertex_group_select_exec (bContext *C, wmOperator *)
Vertex Group Deselect Operator
void OBJECT_OT_vertex_group_deselect (wmOperatorType *ot)
static wmOperatorStatus vertex_group_deselect_exec (bContext *C, wmOperator *)
Vertex Group Copy to Selected Operator
void OBJECT_OT_vertex_group_copy_to_selected (wmOperatorType *ot)
static wmOperatorStatus vertex_group_copy_to_selected_exec (bContext *C, wmOperator *op)
Vertex Group Copy Operator
void OBJECT_OT_vertex_group_copy (wmOperatorType *ot)
static wmOperatorStatus vertex_group_copy_exec (bContext *C, wmOperator *)
Vertex Group Normalize Operator
void OBJECT_OT_vertex_group_normalize (wmOperatorType *ot)
static wmOperatorStatus vertex_group_normalize_exec (bContext *C, wmOperator *)
Vertex Group Normalize All Operator
void OBJECT_OT_vertex_group_normalize_all (wmOperatorType *ot)
static eVGroupSelect normalize_vertex_group_target (Object *ob)
static wmOperatorStatus vertex_group_normalize_all_exec (bContext *C, wmOperator *op)
Vertex Group Levels Operator
void OBJECT_OT_vertex_group_levels (wmOperatorType *ot)
static wmOperatorStatus vertex_group_levels_exec (bContext *C, wmOperator *op)
Vertex Group Lock Operator
void OBJECT_OT_vertex_group_lock (wmOperatorType *ot)
static wmOperatorStatus vertex_group_lock_exec (bContext *C, wmOperator *op)
static std::string vertex_group_lock_get_description (bContext *, wmOperatorType *, PointerRNA *ptr)
Vertex Group Invert Operator
void OBJECT_OT_vertex_group_invert (wmOperatorType *ot)
static wmOperatorStatus vertex_group_invert_exec (bContext *C, wmOperator *op)
Vertex Group Smooth Operator
void OBJECT_OT_vertex_group_smooth (wmOperatorType *ot)
static wmOperatorStatus vertex_group_smooth_exec (bContext *C, wmOperator *op)
Vertex Group Clean Operator
void OBJECT_OT_vertex_group_clean (wmOperatorType *ot)
static wmOperatorStatus vertex_group_clean_exec (bContext *C, wmOperator *op)
Vertex Group Quantize Operator
void OBJECT_OT_vertex_group_quantize (wmOperatorType *ot)
static wmOperatorStatus vertex_group_quantize_exec (bContext *C, wmOperator *op)
Vertex Group Limit Total Operator
void OBJECT_OT_vertex_group_limit_total (wmOperatorType *ot)
static wmOperatorStatus vertex_group_limit_total_exec (bContext *C, wmOperator *op)
Vertex Group Mirror Operator
void OBJECT_OT_vertex_group_mirror (wmOperatorType *ot)
static wmOperatorStatus vertex_group_mirror_exec (bContext *C, wmOperator *op)
Vertex Group Set Active Operator
void OBJECT_OT_vertex_group_set_active (wmOperatorType *ot)
static wmOperatorStatus set_active_group_exec (bContext *C, wmOperator *op)
static const EnumPropertyItemvgroup_itemf (bContext *C, PointerRNA *, PropertyRNA *, bool *r_free)
Vertex Group Move Operator
void OBJECT_OT_vertex_group_move (wmOperatorType *ot)
static wmOperatorStatus vgroup_move_exec (bContext *C, wmOperator *op)
Vertex Group Weight Paste Operator
void OBJECT_OT_vertex_weight_paste (wmOperatorType *ot)
static void vgroup_copy_active_to_sel_single (Object *ob, const int def_nr)
static bool check_vertex_group_accessible (wmOperator *op, Object *ob, int def_nr)
static wmOperatorStatus vertex_weight_paste_exec (bContext *C, wmOperator *op)
Vertex Group Weight Delete Operator
void OBJECT_OT_vertex_weight_delete (wmOperatorType *ot)
static wmOperatorStatus vertex_weight_delete_exec (bContext *C, wmOperator *op)
Vertex Group Set Active by Weight Operator
void OBJECT_OT_vertex_weight_set_active (wmOperatorType *ot)
static wmOperatorStatus vertex_weight_set_active_exec (bContext *C, wmOperator *op)
Vertex Group Normalize Active Vertex Operator
void OBJECT_OT_vertex_weight_normalize_active_vertex (wmOperatorType *ot)
static wmOperatorStatus vertex_weight_normalize_active_vertex_exec (bContext *C, wmOperator *)
Vertex Group Copy Weights from Active Operator
void OBJECT_OT_vertex_weight_copy (wmOperatorType *ot)
static wmOperatorStatus vertex_weight_copy_exec (bContext *C, wmOperator *)
Shape Key Add Operator
void OBJECT_OT_shape_key_add (wmOperatorType *ot)
static wmOperatorStatus shape_key_add_exec (bContext *C, wmOperator *op)
Shape Key Duplicate Operator
void OBJECT_OT_shape_key_copy (wmOperatorType *ot)
static wmOperatorStatus shape_key_copy_exec (bContext *C, wmOperator *)
Shape Key Remove Operator
void OBJECT_OT_shape_key_remove (wmOperatorType *ot)
static wmOperatorStatus shape_key_remove_exec (bContext *C, wmOperator *op)
static bool shape_key_remove_poll_property (const bContext *, wmOperator *op, const PropertyRNA *prop)
static std::string shape_key_remove_get_description (bContext *, wmOperatorType *, PointerRNA *ptr)
Shape Key Clear Operator
void OBJECT_OT_shape_key_clear (wmOperatorType *ot)
void OBJECT_OT_shape_key_retime (wmOperatorType *ot)
static wmOperatorStatus shape_key_clear_exec (bContext *C, wmOperator *)
static wmOperatorStatus shape_key_retime_exec (bContext *C, wmOperator *)
Shape Key Mirror Operator
void OBJECT_OT_shape_key_mirror (wmOperatorType *ot)
static wmOperatorStatus shape_key_mirror_exec (bContext *C, wmOperator *op)
Shape Key Make Basis Operator
void OBJECT_OT_shape_key_make_basis (wmOperatorType *ot)
static bool shape_key_make_basis_poll (bContext *C)
static wmOperatorStatus shape_key_make_basis_exec (bContext *C, wmOperator *)
Voxel Remesh Operator
void OBJECT_OT_voxel_remesh (wmOperatorType *ot)
static bool object_remesh_poll (bContext *C)
static wmOperatorStatus voxel_remesh_exec (bContext *C, wmOperator *op)
Voxel Size Operator
void OBJECT_OT_voxel_size_edit (wmOperatorType *ot)
static void voxel_size_parallel_lines_draw (uint pos3d, const float initial_co[3], const float end_co[3], const float length_co[3], const float spacing)
static void voxel_size_edit_draw (const bContext *C, ARegion *, void *arg)
static void voxel_size_edit_cancel (bContext *C, wmOperator *op)
static void voxel_size_edit_update_header (wmOperator *op, bContext *C)
static wmOperatorStatus voxel_size_edit_modal (bContext *C, wmOperator *op, const wmEvent *event)
static wmOperatorStatus voxel_size_edit_invoke (bContext *C, wmOperator *op, const wmEvent *event)
static bool voxel_size_edit_poll (bContext *C)
Select Operator Utils
static bool objects_selectable_poll (bContext *C)
Generic Poll Callback Helpers
static bool edit_shaderfx_poll_generic (bContext *C, StructRNA *rna_type, int obtype_flag, const bool is_liboverride_allowed)
static bool edit_shaderfx_poll (bContext *C)
Generic Functions for Operators Using Names and Data Context
static void edit_shaderfx_properties (wmOperatorType *ot)
static void edit_shaderfx_report_property (wmOperatorType *ot)
static bool edit_shaderfx_invoke_properties (bContext *C, wmOperator *op, const wmEvent *event, wmOperatorStatus *r_retval)
static ShaderFxDataedit_shaderfx_property_get (wmOperator *op, Object *ob, int type)
Add Shape Key Function
static void object_shape_key_add (bContext *C, Object *ob, const bool from_mix)
Shared Poll Functions
static bool shape_key_poll (bContext *C)
static bool shape_key_exists_poll (bContext *C)
static bool shape_key_mode_poll (bContext *C)
static bool shape_key_mode_exists_poll (bContext *C)
static bool shape_key_move_poll (bContext *C)
Clear Transformation Utilities
static void object_clear_loc (Object *ob, const bool clear_delta)
static void object_clear_rot (Object *ob, const bool clear_delta)
static void object_clear_scale (Object *ob, const bool clear_delta)
static wmOperatorStatus object_clear_transform_generic_exec (bContext *C, wmOperator *op, void(*clear_func)(Object *, const bool), const char default_ksName[])
Shared Operator Poll Functions
static bool vertex_group_supported_poll_ex (bContext *C, const Object *ob)
static bool vertex_group_supported_poll (bContext *C)
static bool vertex_group_poll_ex (bContext *C, Object *ob)
static bool vertex_group_poll (bContext *C)
static bool UNUSED_FUNCTION vertex_group_poll_edit (bContext *C)
static bool vertex_group_vert_poll_ex (bContext *C, const bool needs_select, const short ob_type_flag)
static bool vertex_group_mesh_vert_poll (bContext *C)
static bool vertex_group_vert_select_poll (bContext *C)
static bool vertex_group_vert_select_unlocked_poll (bContext *C)
static bool vertex_group_vert_select_mesh_poll (bContext *C)
Local Utility Functions
static bool object_array_for_wpaint_filter (const Object *ob, void *user_data)
static Vector< Object * > object_array_for_wpaint (bContext *C)
static bool vertex_group_use_vert_sel (Object *ob)
static Latticevgroup_edit_lattice (Object *ob)

Variables

static const EnumPropertyItem DT_layer_items []
static CLG_LogRef LOG = {"object.edit"}
static CLG_LogRef LOG = {"object"}

Local Enum Declarations

enum  { ALIGN_WORLD = 0 , ALIGN_VIEW , ALIGN_CURSOR }
static const EnumPropertyItem field_type_items []
static EnumPropertyItem lightprobe_type_items []
static const EnumPropertyItem align_options []

Skin Modifier

enum  SkinLooseAction { SKIN_LOOSE_MARK , SKIN_LOOSE_CLEAR }
void OBJECT_OT_skin_root_mark (wmOperatorType *ot)
void OBJECT_OT_skin_loose_mark_clear (wmOperatorType *ot)
void OBJECT_OT_skin_radii_equalize (wmOperatorType *ot)
void OBJECT_OT_skin_armature_create (wmOperatorType *ot)
static void modifier_skin_customdata_delete (Object *ob)
static bool skin_poll (bContext *C)
static bool skin_edit_poll (bContext *C)
static void skin_root_clear (BMVert *bm_vert, GSet *visited, const int cd_vert_skin_offset)
static wmOperatorStatus skin_root_mark_exec (bContext *C, wmOperator *)
static wmOperatorStatus skin_loose_mark_clear_exec (bContext *C, wmOperator *op)
static wmOperatorStatus skin_radii_equalize_exec (bContext *C, wmOperator *)
static void skin_armature_bone_create (Object *skin_ob, const Span< float3 > positions, const int2 *edges, bArmature *arm, BLI_bitmap *edges_visited, const GroupedSpan< int > emap, EditBone *parent_bone, int parent_v)
static Objectmodifier_skin_armature_create (Depsgraph *depsgraph, Main *bmain, Object *skin_ob)
static wmOperatorStatus skin_armature_create_exec (bContext *C, wmOperator *op)
static wmOperatorStatus skin_armature_create_invoke (bContext *C, wmOperator *op, const wmEvent *)

Dash Modifier

enum class  DashSegmentMoveDirection { Up = -1 , Down = 1 }
void OBJECT_OT_grease_pencil_dash_modifier_segment_add (wmOperatorType *ot)
void OBJECT_OT_grease_pencil_dash_modifier_segment_remove (wmOperatorType *ot)
void OBJECT_OT_grease_pencil_dash_modifier_segment_move (wmOperatorType *ot)
static bool dash_modifier_segment_poll (bContext *C)
static wmOperatorStatus dash_modifier_segment_add_exec (bContext *C, wmOperator *op)
static wmOperatorStatus dash_modifier_segment_add_invoke (bContext *C, wmOperator *op, const wmEvent *)
static void dash_modifier_segment_free (GreasePencilDashModifierSegment *)
static wmOperatorStatus dash_modifier_segment_remove_exec (bContext *C, wmOperator *op)
static wmOperatorStatus dash_modifier_segment_remove_invoke (bContext *C, wmOperator *op, const wmEvent *)
static wmOperatorStatus dash_modifier_segment_move_exec (bContext *C, wmOperator *op)
static wmOperatorStatus dash_modifier_segment_move_invoke (bContext *C, wmOperator *op, const wmEvent *)

Time Modifier

enum class  TimeSegmentMoveDirection { Up = -1 , Down = 1 }
void OBJECT_OT_grease_pencil_time_modifier_segment_add (wmOperatorType *ot)
void OBJECT_OT_grease_pencil_time_modifier_segment_remove (wmOperatorType *ot)
void OBJECT_OT_grease_pencil_time_modifier_segment_move (wmOperatorType *ot)
static bool time_modifier_segment_poll (bContext *C)
static wmOperatorStatus time_modifier_segment_add_exec (bContext *C, wmOperator *op)
static wmOperatorStatus time_modifier_segment_add_invoke (bContext *C, wmOperator *op, const wmEvent *)
static void time_modifier_segment_free (GreasePencilTimeModifierSegment *)
static wmOperatorStatus time_modifier_segment_remove_exec (bContext *C, wmOperator *op)
static wmOperatorStatus time_modifier_segment_remove_invoke (bContext *C, wmOperator *op, const wmEvent *)
static wmOperatorStatus time_modifier_segment_move_exec (bContext *C, wmOperator *op)
static wmOperatorStatus time_modifier_segment_move_invoke (bContext *C, wmOperator *op, const wmEvent *)

Clear Track Operator

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

Make Track Operator

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

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
}
void OBJECT_OT_make_links_scene (wmOperatorType *ot)
void OBJECT_OT_make_links_data (wmOperatorType *ot)
static wmOperatorStatus make_links_scene_exec (bContext *C, wmOperator *op)
static bool allow_make_links_data (const int type, Object *ob_src, Object *ob_dst)
static wmOperatorStatus make_links_data_exec (bContext *C, wmOperator *op)

Make Local Operator

enum  { MAKE_LOCAL_SELECT_OB = 1 , MAKE_LOCAL_SELECT_OBDATA = 2 , MAKE_LOCAL_SELECT_OBDATA_MATERIAL = 3 , MAKE_LOCAL_ALL = 4 }
void OBJECT_OT_make_local (wmOperatorType *ot)
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, const Scene *scene, 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 wmOperatorStatus make_local_exec (bContext *C, wmOperator *op)

Make Single User Operator

enum  { MAKE_SINGLE_USER_ALL = 1 , MAKE_SINGLE_USER_SELECTED = 2 }
void object_single_user_make (Main *bmain, Scene *scene, Object *ob)
void single_obdata_user_make (Main *bmain, Scene *scene, Object *ob)
void OBJECT_OT_make_single_user (wmOperatorType *ot)
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)
static void single_obdata_users (Main *bmain, Scene *scene, ViewLayer *view_layer, View3D *v3d, const int flag)
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 wmOperatorStatus make_single_user_exec (bContext *C, wmOperator *op)
static wmOperatorStatus make_single_user_invoke (bContext *C, wmOperator *op, const wmEvent *event)

Quadriflow Remesh Operator

enum  { QUADRIFLOW_REMESH_RATIO = 1 , QUADRIFLOW_REMESH_EDGE_LENGTH , QUADRIFLOW_REMESH_FACES }
enum  eQuadreFlowStatus { QUADRIFLOW_STATUS_SUCCESS = 1 , QUADRIFLOW_STATUS_FAIL = 0 , QUADRIFLOW_STATUS_CANCELED = -1 , QUADRIFLOW_STATUS_NONMANIFOLD = -2 }
enum  eSymmetryAxes { SYMMETRY_AXES_X = (1 << 0) , SYMMETRY_AXES_Y = (1 << 1) , SYMMETRY_AXES_Z = (1 << 2) }
static const EnumPropertyItem mode_type_items []
void OBJECT_OT_quadriflow_remesh (wmOperatorType *ot)
static bool mesh_is_manifold_consistent (Mesh *mesh)
static void quadriflow_free_job (void *customdata)
static int quadriflow_break_job (void *customdata)
static void quadriflow_update_job (void *customdata, float progress, int *cancel)
static Meshremesh_symmetry_bisect (Mesh *mesh, eSymmetryAxes symmetry_axes)
static Meshremesh_symmetry_mirror (Object *ob, Mesh *mesh, eSymmetryAxes symmetry_axes)
static void quadriflow_start_job (void *customdata, wmJobWorkerStatus *worker_status)
static void quadriflow_end_job (void *customdata)
static wmOperatorStatus quadriflow_remesh_exec (bContext *C, wmOperator *op)
static bool quadriflow_check (bContext *C, wmOperator *op)
static bool quadriflow_poll_property (const bContext *C, wmOperator *op, const PropertyRNA *prop)
static wmOperatorStatus quadriflow_remesh_invoke (bContext *C, wmOperator *op, const wmEvent *event)

Selection by Links

enum  {
  OBJECT_SELECT_LINKED_IPO = 1 , OBJECT_SELECT_LINKED_OBDATA , OBJECT_SELECT_LINKED_MATERIAL , OBJECT_SELECT_LINKED_DUPGROUP ,
  OBJECT_SELECT_LINKED_PARTICLE , OBJECT_SELECT_LINKED_LIBRARY , OBJECT_SELECT_LINKED_LIBRARY_OBDATA
}
static const EnumPropertyItem prop_select_linked_types []
void select_linked_by_id (bContext *C, ID *id)
void OBJECT_OT_select_linked (wmOperatorType *ot)
static bool object_select_all_by_obdata (bContext *C, void *obdata)
static bool object_select_all_by_material (bContext *C, Material *mat)
static bool object_select_all_by_instance_collection (bContext *C, Object *ob)
static bool object_select_all_by_particle (bContext *C, Object *ob)
static bool object_select_all_by_library (bContext *C, Library *lib)
static bool object_select_all_by_library_obdata (bContext *C, Library *lib)
static wmOperatorStatus object_select_linked_exec (bContext *C, wmOperator *op)

Selected Grouped

enum  {
  OBJECT_GRPSEL_CHILDREN_RECURSIVE = 0 , OBJECT_GRPSEL_CHILDREN = 1 , OBJECT_GRPSEL_PARENT = 2 , OBJECT_GRPSEL_SIBLINGS = 3 ,
  OBJECT_GRPSEL_TYPE = 4 , OBJECT_GRPSEL_COLLECTION = 5 , OBJECT_GRPSEL_HOOK = 7 , OBJECT_GRPSEL_PASS = 8 ,
  OBJECT_GRPSEL_COLOR = 9 , OBJECT_GRPSEL_KEYINGSET = 10 , OBJECT_GRPSEL_LIGHT_TYPE = 11
}
static const EnumPropertyItem prop_select_grouped_types []
void OBJECT_OT_select_grouped (wmOperatorType *ot)
static bool select_grouped_children (bContext *C, Object *ob, const bool recursive)
static bool select_grouped_parent (bContext *C)
static bool select_grouped_collection (bContext *C, Object *ob)
static bool select_grouped_object_hooks (bContext *C, Object *ob)
static bool select_grouped_siblings (bContext *C, Object *ob)
static bool select_grouped_lighttype (bContext *C, Object *ob)
static bool select_grouped_type (bContext *C, Object *ob)
static bool select_grouped_index_object (bContext *C, Object *ob)
static bool select_grouped_color (bContext *C, Object *ob)
static bool select_grouped_keyingset (bContext *C, Object *, ReportList *reports)
static wmOperatorStatus object_select_grouped_exec (bContext *C, wmOperator *op)

Shape Key Move (Re-Order) Operator

enum  KeyBlockMove { KB_MOVE_TOP = -2 , KB_MOVE_UP = -1 , KB_MOVE_DOWN = 1 , KB_MOVE_BOTTOM = 2 }
void OBJECT_OT_shape_key_move (wmOperatorType *ot)
static wmOperatorStatus shape_key_move_exec (bContext *C, wmOperator *op)

Shape Key Lock (Unlock) Operator

enum  { SHAPE_KEY_LOCK , SHAPE_KEY_UNLOCK }
void OBJECT_OT_shape_key_lock (wmOperatorType *ot)
static wmOperatorStatus shape_key_lock_exec (bContext *C, wmOperator *op)
static std::string shape_key_lock_get_description (bContext *, wmOperatorType *, PointerRNA *ptr)

Set Object Center Operator

enum  {
  GEOMETRY_TO_ORIGIN = 0 , ORIGIN_TO_GEOMETRY , ORIGIN_TO_CURSOR , ORIGIN_TO_CENTER_OF_MASS_SURFACE ,
  ORIGIN_TO_CENTER_OF_MASS_VOLUME
}
void OBJECT_OT_origin_set (wmOperatorType *ot)
static float3 arithmetic_mean (const Span< float3 > values)
static void translate_positions (MutableSpan< float3 > positions, const float3 &translation)
static wmOperatorStatus object_origin_set_exec (bContext *C, wmOperator *op)

Operator Function Implementations

enum  { VGROUP_TOGGLE , VGROUP_LOCK , VGROUP_UNLOCK , VGROUP_INVERT }
enum  { VGROUP_MASK_ALL , VGROUP_MASK_SELECTED , VGROUP_MASK_UNSELECTED , VGROUP_MASK_INVERT_UNSELECTED }
static const EnumPropertyItem vgroup_lock_actions []
static const EnumPropertyItem vgroup_lock_mask []
void vgroup_mirror (Object *ob, bool mirror_weights, bool flip_vgroups, bool all_vgroups, bool use_topology, int *r_totmirr, int *r_totfail)
static void vgroup_grease_pencil_select_verts (const Scene &scene, const ToolSettings &tool_settings, const bDeformGroup *def_group, const bool select, Object &object)
static void vgroup_select_verts (const ToolSettings &tool_settings, Object *ob, Scene &scene, int select)
static void vgroup_duplicate (Object *ob)
static bool vgroup_normalize (Object *ob)
static void vgroup_levels_subset (Object *ob, const bool *vgroup_validmap, const int vgroup_tot, const int, const float offset, const float gain)
static bool vgroup_normalize_all (Object *ob, const bool *vgroup_validmap, const int vgroup_tot, const bool lock_active, const bool soft_lock_active, ReportList *reports, std::optional< int > current_frame={})
static void vgroup_normalize_all_deform_if_active_is_deform (Object *ob, const bool soft_lock_active, ReportList *reports, std::optional< int > current_frame={})
static bool * vgroup_selected_get (Object *ob)
static void vgroup_lock_all (Object *ob, int action, int mask)
static void vgroup_invert_subset (Object *ob, const bool *vgroup_validmap, const int vgroup_tot, const int, const bool auto_assign, const bool auto_remove)
static void vgroup_smooth_subset (Object *ob, const bool *vgroup_validmap, const int vgroup_tot, const int subset_count, const float fac, const int repeat, const float fac_expand)
static int inv_cmp_mdef_vert_weights (const void *a1, const void *a2)
static int vgroup_limit_total_subset (Object *ob, const bool *vgroup_validmap, const int vgroup_tot, const int subset_count, const int max_weights)
static void vgroup_clean_subset (Object *ob, const bool *vgroup_validmap, const int vgroup_tot, const int, const float epsilon, const bool keep_single)
static void vgroup_quantize_subset (Object *ob, const bool *vgroup_validmap, const int vgroup_tot, const int, const int steps)
static void dvert_mirror_op (MDeformVert *dvert, MDeformVert *dvert_mirr, const char sel, const char sel_mirr, const int *flip_map, const int flip_map_len, const bool mirror_weights, const bool flip_vgroups, const bool all_vgroups, const int act_vgroup)
static void vgroup_delete_active (Object *ob)
static void vgroup_assign_verts (Object *ob, Scene &scene, const float weight)

Vertex Group Sort Operator

enum  { SORT_TYPE_NAME = 0 , SORT_TYPE_BONEHIERARCHY = 1 }
void OBJECT_OT_vertex_group_sort (wmOperatorType *ot)
static char * vgroup_init_remap (Object *ob)
static wmOperatorStatus vgroup_do_remap (Object *ob, const char *name_array, wmOperator *op)
static int vgroup_sort_name (const void *def_a_ptr, const void *def_b_ptr)
static void vgroup_sort_bone_hierarchy (Object *ob, ListBase *bonebase)
static wmOperatorStatus vertex_group_sort_exec (bContext *C, wmOperator *op)

Add Grease Pencil Operator

static EnumPropertyItem rna_enum_gpencil_add_stroke_depth_order_items []
static wmOperatorStatus object_grease_pencil_add_exec (bContext *C, wmOperator *op)
static wmOperatorStatus object_grease_pencil_add_invoke (bContext *C, wmOperator *op, const wmEvent *)
void OBJECT_OT_grease_pencil_add (wmOperatorType *ot)

Data Convert Operator

static const EnumPropertyItem convert_target_items []
static const EnumPropertyItemconvert_target_itemf (bContext *C, PointerRNA *, PropertyRNA *, bool *r_free)
static void object_data_convert_curve_to_mesh (Main *bmain, Depsgraph *depsgraph, Object *ob)
static bool object_convert_poll (bContext *C)
static Baseduplibase_for_convert (Main *bmain, Depsgraph *depsgraph, Scene *scene, ViewLayer *view_layer, Base *base, Object *ob)
static Objectget_object_for_conversion (Base &base, ObjectConversionInfo &info, Base **r_new_base)
static Objectconvert_mesh_to_curves_legacy (Base &base, ObjectConversionInfo &info, Base **r_new_base)
static Objectconvert_curves_component_to_curves (Base &base, ObjectConversionInfo &info, Base **r_new_base)
static Objectconvert_grease_pencil_component_to_curves (Base &base, ObjectConversionInfo &info, Base **r_new_base)
static Objectconvert_mesh_to_curves (Base &base, ObjectConversionInfo &info, Base **r_new_base)
static Objectconvert_mesh_to_pointcloud (Base &base, ObjectConversionInfo &info, Base **r_new_base)
static Objectconvert_mesh_to_mesh (Base &base, ObjectConversionInfo &info, Base **r_new_base)
static int mesh_to_grease_pencil_add_material (Main &bmain, Object &ob_grease_pencil, const StringRefNull name, const std::optional< float4 > &stroke_color, const std::optional< float4 > &fill_color)
static VectorSet< FillColorRecordmesh_to_grease_pencil_get_material_list (Object &ob_mesh, const Mesh &mesh, Array< int > &material_remap)
static void mesh_data_to_grease_pencil (const Mesh &mesh_eval, GreasePencil &grease_pencil, const int current_frame, const bool generate_faces, const float stroke_radius, const float offset, const Array< int > &material_remap)
static Objectconvert_mesh_to_grease_pencil (Base &base, ObjectConversionInfo &info, Base **r_new_base)
static Objectconvert_mesh (Base &base, const ObjectType target, ObjectConversionInfo &info, Base **r_new_base)
static Objectconvert_curves_to_mesh (Base &base, ObjectConversionInfo &info, Base **r_new_base)
static Objectconvert_curves_to_grease_pencil (Base &base, ObjectConversionInfo &info, Base **r_new_base)
static Objectconvert_curves (Base &base, const ObjectType target, ObjectConversionInfo &info, Base **r_new_base)
static Objectconvert_grease_pencil_to_mesh (Base &base, ObjectConversionInfo &info, Base **r_new_base)
static Objectconvert_grease_pencil (Base &base, const ObjectType target, ObjectConversionInfo &info, Base **r_new_base)
static Objectconvert_font_to_curve_legacy_generic (Object *ob, Object *newob, ObjectConversionInfo &info)
static Objectconvert_font_to_curves_legacy (Base &base, ObjectConversionInfo &info, Base **r_new_base)
static Objectconvert_font_to_curves (Base &base, ObjectConversionInfo &info, Base **r_new_base)
static void add_grease_pencil_materials_for_conversion (Main &bmain, ID &from_id, Object &gp_object, const bool use_fill)
static Objectconvert_font_to_grease_pencil (Base &base, ObjectConversionInfo &info, Base **r_new_base)
static Objectconvert_font_to_mesh (Base &base, ObjectConversionInfo &info, Base **r_new_base)
static Objectconvert_font (Base &base, const short target, ObjectConversionInfo &info, Base **r_new_base)
static Objectconvert_curves_legacy_to_mesh (Base &base, ObjectConversionInfo &info, Base **r_new_base)
static Objectconvert_curves_legacy_to_curves (Base &base, ObjectConversionInfo &info, Base **r_new_base)
static Objectconvert_curves_legacy_to_grease_pencil (Base &base, ObjectConversionInfo &info, Base **r_new_base)
static Objectconvert_curves_legacy (Base &base, const ObjectType target, ObjectConversionInfo &info, Base **r_new_base)
static Objectconvert_mball_to_mesh (Base &base, ObjectConversionInfo &info, bool &r_mball_converted, Base **r_new_base, Base **r_act_base)
static Objectconvert_mball (Base &base, const ObjectType target, ObjectConversionInfo &info, bool &r_mball_converted, Base **r_new_base, Base **r_act_base)
static Objectconvert_pointcloud_to_mesh (Base &base, ObjectConversionInfo &info, Base **r_new_base)
static Objectconvert_pointcloud (Base &base, const ObjectType target, ObjectConversionInfo &info, Base **r_new_base)
static wmOperatorStatus object_convert_exec (bContext *C, wmOperator *op)
static void object_convert_ui (bContext *, wmOperator *op)
void OBJECT_OT_convert (wmOperatorType *ot)

Generic Functions for Operators Using Constraint Names and Data Context

static const EnumPropertyItem constraint_owner_items []
static bool edit_constraint_poll_generic (bContext *C, StructRNA *rna_type, const bool is_liboverride_allowed)
static bool edit_constraint_poll (bContext *C)
static bool edit_constraint_liboverride_allowed_poll (bContext *C)
static void edit_constraint_properties (wmOperatorType *ot)
static void edit_constraint_report_property (wmOperatorType *ot)
static bool edit_constraint_invoke_properties (bContext *C, wmOperator *op, const wmEvent *event, wmOperatorStatus *r_retval)
static bConstraintedit_constraint_property_get (bContext *C, wmOperator *op, Object *ob, int type)

Transfer Mode

Enters the same mode of the current active object in another object, leaving the mode of the current object.

constexpr float mode_transfer_flash_length = 0.55f
Map< std::string, float, 1 > mode_transfer_overlay_current_state ()
void OBJECT_OT_transfer_mode (wmOperatorType *ot)
static bool object_transfer_mode_poll (bContext *C)
static void object_transfer_mode_reposition_view_pivot (ARegion *region, Paint *paint, const int mval[2])
static auto & mode_transfer_overlay_start_times ()
static float alpha_from_time_get (const float anim_time)
static void object_overlay_mode_transfer_animation_start (bContext *C, Object *ob_dst)
static bool object_transfer_mode_to_base (bContext *C, wmOperator *op, Scene *scene, Object *, Object *ob_dst, const eObjectMode mode_dst)
static wmOperatorStatus object_transfer_mode_invoke (bContext *C, wmOperator *op, const wmEvent *event)

Multires Subdivide Operator

static EnumPropertyItem prop_multires_subdivide_mode_type []
void OBJECT_OT_multires_subdivide (wmOperatorType *ot)
static wmOperatorStatus multires_subdivide_exec (bContext *C, wmOperator *op)
static wmOperatorStatus multires_subdivide_invoke (bContext *C, wmOperator *op, const wmEvent *)

Clear Parent Operator

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

Make Parent Operator

const EnumPropertyItem prop_make_parent_types []
bool parent_set (ReportList *reports, const bContext *C, Scene *scene, Object *const ob, Object *const par, int partype, bool xmirror, bool keep_transform, const int vert_par[3])
void parent_set (Object *ob, Object *parent, int type, const char *substr)
void OBJECT_OT_parent_set (wmOperatorType *ot)
static bool parent_set_with_depsgraph (ReportList *reports, const bContext *C, Scene *scene, Depsgraph *depsgraph, Object *const ob, Object *const par, Object *const parent_eval, 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, ParentingContext *parenting_context)
static bool parent_set_vertex_parent_with_kdtree (bContext *C, ParentingContext *parenting_context, KDTree_3d *tree)
static bool parent_set_vertex_parent (bContext *C, ParentingContext *parenting_context)
static wmOperatorStatus parent_set_exec (bContext *C, wmOperator *op)
static wmOperatorStatus parent_set_invoke_menu (bContext *C, wmOperatorType *ot)
static wmOperatorStatus parent_set_invoke (bContext *C, wmOperator *op, const wmEvent *)
static bool parent_set_poll_property (const bContext *, wmOperator *op, const PropertyRNA *prop)

Shared Weight Transfer Operator Properties

static const EnumPropertyItem WT_vertex_group_select_item []
const EnumPropertyItemvgroup_selection_itemf_helper (const bContext *C, PointerRNA *ptr, PropertyRNA *prop, bool *r_free, unsigned int selection_mask)
static const EnumPropertyItemrna_vertex_group_with_single_itemf (bContext *C, PointerRNA *ptr, PropertyRNA *prop, bool *r_free)
static const EnumPropertyItemrna_vertex_group_select_itemf (bContext *C, PointerRNA *ptr, PropertyRNA *prop, bool *r_free)
static void vgroup_operator_subset_select_props (wmOperatorType *ot, bool use_active)

Enumeration Type Documentation

◆ anonymous enum

anonymous enum
Enumerator
OBJECT_SELECT_LINKED_IPO 
OBJECT_SELECT_LINKED_OBDATA 
OBJECT_SELECT_LINKED_MATERIAL 
OBJECT_SELECT_LINKED_DUPGROUP 
OBJECT_SELECT_LINKED_PARTICLE 
OBJECT_SELECT_LINKED_LIBRARY 
OBJECT_SELECT_LINKED_LIBRARY_OBDATA 

Definition at line 435 of file object_select.cc.

◆ anonymous enum

anonymous enum
Enumerator
MAKE_LOCAL_SELECT_OB 
MAKE_LOCAL_SELECT_OBDATA 
MAKE_LOCAL_SELECT_OBDATA_MATERIAL 
MAKE_LOCAL_ALL 

Definition at line 2112 of file object_relations.cc.

◆ 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 1464 of file object_relations.cc.

◆ anonymous enum

anonymous enum

Bit-flags for enter/exit edit-mode.

Enumerator
EM_FREEDATA 
EM_NO_CONTEXT 

Definition at line 275 of file ED_object.hh.

◆ anonymous enum

anonymous enum
Enumerator
CREATE_TRACK_DAMPTRACK 
CREATE_TRACK_TRACKTO 
CREATE_TRACK_LOCKTRACK 

Definition at line 1278 of file object_relations.cc.

◆ anonymous enum

anonymous enum
Enumerator
MAKE_SINGLE_USER_ALL 
MAKE_SINGLE_USER_SELECTED 

Definition at line 2863 of file object_relations.cc.

◆ anonymous enum

anonymous enum
Enumerator
OBJECT_GRPSEL_CHILDREN_RECURSIVE 
OBJECT_GRPSEL_CHILDREN 
OBJECT_GRPSEL_PARENT 
OBJECT_GRPSEL_SIBLINGS 
OBJECT_GRPSEL_TYPE 
OBJECT_GRPSEL_COLLECTION 
OBJECT_GRPSEL_HOOK 
OBJECT_GRPSEL_PASS 
OBJECT_GRPSEL_COLOR 
OBJECT_GRPSEL_KEYINGSET 
OBJECT_GRPSEL_LIGHT_TYPE 

Definition at line 718 of file object_select.cc.

◆ anonymous enum

anonymous enum
Enumerator
GEOMETRY_TO_ORIGIN 
ORIGIN_TO_GEOMETRY 
ORIGIN_TO_CURSOR 
ORIGIN_TO_CENTER_OF_MASS_SURFACE 
ORIGIN_TO_CENTER_OF_MASS_VOLUME 

Definition at line 1259 of file object_transform.cc.

◆ anonymous enum

anonymous enum
Enumerator
ALIGN_WORLD 
ALIGN_VIEW 
ALIGN_CURSOR 

Definition at line 193 of file object_add.cc.

◆ anonymous enum

anonymous enum
Enumerator
SORT_TYPE_NAME 
SORT_TYPE_BONEHIERARCHY 

Definition at line 4018 of file object_vgroup.cc.

◆ anonymous enum

anonymous enum

Object Skip-Child Container helper API.

Enumerator
XFORM_OB_SKIP_CHILD_PARENT_IS_XFORM 

The parent is transformed, this is held in place.

XFORM_OB_SKIP_CHILD_PARENT_IS_XFORM_INDIRECT 

The same as XFORM_OB_SKIP_CHILD_PARENT_IS_XFORM, however this objects parent isn't transformed directly.

XFORM_OB_SKIP_CHILD_PARENT_APPLY 

Use the parent invert matrix to apply transformation, this is needed, because breaks in the selection chain prevents this from being transformed. This is used to add the transform which would have been added if there weren't breaks in the parent/child chain.

Definition at line 135 of file ED_object.hh.

◆ anonymous enum

anonymous enum
Enumerator
CLEAR_TRACK 
CLEAR_TRACK_KEEP_TRANSFORM 

Definition at line 1197 of file object_relations.cc.

◆ anonymous enum

anonymous enum
Enumerator
SHAPE_KEY_LOCK 
SHAPE_KEY_UNLOCK 

Definition at line 776 of file object_shapekey.cc.

◆ anonymous enum

anonymous enum
Enumerator
VGROUP_MASK_ALL 
VGROUP_MASK_SELECTED 
VGROUP_MASK_UNSELECTED 
VGROUP_MASK_INVERT_UNSELECTED 

Definition at line 1506 of file object_vgroup.cc.

◆ anonymous enum

anonymous enum
Enumerator
VGROUP_TOGGLE 
VGROUP_LOCK 
VGROUP_UNLOCK 
VGROUP_INVERT 

Definition at line 1487 of file object_vgroup.cc.

◆ anonymous enum

anonymous enum
Enumerator
QUADRIFLOW_REMESH_RATIO 
QUADRIFLOW_REMESH_EDGE_LENGTH 
QUADRIFLOW_REMESH_FACES 

Definition at line 638 of file object_remesh.cc.

◆ anonymous enum

anonymous enum
Enumerator
MODIFIER_APPLY_DATA 
MODIFIER_APPLY_SHAPE 

Definition at line 487 of file ED_object.hh.

◆ ClearFlag

Enumerator
CLEAR_TANGENT_NORMAL 
CLEAR_DISPLACEMENT 

Definition at line 211 of file object_bake.cc.

◆ DashSegmentMoveDirection

Enumerator
Up 
Down 

Definition at line 3745 of file object_modifier.cc.

◆ eObClearParentTypes

Enumerator
CLEAR_PARENT_ALL 
CLEAR_PARENT_KEEP_TRANSFORM 
CLEAR_PARENT_INVERSE 

Definition at line 201 of file ED_object.hh.

◆ eObject_Hook_Add_Mode

Enumerator
OBJECT_ADDHOOK_NEWOB 
OBJECT_ADDHOOK_SELOB 
OBJECT_ADDHOOK_SELOB_BONE 

Definition at line 25 of file object_intern.hh.

◆ eObjectPathCalcRange

Enumerator
OBJECT_PATH_CALC_RANGE_CURRENT_FRAME 
OBJECT_PATH_CALC_RANGE_CHANGED 
OBJECT_PATH_CALC_RANGE_FULL 

Definition at line 372 of file ED_object.hh.

◆ eObjectSelect_Mode

Enumerator
BA_DESELECT 
BA_SELECT 
BA_INVERT 

Definition at line 195 of file ED_object.hh.

◆ eParentType

Enumerator
PAR_OBJECT 
PAR_ARMATURE 
PAR_ARMATURE_NAME 
PAR_ARMATURE_ENVELOPE 
PAR_ARMATURE_AUTO 
PAR_BONE 
PAR_BONE_RELATIVE 
PAR_CURVE 
PAR_FOLLOW 
PAR_PATH_CONST 
PAR_LATTICE 
PAR_VERTEX 
PAR_VERTEX_TRI 

Definition at line 179 of file ED_object.hh.

◆ eQuadreFlowStatus

Enumerator
QUADRIFLOW_STATUS_SUCCESS 
QUADRIFLOW_STATUS_FAIL 
QUADRIFLOW_STATUS_CANCELED 
QUADRIFLOW_STATUS_NONMANIFOLD 

Definition at line 644 of file object_remesh.cc.

◆ eSymmetryAxes

Enumerator
SYMMETRY_AXES_X 
SYMMETRY_AXES_Y 
SYMMETRY_AXES_Z 

Definition at line 651 of file object_remesh.cc.

◆ KeyBlockMove

Enumerator
KB_MOVE_TOP 
KB_MOVE_UP 
KB_MOVE_DOWN 
KB_MOVE_BOTTOM 

Definition at line 666 of file object_shapekey.cc.

◆ SkinLooseAction

Enumerator
SKIN_LOOSE_MARK 
SKIN_LOOSE_CLEAR 

Definition at line 2640 of file object_modifier.cc.

◆ TimeSegmentMoveDirection

Enumerator
Up 
Down 

Definition at line 3981 of file object_modifier.cc.

Function Documentation

◆ active_shape_key_editable_poll()

◆ add_duplicate()

Base * blender::ed::object::add_duplicate ( Main * bmain,
Scene * scene,
ViewLayer * view_layer,
Base * base,
eDupli_ID_Flags dupflag )

Single object duplicate, if dupflag == 0, fully linked, else it uses the flags given. Leaves selection of base/object unaltered.

Note
don't call this within a loop since clear_* functions loop over the entire database.
caller must do DAG_relations_tag_update(bmain); this is not done automatic since we may duplicate many objects in a batch.

Definition at line 4655 of file object_add.cc.

References add_duplicate(), BKE_libblock_relink_to_newid(), BKE_main_id_newptr_and_tag_clear(), BKE_object_is_in_editmode(), Object::data, DEG_id_tag_update_ex(), Object::id, ID_RECALC_EDITORS, ID_REMAP_FORCE_OBDATA_IN_EDITMODE, LIB_ID_DUPLICATE_IS_ROOT_ID, LIB_ID_DUPLICATE_IS_SUBPROCESS, Base::object, and object_add_duplicate_internal().

Referenced by add_duplicate(), blender::ed::greasepencil::duplicate_grease_pencil_object(), mesh_separate_arrays(), mesh_separate_tagged(), separate_armature_exec(), and separate_exec().

◆ add_generic_get_opts()

void blender::ed::object::add_generic_get_opts ( bContext * C,
wmOperator * op,
char view_align_axis,
float r_loc[3],
float r_rot[3],
float r_scale[3],
bool * r_enter_editmode,
unsigned short * r_local_view_bits,
bool * r_is_view_aligned )

Definition at line 475 of file object_add.cc.

References ALIGN_CURSOR, ALIGN_VIEW, ALIGN_WORLD, C, copy_v3_fl(), CTX_data_scene(), CTX_wm_view3d(), Scene::cursor, View3D::local_view_uid, View3D::localvd, location_from_view(), mat3_normalized_to_eul(), blender::MatBase< T, NumCol, NumRow, Alignment >::ptr(), wmOperator::ptr, RNA_float_get_array(), RNA_float_set_array(), RNA_property_boolean_get(), RNA_property_boolean_set(), RNA_property_enum_get(), RNA_property_enum_set(), RNA_property_float_get_array(), RNA_property_float_set_array(), RNA_property_is_set(), RNA_struct_find_property(), RNA_struct_property_is_set(), rotation_from_view(), U, USER_ADD_CURSORALIGNED, USER_ADD_EDITMODE, and USER_ADD_VIEWALIGNED.

Referenced by add_primitive_circle_exec(), add_primitive_cone_exec(), add_primitive_cube_exec(), add_primitive_cylinder_exec(), add_primitive_grid_exec(), add_primitive_icosphere_exec(), add_primitive_monkey_exec(), add_primitive_plane_exec(), add_primitive_uvsphere_exec(), blender::ed::curves::append_primitive_curve(), collection_add_info_get_from_op(), curvesurf_prim_add(), effector_add_exec(), lattice_add_to_selected_exec(), lightprobe_add_exec(), object_add_exec(), object_add_text_exec(), object_armature_add_exec(), object_camera_add_exec(), object_curves_empty_hair_add_exec(), object_curves_random_add_exec(), object_data_instance_add_exec(), object_empty_add_exec(), object_grease_pencil_add_exec(), object_image_add_exec(), object_light_add_exec(), object_metaball_add_exec(), object_pointcloud_add_exec(), object_speaker_add_exec(), and object_volume_add().

◆ add_generic_props()

void blender::ed::object::add_generic_props ( wmOperatorType * ot,
bool do_editmode )

Definition at line 417 of file object_add.cc.

References align_options, ALIGN_WORLD, DEG2RADF, OBJECT_ADD_SIZE_MAXF, ot, PROP_HIDDEN, PROP_SKIP_SAVE, RNA_def_boolean(), RNA_def_enum(), RNA_def_float_rotation(), RNA_def_float_vector_xyz(), RNA_def_property_flag(), RNA_def_property_update_runtime(), and view_align_update().

Referenced by CURVE_OT_primitive_bezier_circle_add(), CURVE_OT_primitive_bezier_curve_add(), CURVE_OT_primitive_nurbs_circle_add(), CURVE_OT_primitive_nurbs_curve_add(), CURVE_OT_primitive_nurbs_path_add(), blender::ed::curves::CURVES_OT_add_bezier(), blender::ed::curves::CURVES_OT_add_circle(), MESH_OT_primitive_circle_add(), MESH_OT_primitive_cone_add(), MESH_OT_primitive_cube_add(), MESH_OT_primitive_cube_add_gizmo(), MESH_OT_primitive_cylinder_add(), MESH_OT_primitive_grid_add(), MESH_OT_primitive_ico_sphere_add(), MESH_OT_primitive_monkey_add(), MESH_OT_primitive_plane_add(), MESH_OT_primitive_uv_sphere_add(), OBJECT_OT_add(), OBJECT_OT_armature_add(), OBJECT_OT_camera_add(), OBJECT_OT_collection_external_asset_drop(), OBJECT_OT_collection_instance_add(), OBJECT_OT_curves_empty_hair_add(), OBJECT_OT_curves_random_add(), OBJECT_OT_data_instance_add(), OBJECT_OT_effector_add(), OBJECT_OT_empty_add(), OBJECT_OT_empty_image_add(), OBJECT_OT_grease_pencil_add(), OBJECT_OT_lattice_add_to_selected(), OBJECT_OT_light_add(), OBJECT_OT_lightprobe_add(), OBJECT_OT_metaball_add(), OBJECT_OT_pointcloud_random_add(), OBJECT_OT_speaker_add(), OBJECT_OT_text_add(), OBJECT_OT_volume_add(), OBJECT_OT_volume_import(), SURFACE_OT_primitive_nurbs_surface_circle_add(), SURFACE_OT_primitive_nurbs_surface_curve_add(), SURFACE_OT_primitive_nurbs_surface_cylinder_add(), SURFACE_OT_primitive_nurbs_surface_sphere_add(), SURFACE_OT_primitive_nurbs_surface_surface_add(), and SURFACE_OT_primitive_nurbs_surface_torus_add().

◆ add_grease_pencil_materials_for_conversion()

◆ add_hook_object()

int blender::ed::object::add_hook_object ( const bContext * C,
Main * bmain,
Scene * scene,
ViewLayer * view_layer,
View3D * v3d,
Object * obedit,
Object * ob,
int mode,
ReportList * reports )
static

◆ add_hook_object_new()

Object * blender::ed::object::add_hook_object_new ( Main * bmain,
Scene * scene,
ViewLayer * view_layer,
View3D * v3d,
Object * obedit )
static

◆ add_mesh_props()

◆ add_shapekey_layers()

◆ add_type()

◆ add_type_with_obdata()

Object * blender::ed::object::add_type_with_obdata ( bContext * C,
int type,
const char * name,
const float loc[3],
const float rot[3],
bool enter_editmode,
ushort local_view_bits,
ID * obdata )

◆ add_unit_props_radius()

◆ add_unit_props_radius_ex()

void blender::ed::object::add_unit_props_radius_ex ( wmOperatorType * ot,
float default_value )

Definition at line 406 of file object_add.cc.

References OBJECT_ADD_SIZE_MAXF, ot, and RNA_def_float_distance().

Referenced by add_unit_props_radius(), and OBJECT_OT_metaball_add().

◆ add_unit_props_size()

void blender::ed::object::add_unit_props_size ( wmOperatorType * ot)

◆ all_loading_finished()

bool blender::ed::object::all_loading_finished ( )
static

◆ allow_make_links_data()

◆ alpha_from_time_get()

float blender::ed::object::alpha_from_time_get ( const float anim_time)
static

Definition at line 451 of file object_modes.cc.

References mode_transfer_flash_length.

Referenced by mode_transfer_overlay_current_state().

◆ append_sorted_object_parent_hierarchy()

void blender::ed::object::append_sorted_object_parent_hierarchy ( Object * root_object,
Object * object,
Object ** sorted_objects,
int * object_index )
static

◆ apply_grease_pencil_for_modifier()

◆ apply_grease_pencil_for_modifier_all_keyframes()

bool blender::ed::object::apply_grease_pencil_for_modifier_all_keyframes ( Depsgraph * depsgraph,
Scene * scene,
Object * ob,
GreasePencil & grease_pencil_orig,
ModifierData * md )
static

Definition at line 987 of file object_modifier.cc.

References blender::ed::greasepencil::apply_eval_grease_pencil_data(), blender::Array< T, InlineBufferCapacity, Allocator >::begin(), BKE_id_copy_ex(), BKE_modifier_get_evaluated(), BKE_modifier_get_info(), BKE_object_material_from_eval_data(), BKE_scene_graph_update_for_newframe(), RenderData::cfra, DEG_get_bmain(), DEG_get_ctime(), DEG_get_evaluated(), depsgraph, blender::Array< T, InlineBufferCapacity, Allocator >::end(), blender::bke::greasepencil::ensure_non_empty_layer_names(), blender::bke::greasepencil::Layer::frames(), GeometrySet::from_grease_pencil(), blender::IndexMask::from_indices(), GeometrySet::get_component_for_write(), GeometrySet::has_grease_pencil(), i, GreasePencil::id, Map< Key, Value, InlineBufferCapacity, ProbingStrategy, Hash, IsEqual, Slot, Allocator >::items(), blender::Map< Key, Value, InlineBufferCapacity, ProbingStrategy, Hash, IsEqual, Slot, Allocator >::keys(), LIB_ID_COPY_LOCALIZE, blender::Map< Key, Value, InlineBufferCapacity, ProbingStrategy, Hash, IsEqual, Slot, Allocator >::lookup(), blender::Map< Key, Value, InlineBufferCapacity, ProbingStrategy, Hash, IsEqual, Slot, Allocator >::lookup_or_add(), MOD_APPLY_TO_ORIGINAL, ModifierTypeInfo::modify_geometry_set, Scene::r, GreasePencil::runtime, Object::runtime, blender::Map< Key, Value, InlineBufferCapacity, ProbingStrategy, Hash, IsEqual, Slot, Allocator >::size(), ModifierData::type, and WM_cursor_wait().

Referenced by modifier_apply_obdata().

◆ apply_objects_internal()

wmOperatorStatus blender::ed::object::apply_objects_internal ( bContext * C,
ReportList * reports,
bool apply_loc,
bool apply_rot,
bool apply_scale,
bool do_props,
bool do_single_user )
static

Definition at line 658 of file object_transform.cc.

References add_v3_v3v3(), apply_objects_internal_can_multiuser(), apply_objects_internal_need_single_user(), Light::area_shape, Light::area_size, Light::area_sizey, Light::area_sizez, BKE_armature_copy_bone_transforms(), BKE_armature_transform(), BKE_curve_transform_ex(), BKE_idtype_idcode_to_name(), BKE_lattice_transform(), BKE_main_id_newptr_and_tag_clear(), BKE_mball_transform(), BKE_object_apply_mat4(), BKE_object_calc_parent(), BKE_object_movieclip_get(), BKE_object_rot_to_mat3(), BKE_object_scale_to_mat3(), BKE_object_to_mat3(), BKE_object_transform_copy(), BKE_object_where_is_calc(), BKE_pose_where_is(), BKE_reportf(), BKE_tracking_reconstruction_scale(), C, compare_ff_relative(), copy_m4_m3(), copy_m4_m4(), copy_v3_fl(), copy_v3_v3(), copy_v4_v4(), CTX_data_active_object(), CTX_DATA_BEGIN, CTX_DATA_END, CTX_data_ensure_evaluated_depsgraph(), CTX_data_main(), CTX_data_scene(), CU_3D, Object::data, DEG_get_evaluated(), DEG_id_tag_update(), DEG_relations_tag_update(), depsgraph, GreasePencilFrame::drawing_index, ELEM, fabsf, Curve::flag, blender::Map< Key, Value, InlineBufferCapacity, ProbingStrategy, Hash, IsEqual, Slot, Allocator >::foreach_item(), blender::bke::greasepencil::Layer::frames(), Curve::fsize, GP_DRAWING, GS, TextBox::h, i, Light::id, Object::id, ID_IS_EDITABLE, ID_IS_OVERRIDE_LIBRARY, ID_REAL_USERS, ID_RECALC_GEOMETRY, ID_RECALC_PARAMETERS, ID_RECALC_TRANSFORM, id_us_min(), id_us_plus(), ignore_parent_tx(), blender::MutableSpan< T >::index_range(), blender::math::invert(), invert_m3_m3(), invert_m4_m4(), blender::Array< T, InlineBufferCapacity, Allocator >::is_empty(), Curve::key, LA_AREA, LA_AREA_DISK, LA_AREA_ELLIPSE, LA_AREA_RECT, LA_AREA_SQUARE, Object::loc, mat3_to_scale(), mat4_to_scale(), max_fff(), blender::bke::mesh_transform(), mul_m3_m3m3(), mul_m3_v3(), mul_m4_m4_post(), multiresModifier_scale_disp(), ID::name, NC_WINDOW, OB_ARMATURE, OB_CAMERA, OB_CURVES, OB_CURVES_LEGACY, OB_EMPTY, OB_FONT, OB_GREASE_PENCIL, OB_LAMP, OB_LATTICE, OB_MBALL, OB_MESH, OB_POINTCLOUD, OB_SURF, OPERATOR_CANCELLED, blender::threading::parallel_for(), Object::parentinv, ptr, Object::quat, blender::bke::greasepencil::Drawing::radii_for_write(), Object::rot, Object::rotAngle, Object::rotAxis, RPT_ERROR, RPT_WARNING, Object::scale, single_obdata_user_make(), sorted_selected_editable_objects(), blender::bke::greasepencil::Drawing::strokes_for_write(), Curve::tb, blender::bke::greasepencil::Layer::to_object_space(), Curve::totbox, MovieClip::tracking, blender::math::transform_points(), GreasePencilDrawingBase::type, Light::type, unit_axis_angle(), unit_m3(), unit_qt(), TextBox::w, WM_event_add_notifier(), wrap(), TextBox::x, TextBox::y, and zero_v3().

Referenced by object_transform_apply_exec().

◆ apply_objects_internal_can_multiuser()

bool blender::ed::object::apply_objects_internal_can_multiuser ( bContext * C)
static

Check if we need and can handle the special multiuser case.

Definition at line 613 of file object_transform.cc.

References C, CTX_data_active_object(), CTX_DATA_BEGIN, CTX_DATA_END, Object::data, ELEM, and ID_REAL_USERS.

Referenced by apply_objects_internal(), apply_objects_internal_need_single_user(), and object_transform_apply_invoke().

◆ apply_objects_internal_need_single_user()

bool blender::ed::object::apply_objects_internal_need_single_user ( bContext * C)
static

Check if the current selection need to be made into single user.

It assumes that all selected objects share the same object data.

Definition at line 648 of file object_transform.cc.

References apply_objects_internal_can_multiuser(), BLI_assert, C, CTX_data_active_object(), CTX_DATA_COUNT, Object::data, and ID_REAL_USERS.

Referenced by apply_objects_internal(), and object_transform_apply_invoke().

◆ arithmetic_mean()

float3 blender::ed::object::arithmetic_mean ( const Span< float3 > values)
static

◆ armature_coords_and_quats_apply()

void blender::ed::object::armature_coords_and_quats_apply ( bArmature * arm,
const Span< ElemData_Armature > elem_array )
static

◆ armature_coords_and_quats_apply_with_mat4()

void blender::ed::object::armature_coords_and_quats_apply_with_mat4 ( bArmature * arm,
const Span< ElemData_Armature > elem_array,
const float4x4 & transform )
static

◆ armature_coords_and_quats_apply_with_mat4_recurse()

const ElemData_Armature * blender::ed::object::armature_coords_and_quats_apply_with_mat4_recurse ( ListBase * bone_base,
const ElemData_Armature * elem_array,
const float4x4 & transform )
static

◆ armature_coords_and_quats_get()

void blender::ed::object::armature_coords_and_quats_get ( const bArmature * arm,
MutableSpan< ElemData_Armature > elem_array )
static

◆ armature_coords_and_quats_get_recurse()

ElemData_Armature * blender::ed::object::armature_coords_and_quats_get_recurse ( const ListBase * bone_base,
ElemData_Armature * elem_array )
static

◆ bake()

wmOperatorStatus blender::ed::object::bake ( const BakeAPIRender * bkr,
Object * ob_low,
const Span< PointerRNA > selected_objects,
ReportList * reports )
static

Definition at line 1406 of file object_bake_api.cc.

References bake_mesh_new_from_object(), bake_targets_free(), bake_targets_init(), bake_targets_output(), bake_targets_populate_pixels(), bake_targets_refresh(), BASE_ENABLED_AND_MAYBE_VISIBLE_IN_VIEWPORT, BASE_ENABLED_RENDER, Object::base_flag, BKE_id_free(), BKE_mesh_new_from_object(), BKE_modifier_free(), BKE_modifiers_findby_type(), BKE_object_eval_reset(), BKE_object_handle_data_update(), BKE_report(), BKE_reportf(), BKE_scene_graph_update_tagged(), BLI_assert, BLI_findstring(), BLI_remlink(), blender::ed::object::BakeAPIRender::cage_extrusion, CD_PROP_FLOAT2, BakeTargets::channels_num, copy_m4_m4(), blender::bke::Corner, Mesh::corner_data, Mesh::corners_num, blender::ed::object::BakeAPIRender::custom_cage, CustomData_has_layer(), DAG_EVAL_RENDER, Object::data, DEG_disable_visibility_optimization(), DEG_get_evaluated(), DEG_graph_build_from_view_layer(), DEG_graph_free(), DEG_graph_new(), depsgraph, eModifierMode_Render, eModifierType_EdgeSplit, eModifierType_Multires, Mesh::faces_num, ListBase::first, MultiresModifierData::flags, blender::bke::Float2, i, Mesh::id, Object::id, invert_m4_m4(), blender::ed::object::BakeAPIRender::is_cage, BakeHighPolyData::is_flip_object, is_negative_m4(), blender::ed::object::BakeAPIRender::is_selected_to_active, blender::bke::AttributeAccessor::lookup_meta_data(), blender::ed::object::BakeAPIRender::main, blender::ed::object::BakeAPIRender::max_ray_distance, MEM_calloc_arrayN(), MEM_freeN(), MEM_malloc_arrayN(), BakeHighPolyData::mesh, ModifierData::mode, Object::modifiers, ID::name, name, ModifierData::next, blender::ed::object::BakeAPIRender::normal_space, blender::ed::object::BakeAPIRender::normal_swizzle, BakeHighPolyData::ob, BakeHighPolyData::ob_eval, OB_HIDE_RENDER, OB_MESH, Main::objects, offsetof, OPERATOR_CANCELLED, OPERATOR_FINISHED, ID::orig_id, blender::ed::object::BakeAPIRender::pass_filter, blender::ed::object::BakeAPIRender::pass_type, BakeTargets::pixels_num, ptr, R_BAKE_POSX, R_BAKE_POSY, R_BAKE_POSZ, R_BAKE_SPACE_OBJECT, R_BAKE_SPACE_TANGENT, R_BAKE_SPACE_WORLD, R_BAKE_TARGET_IMAGE_TEXTURES, R_BAKE_TARGET_VERTEX_COLORS, RE_bake_engine(), RE_bake_engine_set_engine_parameters(), RE_bake_has_engine(), RE_bake_normal_world_to_object(), RE_bake_normal_world_to_tangent(), RE_bake_normal_world_to_world(), RE_bake_pixels_populate_from_objects(), blender::ed::object::BakeAPIRender::render, BakeTargets::result, RPT_ERROR, SCE_PASS_NORMAL, blender::ed::object::BakeAPIRender::scene, SUBSURF_UV_SMOOTH_NONE, blender::ed::object::BakeAPIRender::target, ModifierData::type, Object::type, UNLIKELY, blender::ed::object::BakeAPIRender::uv_layer, MultiresModifierData::uv_smooth, blender::ed::object::BakeAPIRender::view_layer, and Object::visibility_flag.

Referenced by bake_exec(), and bake_startjob().

◆ bake_break()

bool blender::ed::object::bake_break ( void * )
static

for exec() when there is no render job NOTE: this won't check for the escape key being pressed, but doing so isn't thread-safe.

Definition at line 165 of file object_bake_api.cc.

References G.

Referenced by bake_exec(), and bake_invoke().

◆ bake_exec()

◆ bake_freejob()

void blender::ed::object::bake_freejob ( void * bkv)
static

Definition at line 2065 of file object_bake_api.cc.

References G.

Referenced by bake_invoke().

◆ bake_image_exec()

◆ bake_init_api_data()

void blender::ed::object::bake_init_api_data ( wmOperator * op,
bContext * C,
BakeAPIRender * bkr )
static

Definition at line 1874 of file object_bake_api.cc.

References blender::ed::object::BakeAPIRender::area, BKE_screen_find_big_area(), C, blender::ed::object::BakeAPIRender::cage_extrusion, CTX_data_active_object(), CTX_data_main(), CTX_data_scene(), CTX_data_selected_objects(), CTX_data_view_layer(), CTX_wm_screen(), blender::ed::object::BakeAPIRender::custom_cage, blender::ed::object::BakeAPIRender::height, blender::ed::object::BakeAPIRender::identifier, blender::ed::object::BakeAPIRender::is_automatic_name, blender::ed::object::BakeAPIRender::is_cage, blender::ed::object::BakeAPIRender::is_clear, blender::ed::object::BakeAPIRender::is_selected_to_active, blender::ed::object::BakeAPIRender::is_split_materials, blender::ed::object::BakeAPIRender::main, blender::ed::object::BakeAPIRender::margin, blender::ed::object::BakeAPIRender::margin_type, blender::ed::object::BakeAPIRender::max_ray_distance, blender::ed::object::BakeAPIRender::normal_space, blender::ed::object::BakeAPIRender::normal_swizzle, blender::ed::object::BakeAPIRender::ob, OPERATOR_CANCELLED, blender::ed::object::BakeAPIRender::pass_filter, blender::ed::object::BakeAPIRender::pass_type, wmOperator::ptr, R_BAKE_EXTEND, R_BAKE_SAVE_EXTERNAL, R_BAKE_SAVE_INTERNAL, R_BAKE_SPACE_TANGENT, R_BAKE_TARGET_IMAGE_TEXTURES, RE_NewSceneRender(), blender::ed::object::BakeAPIRender::render, blender::ed::object::BakeAPIRender::reports, wmOperator::reports, blender::ed::object::BakeAPIRender::result, RNA_boolean_get(), RNA_enum_get(), RNA_float_get(), RNA_int_get(), RNA_property_enum_identifier(), RNA_string_get(), RNA_struct_find_property(), blender::ed::object::BakeAPIRender::save_mode, SCE_PASS_NORMAL, SCE_PASS_UV, blender::ed::object::BakeAPIRender::scene, blender::ed::object::BakeAPIRender::selected_objects, SPACE_IMAGE, blender::ed::object::BakeAPIRender::target, blender::ed::object::BakeAPIRender::uv_layer, blender::ed::object::BakeAPIRender::view_layer, and blender::ed::object::BakeAPIRender::width.

Referenced by bake_exec(), and bake_invoke().

◆ bake_invoke()

◆ bake_job_canceled()

void blender::ed::object::bake_job_canceled ( void * bkv)
static

◆ bake_job_complete()

void blender::ed::object::bake_job_complete ( void * bkv)
static

◆ bake_mesh_new_from_object()

Mesh * blender::ed::object::bake_mesh_new_from_object ( Depsgraph * depsgraph,
Object * object,
const bool preserve_origindex )
static

Definition at line 718 of file object_bake_api.cc.

References BKE_mesh_new_from_object(), blender::bke::Corner, depsgraph, and ED_mesh_split_faces().

Referenced by bake().

◆ bake_modal()

wmOperatorStatus blender::ed::object::bake_modal ( bContext * C,
wmOperator * ,
const wmEvent * event )
static

◆ bake_object_check()

◆ bake_object_image_get()

Image * blender::ed::object::bake_object_image_get ( Object & object,
const int mat_nr )
static

Definition at line 50 of file object_bake.cc.

References ED_object_get_active_image().

Referenced by bake_object_image_get_array(), and multiresbake_check().

◆ bake_object_image_get_array()

◆ bake_objects_check()

bool blender::ed::object::bake_objects_check ( Main * bmain,
const Scene * scene,
ViewLayer * view_layer,
Object * ob,
Span< PointerRNA > selected_objects,
ReportList * reports,
const bool is_selected_to_active,
const eBakeTarget target )
static

◆ bake_pass_filter_check()

◆ bake_progress_update()

void blender::ed::object::bake_progress_update ( void * bjv,
float progress )
static

◆ bake_result_add_to_rgba()

void blender::ed::object::bake_result_add_to_rgba ( float rgba[4],
const float * result,
const int channels_num )
static

Definition at line 1163 of file object_bake_api.cc.

References add_v3_v3(), add_v4_v4(), and result.

Referenced by bake_targets_output_vertex_colors().

◆ bake_set_props()

◆ bake_startjob()

◆ bake_targets_clear()

void blender::ed::object::bake_targets_clear ( Main * bmain,
const bool is_tangent )
static

Definition at line 708 of file object_bake_api.cc.

References ID_TAG_DOIT, Main::images, LISTBASE_FOREACH, and RE_bake_ibuf_clear().

Referenced by bake_exec(), and bake_startjob().

◆ bake_targets_free()

void blender::ed::object::bake_targets_free ( BakeTargets * targets)
static

◆ bake_targets_init()

◆ bake_targets_init_external()

◆ bake_targets_init_image_textures()

◆ bake_targets_init_internal()

◆ bake_targets_init_vertex_colors()

◆ bake_targets_output()

◆ bake_targets_output_external()

◆ bake_targets_output_internal()

◆ bake_targets_output_vertex_colors()

◆ bake_targets_populate_pixels()

void blender::ed::object::bake_targets_populate_pixels ( const BakeAPIRender * bkr,
BakeTargets * targets,
Object * ob,
Mesh * mesh_eval,
BakePixel * pixel_array )
static

◆ bake_targets_populate_pixels_color_attributes()

◆ bake_targets_refresh()

void blender::ed::object::bake_targets_refresh ( BakeTargets * targets)
static

◆ bake_update_image()

void blender::ed::object::bake_update_image ( ScrArea * area,
Image * image )
static

◆ base_activate()

◆ base_activate_with_mode_exit_if_needed()

◆ base_active_refresh()

void blender::ed::object::base_active_refresh ( Main * bmain,
Scene * scene,
ViewLayer * view_layer )

◆ base_deselect_all()

bool blender::ed::object::base_deselect_all ( const Scene * scene,
ViewLayer * view_layer,
View3D * v3d,
int action )

◆ base_deselect_all_ex()

bool blender::ed::object::base_deselect_all_ex ( const Scene * scene,
ViewLayer * view_layer,
View3D * v3d,
int action,
bool * r_any_visible )

◆ base_free_and_unlink()

◆ base_free_and_unlink_no_indirect_check()

void blender::ed::object::base_free_and_unlink_no_indirect_check ( Main * bmain,
Scene * scene,
Object * ob )

Remove base from a specific scene. ob must not be indirectly used.

Definition at line 2443 of file object_add.cc.

References BKE_library_ID_is_indirectly_used(), BKE_scene_collections_object_remove(), BLI_assert, DEG_id_tag_update_ex(), Object::id, and ID_RECALC_BASE_FLAGS.

Referenced by object_delete_exec().

◆ base_select()

void blender::ed::object::base_select ( Base * base,
eObjectSelect_Mode mode )

Simple API for object selection, rather than just using the flag this takes into account the 'restrict selection in 3d view' flag. deselect works always, the restriction just prevents selection

Note
Caller must send a NC_SCENE | ND_OB_SELECT notifier (or a NC_SCENE | ND_OB_VISIBLE in case of visibility toggling).

Definition at line 75 of file object_select.cc.

References BA_DESELECT, BA_INVERT, BA_SELECT, BASE_SELECTABLE, BASE_SELECTED, BKE_scene_object_base_flag_sync_from_base(), and Base::flag.

Referenced by base_deselect_all_ex(), bone_select_menu_exec(), blender::ed::transform::clear_trans_object_base_flags(), click_select_channel_object(), do_lasso_select_objects(), do_object_box_select(), blender::ed::outliner::do_outliner_item_editmode_toggle(), blender::ed::outliner::do_outliner_item_posemode_toggle(), blender::ed::outliner::do_outliner_object_select_recursive(), duplibase_for_convert(), duplicate_exec(), ED_armature_pose_select_in_wpaint_mode(), ed_object_select_pick(), ED_undo_object_editmode_restore_helper(), get_new_constraint_target(), jump_to_object(), localview_remove_from_exec(), make_local_all__instance_indirect_unused(), make_object_duplilist_real(), mesh_separate_arrays(), mesh_separate_tagged(), mouse_nla_tracks(), object_add_named_exec(), object_circle_select(), object_deselect_all_except(), object_deselect_all_visible(), object_hide_view_set_exec(), object_select_all_by_instance_collection(), object_select_all_by_library(), object_select_all_by_library_obdata(), object_select_all_by_material(), object_select_all_by_obdata(), object_select_all_by_particle(), object_select_by_type_exec(), blender::ed::outliner::object_select_fn(), object_select_menu_exec(), object_select_mirror_exec(), object_select_more_less(), object_select_random_exec(), object_select_same_collection_exec(), blender::ed::outliner::outliner_select_sync_to_object(), blender::ed::outliner::scene_drop_invoke(), select_grouped_children(), select_grouped_collection(), select_grouped_color(), select_grouped_exec(), select_grouped_index_object(), select_grouped_keyingset(), select_grouped_lighttype(), select_grouped_object_hooks(), select_grouped_parent(), select_grouped_siblings(), select_grouped_type(), select_marker_camera_switch(), and blender::ed::outliner::tree_element_object_activate().

◆ bias_tangent_normal_pixels()

void blender::ed::object::bias_tangent_normal_pixels ( float * rect,
int channels,
int width,
int height,
int stride )
static

Definition at line 194 of file object_bake_api.cc.

References BLI_assert, fabsf, x, and y.

Referenced by write_external_bake_pixels(), and write_internal_bake_pixels().

◆ build_catalog_tree()

◆ calc_active_center()

bool blender::ed::object::calc_active_center ( Object * ob,
bool select_only,
float r_center[3] )

◆ calc_active_center_for_editmode()

◆ calc_active_center_for_posemode()

bool blender::ed::object::calc_active_center_for_posemode ( Object * ob,
bool select_only,
float r_center[3] )

◆ catalog_assets_draw()

◆ check_force_modifiers()

◆ check_geometry_node_group_sockets()

bool blender::ed::object::check_geometry_node_group_sockets ( wmOperator * op,
const bNodeTree * tree )
static

◆ check_vertex_group_accessible()

bool blender::ed::object::check_vertex_group_accessible ( wmOperator * op,
Object * ob,
int def_nr )
static

◆ childof_clear_inverse_exec()

◆ childof_clear_inverse_invoke()

wmOperatorStatus blender::ed::object::childof_clear_inverse_invoke ( bContext * C,
wmOperator * op,
const wmEvent *  )
static

◆ childof_clear_inverse_poll()

◆ childof_set_inverse_exec()

◆ childof_set_inverse_invoke()

wmOperatorStatus blender::ed::object::childof_set_inverse_invoke ( bContext * C,
wmOperator * op,
const wmEvent *  )
static

◆ clear_images_poly()

void blender::ed::object::clear_images_poly ( const Span< Image * > ob_image_array,
const ClearFlag flag )
static

Definition at line 250 of file object_bake.cc.

References clear_single_image(), flag, and ID_TAG_DOIT.

Referenced by multiresbake_image_exec_locked(), and multiresbake_startjob().

◆ clear_override_library_exec()

◆ clear_single_image()

◆ collection_add_exec()

◆ collection_add_info_get_from_op()

◆ collection_create_exec()

◆ collection_drop_exec()

◆ collection_export()

◆ collection_export_all_poll()

bool blender::ed::object::collection_export_all_poll ( bContext * C)
static

Definition at line 471 of file object_collection.cc.

References C, and CTX_data_view_layer().

Referenced by WM_OT_collection_export_all().

◆ collection_export_recursive()

◆ collection_exporter_add_exec()

◆ collection_exporter_common_check()

bool blender::ed::object::collection_exporter_common_check ( const Collection * collection)
static

◆ collection_exporter_export()

◆ collection_exporter_export_exec()

wmOperatorStatus blender::ed::object::collection_exporter_export_exec ( bContext * C,
wmOperator * op )
static

◆ collection_exporter_menu_draw()

void blender::ed::object::collection_exporter_menu_draw ( const bContext * ,
Menu * menu )
static

◆ collection_exporter_move_exec()

◆ collection_exporter_poll()

bool blender::ed::object::collection_exporter_poll ( bContext * C)
static

◆ collection_exporter_register()

◆ collection_exporter_remove_exec()

◆ collection_exporter_remove_invoke()

wmOperatorStatus blender::ed::object::collection_exporter_remove_invoke ( bContext * C,
wmOperator * op,
const wmEvent *  )
static

Definition at line 546 of file object_collection.cc.

References ALERT_ICON_NONE, C, IFACE_, and WM_operator_confirm_ex().

Referenced by COLLECTION_OT_exporter_remove().

◆ collection_exporter_remove_poll()

bool blender::ed::object::collection_exporter_remove_poll ( bContext * C)
static

◆ collection_hide_menu_draw()

◆ collection_instance_add_exec()

◆ collection_io_export_all_exec()

◆ collection_link_exec()

◆ collection_object_active_find_index()

Collection * blender::ed::object::collection_object_active_find_index ( Main * bmain,
Scene * scene,
Object * ob,
const int collection_object_index )
static

◆ collection_object_active_itemf()

◆ collection_objects_remove_all_exec()

◆ collection_objects_remove_exec()

◆ COLLECTION_OT_create()

void blender::ed::object::COLLECTION_OT_create ( wmOperatorType * ot)

◆ COLLECTION_OT_export_all()

void blender::ed::object::COLLECTION_OT_export_all ( wmOperatorType * ot)
static

◆ COLLECTION_OT_exporter_add()

void blender::ed::object::COLLECTION_OT_exporter_add ( wmOperatorType * ot)
static

◆ COLLECTION_OT_exporter_export()

void blender::ed::object::COLLECTION_OT_exporter_export ( wmOperatorType * ot)
static

◆ COLLECTION_OT_exporter_move()

void blender::ed::object::COLLECTION_OT_exporter_move ( wmOperatorType * ot)
static

◆ COLLECTION_OT_exporter_remove()

void blender::ed::object::COLLECTION_OT_exporter_remove ( wmOperatorType * ot)
static

◆ COLLECTION_OT_objects_add_active()

◆ COLLECTION_OT_objects_remove()

◆ COLLECTION_OT_objects_remove_active()

◆ COLLECTION_OT_objects_remove_all()

void blender::ed::object::COLLECTION_OT_objects_remove_all ( wmOperatorType * ot)

◆ collection_remove_exec()

◆ collection_unlink_exec()

◆ collection_unlink_poll()

◆ constraint_active_get()

bConstraint * blender::ed::object::constraint_active_get ( Object * ob)

Single constraint.

Definition at line 151 of file object_constraint.cc.

References BKE_constraints_active_get(), and constraint_active_list().

◆ constraint_active_list()

ListBase * blender::ed::object::constraint_active_list ( Object * ob)

If object is in pose-mode, return active bone constraints, else object constraints. No constraints are returned for a bone on an inactive bone-layer.

Definition at line 81 of file object_constraint.cc.

References BKE_pose_channel_active_if_bonecoll_visible(), bPoseChannel::constraints, Object::constraints, Object::mode, and OB_MODE_POSE.

Referenced by constraint_active_get(), pose_constraint_add_exec(), and pose_ik_add_exec().

◆ constraint_active_set()

void blender::ed::object::constraint_active_set ( Object * ob,
bConstraint * con )

◆ constraint_add_exec()

◆ constraint_apply_exec()

◆ constraint_apply_invoke()

wmOperatorStatus blender::ed::object::constraint_apply_invoke ( bContext * C,
wmOperator * op,
const wmEvent * event )
static

◆ constraint_copy_exec()

◆ constraint_copy_for_object()

◆ constraint_copy_for_pose()

◆ constraint_copy_invoke()

wmOperatorStatus blender::ed::object::constraint_copy_invoke ( bContext * C,
wmOperator * op,
const wmEvent * event )
static

◆ constraint_copy_to_selected_exec()

◆ constraint_copy_to_selected_invoke()

wmOperatorStatus blender::ed::object::constraint_copy_to_selected_invoke ( bContext * C,
wmOperator * op,
const wmEvent * event )
static

◆ constraint_copy_to_selected_poll()

bool blender::ed::object::constraint_copy_to_selected_poll ( bContext * C)
static

NOTE: Can not return here, because CTX_DATA_BEGIN_WITH_ID allocated a list that needs to be freed by CTX_DATA_END.

NOTE: Can not return here, because CTX_DATA_BEGIN allocated a list that needs to be freed by CTX_DATA_END.

Definition at line 1754 of file object_constraint.cc.

References C, constraint_list_from_constraint(), context_active_object(), CTX_DATA_BEGIN, CTX_DATA_BEGIN_WITH_ID, CTX_DATA_END, CTX_data_pointer_get_type(), CTX_wm_operator_poll_msg_set(), ptr, and UNUSED_VARS.

Referenced by CONSTRAINT_OT_copy_to_selected().

◆ constraint_delete_exec()

◆ constraint_delete_invoke()

wmOperatorStatus blender::ed::object::constraint_delete_invoke ( bContext * C,
wmOperator * op,
const wmEvent * event )
static

◆ constraint_dependency_tag_update()

void blender::ed::object::constraint_dependency_tag_update ( Main * bmain,
Object * ob,
bConstraint * con )

◆ constraint_dependency_update()

void blender::ed::object::constraint_dependency_update ( Main * bmain,
Object * ob )

◆ constraint_link()

void blender::ed::object::constraint_link ( Main * bmain,
Object * ob_dst,
ListBase * dst,
ListBase * src )

◆ constraint_list_from_constraint()

ListBase * blender::ed::object::constraint_list_from_constraint ( Object * ob,
bConstraint * con,
bPoseChannel ** r_pchan )

◆ constraint_move_down_exec()

◆ constraint_move_down_invoke()

wmOperatorStatus blender::ed::object::constraint_move_down_invoke ( bContext * C,
wmOperator * op,
const wmEvent * event )
static

◆ constraint_move_to_index()

◆ constraint_move_to_index_exec()

◆ constraint_move_to_index_invoke()

wmOperatorStatus blender::ed::object::constraint_move_to_index_invoke ( bContext * C,
wmOperator * op,
const wmEvent * event )
static

◆ constraint_move_up_exec()

◆ constraint_move_up_invoke()

wmOperatorStatus blender::ed::object::constraint_move_up_invoke ( bContext * C,
wmOperator * op,
const wmEvent * event )
static

◆ CONSTRAINT_OT_apply()

◆ CONSTRAINT_OT_childof_clear_inverse()

void blender::ed::object::CONSTRAINT_OT_childof_clear_inverse ( wmOperatorType * ot)

◆ CONSTRAINT_OT_childof_set_inverse()

void blender::ed::object::CONSTRAINT_OT_childof_set_inverse ( wmOperatorType * ot)

◆ CONSTRAINT_OT_copy()

◆ CONSTRAINT_OT_copy_to_selected()

◆ CONSTRAINT_OT_delete()

◆ CONSTRAINT_OT_followpath_path_animate()

void blender::ed::object::CONSTRAINT_OT_followpath_path_animate ( wmOperatorType * ot)

◆ CONSTRAINT_OT_limitdistance_reset()

void blender::ed::object::CONSTRAINT_OT_limitdistance_reset ( wmOperatorType * ot)

◆ CONSTRAINT_OT_move_down()

void blender::ed::object::CONSTRAINT_OT_move_down ( wmOperatorType * ot)

◆ CONSTRAINT_OT_move_to_index()

◆ CONSTRAINT_OT_move_up()

void blender::ed::object::CONSTRAINT_OT_move_up ( wmOperatorType * ot)

◆ CONSTRAINT_OT_objectsolver_clear_inverse()

void blender::ed::object::CONSTRAINT_OT_objectsolver_clear_inverse ( wmOperatorType * ot)

◆ CONSTRAINT_OT_objectsolver_set_inverse()

void blender::ed::object::CONSTRAINT_OT_objectsolver_set_inverse ( wmOperatorType * ot)

◆ CONSTRAINT_OT_stretchto_reset()

void blender::ed::object::CONSTRAINT_OT_stretchto_reset ( wmOperatorType * ot)

◆ constraint_tag_update()

◆ constraint_type_get()

int blender::ed::object::constraint_type_get ( Object * owner,
bPoseChannel * pchan )
static

◆ constraint_update()

◆ context_active_object()

Object * blender::ed::object::context_active_object ( const bContext * C)

Find the correct active object per context (context.object or context.active_object)

Note
context can be NULL when called from a enum with PROP_ENUM_NO_CONTEXT.

Definition at line 152 of file object_edit.cc.

References C, context_object(), and CTX_data_active_object().

Referenced by armature_bone_select_poll(), blender::ed::object::bake_simulation::bake_simulation_poll(), bone_collection_assign_exec(), bone_collection_assign_poll(), bone_collection_select(), bone_collection_unassign_exec(), bone_collection_unassign_named_exec(), childof_clear_inverse_exec(), childof_set_inverse_exec(), constraint_apply_exec(), constraint_copy_exec(), constraint_copy_to_selected_exec(), constraint_copy_to_selected_poll(), constraint_delete_exec(), constraint_move_down_exec(), constraint_move_to_index_exec(), constraint_move_up_exec(), constraint_ops_extra_draw(), copy_particle_systems_exec(), copy_particle_systems_poll(), correctivesmooth_bind_exec(), blender::ed::curves::convert_from_particle_system::curves_convert_from_particle_system_exec(), blender::ed::curves::convert_from_particle_system::curves_convert_from_particle_system_poll(), dash_modifier_segment_add_exec(), dash_modifier_segment_move_exec(), dash_modifier_segment_remove_exec(), data_transfer_exec(), data_transfer_poll(), datalayout_transfer_exec(), dt_layers_select_src_itemf(), duplicate_particle_systems_exec(), duplicate_particle_systems_poll(), dynamicpaint_bake_exec(), ED_armature_context(), ED_mesh_context(), ED_operator_object_active(), ED_operator_object_active_editable(), ED_operator_object_active_editable_font(), ED_operator_object_active_editable_mesh(), ED_operator_object_active_local_editable(), ED_operator_object_active_local_editable_posemode_exclusive(), ED_operator_object_active_only(), ED_operator_outliner_active_no_editobject(), ED_operator_posemode_exclusive(), ED_pose_object_from_context(), edit_constraint_invoke_properties(), edit_constraint_poll_generic(), edit_modifier_poll_generic(), edit_shaderfx_poll_generic(), explode_refresh_exec(), fluid_free_exec(), fluid_initjob(), fluid_pause_exec(), followpath_path_animate_exec(), geometry_node_tree_copy_assign_exec(), geometry_nodes_input_attribute_toggle_exec(), get_new_constraint_target(), gpencil_shaderfx_ops_extra_draw(), laplaciandeform_bind_exec(), light_linking_collection_new_exec(), light_linking_link_exec(), light_linking_select_exec(), limitdistance_reset_exec(), make_links_data_exec(), make_override_library_invoke(), mesh_reorder_vertices_spatial_exec(), mesh_reorder_vertices_spatial_poll(), meshdeform_bind_exec(), modifier_add_itemf(), modifier_apply_invoke(), modifier_apply_poll(), modifier_convert_exec(), modifier_copy_to_selected_exec(), modifier_copy_to_selected_poll(), modifier_get_edit_objects(), modifier_move_down_exec(), modifier_move_up_exec(), modifier_ops_extra_draw(), modifier_set_active_exec(), modifier_ui_poll(), modifiers_clear_poll(), modifiers_copy_to_selected_poll(), multires_base_apply_exec(), multires_external_pack_exec(), multires_external_save_exec(), multires_external_save_invoke(), multires_higher_levels_delete_exec(), multires_rebuild_subdiv_exec(), multires_reshape_exec(), multires_subdivide_exec(), multires_unsubdivide_exec(), object_camera_custom_update_exec(), object_camera_custom_update_poll(), object_constraint_add_exec(), object_constraint_copy_exec(), object_modifiers_copy_exec(), object_transform_apply_invoke(), object_update_paths_poll(), objectsolver_clear_inverse_exec(), objectsolver_set_inverse_exec(), ocean_bake_exec(), operator_rigidbody_active_poll(), operator_rigidbody_add_poll(), operator_rigidbody_con_active_poll(), output_toggle_exec(), parent_noinv_set_exec(), parent_set_exec(), parent_set_invoke_menu(), pose_constraint_add_exec(), proj_paint_add_slot(), remove_all_particle_systems_poll(), rigidbody_object_add_exec(), rigidbody_object_remove_exec(), root_catalogs_draw(), shaderfx_add_exec(), shaderfx_add_itemf(), shaderfx_copy_exec(), shaderfx_move_down_exec(), shaderfx_move_to_index_exec(), shaderfx_move_up_exec(), shaderfx_remove_exec(), shaderfx_ui_poll(), stretchto_reset_exec(), surface_slot_add_exec(), surface_slot_remove_exec(), surfacedeform_bind_exec(), texture_paint_add_texture_paint_slot_invoke(), texture_paint_add_texture_paint_slot_ui(), time_modifier_segment_add_exec(), time_modifier_segment_move_exec(), time_modifier_segment_remove_exec(), track_set_exec(), type_toggle_exec(), uiTemplateConstraints(), uiTemplateModifiers(), and uiTemplateShaderFx().

◆ context_object()

Object * blender::ed::object::context_object ( const bContext * C)

context.object

Definition at line 147 of file object_edit.cc.

References C, CTX_data_pointer_get_type(), and PointerRNA::data.

Referenced by blender::nodes::add_attribute_search_button(), blender::nodes::add_layer_name_search_button(), add_or_move_to_collection_exec(), armature_bone_select_poll(), bone_collection_create_and_assign_exec(), bone_collection_create_and_assign_poll(), collection_add_exec(), collection_link_exec(), collection_object_active_itemf(), collection_objects_remove_exec(), collection_remove_exec(), connect_hair_exec(), context_active_object(), disconnect_hair_exec(), blender::ed::geometry::geometry_attribute_add_exec(), blender::ed::geometry::geometry_attribute_convert_exec(), blender::ed::geometry::geometry_attribute_convert_invoke(), blender::ed::geometry::geometry_attribute_convert_mode_itemf(), blender::ed::geometry::geometry_attribute_convert_poll(), blender::ed::geometry::geometry_attribute_convert_ui(), blender::ed::geometry::geometry_attribute_domain_itemf(), blender::ed::geometry::geometry_attribute_remove_exec(), blender::ed::geometry::geometry_attributes_poll(), blender::ed::geometry::geometry_attributes_remove_poll(), blender::ed::geometry::geometry_color_attribute_add_exec(), blender::ed::geometry::geometry_color_attribute_convert_exec(), blender::ed::geometry::geometry_color_attribute_convert_invoke(), blender::ed::geometry::geometry_color_attribute_convert_poll(), blender::ed::geometry::geometry_color_attribute_duplicate_exec(), blender::ed::geometry::geometry_color_attribute_remove_exec(), blender::ed::geometry::geometry_color_attribute_set_render_exec(), blender::ed::geometry::geometry_color_attributes_duplicate_poll(), blender::ed::geometry::geometry_color_attributes_remove_poll(), layers_poll(), material_slot_add_exec(), material_slot_copy_exec(), material_slot_move_exec(), material_slot_remove_exec(), material_slot_remove_poll(), mesh_customdata_mask_clear_exec(), mesh_customdata_mask_clear_poll(), mesh_customdata_skin_add_exec(), mesh_customdata_skin_state(), mesh_uv_texture_add_exec(), mesh_uv_texture_remove_exec(), move_to_collection_menu_create(), move_to_collection_poll(), object_materials_supported_poll(), objects_add_active_exec(), particle_system_add_exec(), particle_system_remove_all_exec(), particle_system_remove_exec(), set_active_group_exec(), shape_key_add_exec(), shape_key_clear_exec(), shape_key_copy_exec(), shape_key_exists_poll(), shape_key_make_basis_poll(), shape_key_mirror_exec(), shape_key_mode_exists_poll(), shape_key_mode_poll(), shape_key_move_exec(), shape_key_move_poll(), shape_key_poll(), shape_key_remove_exec(), shape_key_retime_exec(), uv_texture_remove_poll(), vertex_group_add_exec(), vertex_group_assign_exec(), vertex_group_assign_new_exec(), vertex_group_copy_exec(), vertex_group_copy_to_selected_exec(), vertex_group_deselect_exec(), vertex_group_invert_exec(), vertex_group_levels_exec(), vertex_group_lock_exec(), vertex_group_mirror_exec(), vertex_group_normalize_all_exec(), vertex_group_normalize_exec(), vertex_group_poll(), vertex_group_poll_edit(), vertex_group_quantize_exec(), vertex_group_remove_exec(), vertex_group_remove_from_exec(), vertex_group_select_exec(), vertex_group_sort_exec(), vertex_group_supported_poll(), vertex_group_vert_poll_ex(), vertex_group_vert_select_mesh_poll(), vertex_group_vert_select_unlocked_poll(), vertex_weight_copy_exec(), vertex_weight_delete_exec(), vertex_weight_normalize_active_vertex_exec(), vertex_weight_paste_exec(), vertex_weight_set_active_exec(), vgroup_itemf(), vgroup_move_exec(), and vgroup_selection_itemf_helper().

◆ convert_curves()

Object * blender::ed::object::convert_curves ( Base & base,
const ObjectType target,
ObjectConversionInfo & info,
Base ** r_new_base )
static

◆ convert_curves_component_to_curves()

◆ convert_curves_legacy()

Object * blender::ed::object::convert_curves_legacy ( Base & base,
const ObjectType target,
ObjectConversionInfo & info,
Base ** r_new_base )
static

◆ convert_curves_legacy_to_curves()

Object * blender::ed::object::convert_curves_legacy_to_curves ( Base & base,
ObjectConversionInfo & info,
Base ** r_new_base )
static

◆ convert_curves_legacy_to_grease_pencil()

◆ convert_curves_legacy_to_mesh()

◆ convert_curves_to_grease_pencil()

◆ convert_curves_to_mesh()

◆ convert_float_color_to_byte_color()

void blender::ed::object::convert_float_color_to_byte_color ( const MPropCol * float_colors,
const int num,
const bool is_noncolor,
MLoopCol * byte_colors )
static

◆ convert_font()

Object * blender::ed::object::convert_font ( Base & base,
const short target,
ObjectConversionInfo & info,
Base ** r_new_base )
static

◆ convert_font_to_curve_legacy_generic()

◆ convert_font_to_curves()

◆ convert_font_to_curves_legacy()

Object * blender::ed::object::convert_font_to_curves_legacy ( Base & base,
ObjectConversionInfo & info,
Base ** r_new_base )
static

◆ convert_font_to_grease_pencil()

◆ convert_font_to_mesh()

◆ convert_grease_pencil()

Object * blender::ed::object::convert_grease_pencil ( Base & base,
const ObjectType target,
ObjectConversionInfo & info,
Base ** r_new_base )
static

◆ convert_grease_pencil_component_to_curves()

◆ convert_grease_pencil_to_mesh()

◆ convert_mball()

Object * blender::ed::object::convert_mball ( Base & base,
const ObjectType target,
ObjectConversionInfo & info,
bool & r_mball_converted,
Base ** r_new_base,
Base ** r_act_base )
static

Definition at line 4188 of file object_add.cc.

References convert_mball(), convert_mball_to_mesh(), and OB_MESH.

Referenced by convert_mball(), and object_convert_exec().

◆ convert_mball_to_mesh()

◆ convert_mesh()

◆ convert_mesh_to_curves()

Object * blender::ed::object::convert_mesh_to_curves ( Base & base,
ObjectConversionInfo & info,
Base ** r_new_base )
static

◆ convert_mesh_to_curves_legacy()

◆ convert_mesh_to_grease_pencil()

◆ convert_mesh_to_mesh()

◆ convert_mesh_to_pointcloud()

◆ convert_pointcloud()

Object * blender::ed::object::convert_pointcloud ( Base & base,
const ObjectType target,
ObjectConversionInfo & info,
Base ** r_new_base )
static

◆ convert_pointcloud_to_mesh()

◆ convert_psys_to_mesh()

◆ convert_target_itemf()

const EnumPropertyItem * blender::ed::object::convert_target_itemf ( bContext * C,
PointerRNA * ,
PropertyRNA * ,
bool * r_free )
static

◆ copy_materials_to_new_geometry_object()

void blender::ed::object::copy_materials_to_new_geometry_object ( const Object & src_ob_eval,
const ID & src_data_eval,
Object & dst_ob_orig,
ID & dst_data_orig )
static

◆ copy_object_set_idnew()

◆ copy_transformed_radii()

void blender::ed::object::copy_transformed_radii ( const Span< float > src,
const float4x4 & transform,
MutableSpan< float > dst )
static

◆ correctivesmooth_bind_exec()

◆ correctivesmooth_bind_invoke()

wmOperatorStatus blender::ed::object::correctivesmooth_bind_invoke ( bContext * C,
wmOperator * op,
const wmEvent *  )
static

◆ correctivesmooth_poll()

bool blender::ed::object::correctivesmooth_poll ( bContext * C)
static

Definition at line 2921 of file object_modifier.cc.

References C, and edit_modifier_poll_generic().

Referenced by OBJECT_OT_correctivesmooth_bind().

◆ create_applied_mesh_for_modifier()

Mesh * blender::ed::object::create_applied_mesh_for_modifier ( Depsgraph * depsgraph,
Scene * scene,
Object * ob_eval,
ModifierData * md_eval,
const bool use_virtual_modifiers,
const bool build_shapekey_layers,
ReportList * reports )
static

◆ dash_modifier_segment_add_exec()

◆ dash_modifier_segment_add_invoke()

wmOperatorStatus blender::ed::object::dash_modifier_segment_add_invoke ( bContext * C,
wmOperator * op,
const wmEvent *  )
static

◆ dash_modifier_segment_free()

void blender::ed::object::dash_modifier_segment_free ( GreasePencilDashModifierSegment * )
static

Definition at line 3687 of file object_modifier.cc.

Referenced by dash_modifier_segment_remove_exec().

◆ dash_modifier_segment_move_exec()

◆ dash_modifier_segment_move_invoke()

wmOperatorStatus blender::ed::object::dash_modifier_segment_move_invoke ( bContext * C,
wmOperator * op,
const wmEvent *  )
static

◆ dash_modifier_segment_poll()

◆ dash_modifier_segment_remove_exec()

◆ dash_modifier_segment_remove_invoke()

wmOperatorStatus blender::ed::object::dash_modifier_segment_remove_invoke ( bContext * C,
wmOperator * op,
const wmEvent *  )
static

◆ data_transfer_check()

◆ data_transfer_exec()

◆ data_transfer_exec_is_object_valid()

bool blender::ed::object::data_transfer_exec_is_object_valid ( wmOperator * op,
Object * ob_src,
Object * ob_dst,
const bool reverse_transfer )
static

◆ data_transfer_exec_preprocess_objects()

void blender::ed::object::data_transfer_exec_preprocess_objects ( bContext * C,
wmOperator * op,
Object * ob_src,
Vector< PointerRNA > * ctx_objects,
const bool reverse_transfer )
static

◆ data_transfer_get_description()

std::string blender::ed::object::data_transfer_get_description ( bContext * ,
wmOperatorType * ,
PointerRNA * ptr )
static

Definition at line 641 of file object_data_transfer.cc.

References ptr, RNA_boolean_get(), and TIP_.

Referenced by OBJECT_OT_data_transfer().

◆ data_transfer_poll()

bool blender::ed::object::data_transfer_poll ( bContext * C)
static

◆ data_transfer_poll_property()

◆ data_xform_by_mat4()

◆ data_xform_container_create()

◆ data_xform_container_destroy()

◆ data_xform_container_item_ensure()

◆ data_xform_container_update_all()

◆ data_xform_create()

std::unique_ptr< XFormObjectData > blender::ed::object::data_xform_create ( ID * id)

Definition at line 502 of file object_data_transform.cc.

References data_xform_create_ex().

Referenced by data_xform_container_item_ensure().

◆ data_xform_create_ex()

◆ data_xform_create_from_edit_mode()

std::unique_ptr< XFormObjectData > blender::ed::object::data_xform_create_from_edit_mode ( ID * id)

Definition at line 507 of file object_data_transform.cc.

References data_xform_create_ex().

Referenced by op_generic_value_invoke().

◆ data_xform_restore()

◆ data_xform_tag_update()

◆ datalayout_transfer_exec()

◆ datalayout_transfer_invoke()

wmOperatorStatus blender::ed::object::datalayout_transfer_invoke ( bContext * C,
wmOperator * op,
const wmEvent * event )
static

◆ datalayout_transfer_poll()

bool blender::ed::object::datalayout_transfer_poll ( bContext * C)
static

◆ drop_geometry_nodes_invoke()

◆ drop_geometry_nodes_tooltip()

std::string blender::ed::object::drop_geometry_nodes_tooltip ( bContext * C,
PointerRNA * properties,
const int mval[2] )

◆ drop_named_material_invoke()

◆ drop_named_material_tooltip()

std::string blender::ed::object::drop_named_material_tooltip ( bContext * C,
const char * name,
const int mval[2] )

◆ dt_add_vcol_layers()

void blender::ed::object::dt_add_vcol_layers ( const CustomData * cdata,
eCustomDataMask mask,
EnumPropertyItem ** r_item,
int * r_totitem )
static

◆ dt_layers_select_dst_itemf()

◆ dt_layers_select_itemf()

const EnumPropertyItem * blender::ed::object::dt_layers_select_itemf ( bContext * C,
PointerRNA * ptr,
PropertyRNA * prop,
bool * r_free )
static

◆ dt_layers_select_src_itemf()

◆ dt_mix_mode_itemf()

◆ duplibase_for_convert()

◆ duplicate_exec()

◆ dupliobject_cmp()

bool blender::ed::object::dupliobject_cmp ( const void * a_,
const void * b_ )
static

Compare function that matches dupliobject_hash.

Definition at line 2671 of file object_add.cc.

References b, i, MAX_DUPLI_RECUR, DupliObject::ob, OB_DUPLICOLLECTION, DupliObject::persistent_id, and DupliObject::type.

Referenced by make_object_duplilist_real().

◆ dupliobject_hash()

uint blender::ed::object::dupliobject_hash ( const void * ptr)
static
Note
regarding hashing dupli-objects which come from OB_DUPLICOLLECTION, skip the first member of DupliObject.persistent_id since its a unique index and we only want to know if the group objects are from the same dupli-group instance.
regarding hashing dupli-objects which come from non-OB_DUPLICOLLECTION, include the first member of DupliObject.persistent_id since its the index of the vertex/face the object is instantiated on and we want to identify objects on the same vertex/face. In other words, we consider each group of objects from a same item as being the 'local group' where to check for parents.

Definition at line 2636 of file object_add.cc.

References BLI_ghashutil_ptrhash(), hash, i, MAX_DUPLI_RECUR, DupliObject::ob, OB_DUPLICOLLECTION, DupliObject::persistent_id, ptr, and DupliObject::type.

Referenced by make_object_duplilist_real().

◆ dupliobject_instancer_cmp()

bool blender::ed::object::dupliobject_instancer_cmp ( const void * a_,
const void * b_ )
static

Definition at line 2705 of file object_add.cc.

References b, i, MAX_DUPLI_RECUR, and DupliObject::persistent_id.

Referenced by make_object_duplilist_real().

◆ dupliobject_instancer_hash()

uint blender::ed::object::dupliobject_instancer_hash ( const void * ptr)
static
Note
regarding hashing dupli-objects when using OB_DUPLICOLLECTION, skip the first member of DupliObject.persistent_id since its a unique index and we only want to know if the group objects are from the same dupli-group instance.

Definition at line 2658 of file object_add.cc.

References BLI_ghashutil_inthash, hash, i, MAX_DUPLI_RECUR, DupliObject::persistent_id, and ptr.

Referenced by make_object_duplilist_real().

◆ dvert_mirror_op()

void blender::ed::object::dvert_mirror_op ( MDeformVert * dvert,
MDeformVert * dvert_mirr,
const char sel,
const char sel_mirr,
const int * flip_map,
const int flip_map_len,
const bool mirror_weights,
const bool flip_vgroups,
const bool all_vgroups,
const int act_vgroup )
static

◆ ed_object_mode_generic_exit_ex()

◆ ed_object_posemode_set_for_weight_paint_ex()

void blender::ed::object::ed_object_posemode_set_for_weight_paint_ex ( bContext * C,
Main * bmain,
Object * ob_arm,
const bool is_mode_set )
static

◆ edit_armature_coords_and_quats_apply()

void blender::ed::object::edit_armature_coords_and_quats_apply ( bArmature * arm,
const Span< ElemData_Armature > elem_array )
static

◆ edit_armature_coords_and_quats_apply_with_mat4()

void blender::ed::object::edit_armature_coords_and_quats_apply_with_mat4 ( bArmature * arm,
const Span< ElemData_Armature > elem_array,
const float4x4 & transform )
static

◆ edit_armature_coords_and_quats_get()

void blender::ed::object::edit_armature_coords_and_quats_get ( const bArmature * arm,
MutableSpan< ElemData_Armature > elem_array )
static

◆ edit_constraint_invoke_properties()

◆ edit_constraint_liboverride_allowed_poll()

bool blender::ed::object::edit_constraint_liboverride_allowed_poll ( bContext * C)
static

◆ edit_constraint_poll()

◆ edit_constraint_poll_generic()

bool blender::ed::object::edit_constraint_poll_generic ( bContext * C,
StructRNA * rna_type,
const bool is_liboverride_allowed )
static

◆ edit_constraint_properties()

◆ edit_constraint_property_get()

◆ edit_constraint_report_property()

void blender::ed::object::edit_constraint_report_property ( wmOperatorType * ot)
static

◆ edit_modifier_invoke_properties()

◆ edit_modifier_invoke_properties_with_hover()

bool blender::ed::object::edit_modifier_invoke_properties_with_hover ( bContext * C,
wmOperator * op,
const wmEvent * event,
wmOperatorStatus * r_retval )
static

◆ edit_modifier_liboverride_allowed_poll()

bool blender::ed::object::edit_modifier_liboverride_allowed_poll ( bContext * C)
static

Definition at line 1578 of file object_modifier.cc.

References C, and edit_modifier_poll_generic().

Referenced by OBJECT_OT_modifier_copy().

◆ edit_modifier_poll()

bool blender::ed::object::edit_modifier_poll ( bContext * C)
static

◆ edit_modifier_poll_generic()

◆ edit_modifier_properties()

◆ edit_modifier_property_get()

◆ edit_modifier_report_property()

void blender::ed::object::edit_modifier_report_property ( wmOperatorType * ot)
static

◆ edit_shaderfx_invoke_properties()

bool blender::ed::object::edit_shaderfx_invoke_properties ( bContext * C,
wmOperator * op,
const wmEvent * event,
wmOperatorStatus * r_retval )
static
Parameters
eventIf this isn't nullptr, the operator will also look for panels underneath the cursor with custom-data set to a modifier.
r_retvalThis should be used if #event is used in order to return OPERATOR_PASS_THROUGH to check other operators with the same key set.

Definition at line 410 of file object_shader_fx.cc.

References BLI_assert, C, CTX_data_pointer_get_type(), PointerRNA::data, ShaderFxData::name, OPERATOR_CANCELLED, OPERATOR_PASS_THROUGH, wmOperator::ptr, RNA_pointer_is_null(), RNA_string_set(), RNA_struct_is_a(), RNA_struct_property_is_set(), PointerRNA::type, and UI_region_panel_custom_data_under_cursor().

Referenced by shaderfx_copy_invoke(), shaderfx_move_down_invoke(), shaderfx_move_to_index_invoke(), shaderfx_move_up_invoke(), and shaderfx_remove_invoke().

◆ edit_shaderfx_poll()

◆ edit_shaderfx_poll_generic()

bool blender::ed::object::edit_shaderfx_poll_generic ( bContext * C,
StructRNA * rna_type,
int obtype_flag,
const bool is_liboverride_allowed )
static

◆ edit_shaderfx_properties()

◆ edit_shaderfx_property_get()

ShaderFxData * blender::ed::object::edit_shaderfx_property_get ( wmOperator * op,
Object * ob,
int type )
static

◆ edit_shaderfx_report_property()

void blender::ed::object::edit_shaderfx_report_property ( wmOperatorType * ot)
static

◆ editmode_enter()

bool blender::ed::object::editmode_enter ( bContext * C,
int flag )

◆ editmode_enter_ex()

bool blender::ed::object::editmode_enter_ex ( Main * bmain,
Scene * scene,
Object * ob,
int flag )

Definition at line 851 of file object_edit.cc.

References BKE_editlattice_make(), BKE_editmesh_from_object(), BKE_editmesh_looptris_and_normals_calc(), BKE_object_is_in_editmode(), BKE_object_obdata_is_libdata(), CLOG_WARN, Object::data, DEG_id_tag_update(), ED_armature_to_edit(), ED_curve_editfont_make(), ED_curve_editnurb_make(), ED_mball_editmball_make(), EDBM_mesh_make(), ELEM, EM_NO_CONTEXT, blender::ed::greasepencil::ensure_selection_domain(), flag, flush_pose_selection_to_bone(), Object::id, ID_IS_EDITABLE, ID_IS_OVERRIDE_LIBRARY, ID_RECALC_ANIMATION, ID_RECALC_GEOMETRY, ID_RECALC_TRANSFORM, Main::is_memfile_undo_written, LIKELY, LOG, mesh_needs_keyindex(), Object::mode, ID::name, NC_SCENE, ND_MODE, bArmature::needs_flush_to_id, MetaBall::needs_flush_to_id, NS_EDITMODE_ARMATURE, NS_EDITMODE_CURVE, NS_EDITMODE_CURVES, NS_EDITMODE_GREASE_PENCIL, NS_EDITMODE_LATTICE, NS_EDITMODE_MBALL, NS_EDITMODE_MESH, NS_EDITMODE_POINTCLOUD, NS_EDITMODE_TEXT, NS_MODE_OBJECT, OB_ARMATURE, OB_CURVES, OB_CURVES_LEGACY, OB_FONT, OB_GREASE_PENCIL, OB_LATTICE, OB_MBALL, OB_MESH, OB_MODE_EDIT, OB_POINTCLOUD, OB_SURF, Object::pose, Object::restore_mode, ToolSettings::selectmode, Scene::toolsettings, Object::type, and WM_main_add_notifier().

Referenced by add_type_with_obdata(), blender::ed::outliner::do_outliner_item_editmode_toggle(), ED_editors_init(), ED_undo_object_editmode_restore_helper(), editmode_enter(), editmode_toggle_exec(), effector_add_exec(), make_prim_init(), and object_armature_add_exec().

◆ editmode_exit()

bool blender::ed::object::editmode_exit ( bContext * C,
int flag )

◆ editmode_exit_ex()

◆ editmode_exit_multi()

bool blender::ed::object::editmode_exit_multi ( bContext * C,
int flag )

◆ editmode_exit_multi_ex()

bool blender::ed::object::editmode_exit_multi_ex ( Main * bmain,
Scene * scene,
ViewLayer * view_layer,
int flag )

◆ editmode_free_ex()

bool blender::ed::object::editmode_free_ex ( Main * bmain,
Object * obedit )

Support freeing edit-mode data without flushing it back to the object.

Returns
true if data was freed.

Definition at line 818 of file object_edit.cc.

References editmode_load_free_ex().

Referenced by ED_editors_exit().

◆ editmode_load()

bool blender::ed::object::editmode_load ( Main * bmain,
Object * obedit )

◆ editmode_load_free_ex()

◆ editmode_toggle_exec()

◆ editmode_toggle_poll()

◆ effector_add_exec()

◆ explode_poll()

bool blender::ed::object::explode_poll ( bContext * C)
static

Definition at line 3080 of file object_modifier.cc.

References C, and edit_modifier_poll_generic().

Referenced by OBJECT_OT_explode_refresh().

◆ explode_refresh_exec()

◆ explode_refresh_invoke()

wmOperatorStatus blender::ed::object::explode_refresh_invoke ( bContext * C,
wmOperator * op,
const wmEvent *  )
static

◆ find_collections_containing_object()

◆ find_first_by_data_id()

Base * blender::ed::object::find_first_by_data_id ( const Scene * scene,
ViewLayer * view_layer,
ID * id )

If id is not already an Object, try to find an object that uses it as data. Prefers active, then selected, then visible/selectable.

Definition at line 213 of file object_select.cc.

References BASE_SELECTED, BKE_view_layer_active_base_get(), BKE_view_layer_object_bases_get(), BKE_view_layer_synced_ensure(), BLI_assert, Object::data, get_base_select_priority(), GS, LISTBASE_FOREACH, ID::name, OB_DATA_SUPPORT_ID, and Base::object.

Referenced by jump_to_target_ptr().

◆ find_original_loop()

int blender::ed::object::find_original_loop ( const OffsetIndices< int > orig_faces,
const Span< int > orig_corner_verts,
const int * vert_origindex,
const int * poly_origindex,
const int poly_eval,
const int vert_eval )
static

◆ flush_bone_selection_to_pose()

void blender::ed::object::flush_bone_selection_to_pose ( Object & ob)
static

◆ flush_pose_selection_to_bone()

void blender::ed::object::flush_pose_selection_to_bone ( Object & ob)
static

◆ followpath_path_animate_exec()

◆ followpath_path_animate_invoke()

wmOperatorStatus blender::ed::object::followpath_path_animate_invoke ( bContext * C,
wmOperator * op,
const wmEvent *  )
static

◆ force_evaluation_if_constraint_disabled()

void blender::ed::object::force_evaluation_if_constraint_disabled ( bContext * C,
Object * ob,
bConstraint * con )
static

◆ forcefield_toggle_exec()

◆ geometry_node_tree_copy_assign_exec()

◆ geometry_nodes_input_attribute_toggle_exec()

◆ get_asset_or_local_node_group()

◆ get_base_select_priority()

int blender::ed::object::get_base_select_priority ( Base * base)
static

◆ get_effector_defname()

◆ get_light_defname()

const char * blender::ed::object::get_light_defname ( int type)
static

Definition at line 1810 of file object_add.cc.

References BLT_I18NCONTEXT_ID_LIGHT, CTX_DATA_, LA_AREA, LA_LOCAL, LA_SPOT, and LA_SUN.

Referenced by object_light_add_exec().

◆ get_lightprobe_defname()

const char * blender::ed::object::get_lightprobe_defname ( int type)
static

◆ get_new_constraint_target()

◆ get_node_group()

bNodeTree * blender::ed::object::get_node_group ( const bContext & C,
PointerRNA & ptr,
ReportList * reports )
static

◆ get_object_for_conversion()

◆ get_static_item_tree()

asset::AssetItemTree * blender::ed::object::get_static_item_tree ( )
static

◆ get_vert_def_nr()

◆ grease_pencil_clear_from_all_vgroup()

void blender::ed::object::grease_pencil_clear_from_all_vgroup ( Scene & scene,
Object & ob,
const bool use_selection,
const bool all_drawings = false,
const bool only_unlocked = false )
static

◆ grease_pencil_clear_from_vgroup()

void blender::ed::object::grease_pencil_clear_from_vgroup ( Scene & scene,
Object & ob,
bDeformGroup * dg,
const bool use_selection,
const bool all_drawings = false )
static

◆ has_object_motion_paths()

bool blender::ed::object::has_object_motion_paths ( Object * ob)
static

◆ has_pose_motion_paths()

bool blender::ed::object::has_pose_motion_paths ( Object * ob)
static

◆ hook_mod_itemf()

◆ hook_op_edit_poll()

◆ ignore_parent_tx()

◆ init_multiresbake_job()

◆ init_transform_on_add()

void blender::ed::object::init_transform_on_add ( Object * object,
const float loc[3],
const float rot[3] )

Definition at line 335 of file object_add.cc.

References BKE_object_to_mat4(), copy_v3_v3(), and rot.

Referenced by add_type_with_obdata(), and txt_add_object().

◆ inv_cmp_mdef_vert_weights()

int blender::ed::object::inv_cmp_mdef_vert_weights ( const void * a1,
const void * a2 )
static

◆ is_multires_bake()

bool blender::ed::object::is_multires_bake ( Scene * scene)
static

◆ is_noncolor_pass()

bool blender::ed::object::is_noncolor_pass ( eScenePassType pass_type)
static

◆ is_smooth_by_angle_modifier()

◆ is_valid_smooth_by_angle_group()

bool blender::ed::object::is_valid_smooth_by_angle_group ( const bNodeTree & ntree)
static

Does a shallow check for whether the node group could be the Smooth by Angle node group. This should become unnecessary once we asset embedding (#132167).

Definition at line 1858 of file object_edit.cc.

References NTREE_GEOMETRY, and bNodeTree::type.

Referenced by shade_auto_smooth_exec().

◆ iter_other()

bool blender::ed::object::iter_other ( Main * bmain,
Object * orig_ob,
bool include_orig,
bool(* callback )(Object *ob, void *callback_data),
void * callback_data )

If the object data of 'orig_ob' has other users, run 'callback' on each of them.

If include_orig is true, the callback will run on 'orig_ob' too.

If the callback ever returns true, iteration will stop and the function value will be true. Otherwise the function returns false.

Definition at line 272 of file object_modifier.cc.

References Object::data, ListBase::first, ID::flag, Object::id, ID_FLAG_FAKEUSER, ID::next, Main::objects, ID::us, and users.

Referenced by blender::ed::mesh::join_objects_exec(), multires_higher_levels_delete_exec(), multires_subdivide_exec(), and object_modifier_safe_to_delete().

◆ join_shapes_exec()

wmOperatorStatus blender::ed::object::join_shapes_exec ( bContext * C,
wmOperator * op )
static

◆ jump_to_bone()

bool blender::ed::object::jump_to_bone ( bContext * C,
Object * ob,
const char * bone_name,
bool reveal_hidden )

◆ jump_to_object()

bool blender::ed::object::jump_to_object ( bContext * C,
Object * ob,
bool reveal_hidden )

Select and make the target object active in the view layer. If already selected, selection isn't changed.

Returns
false if not found in current view layer

Definition at line 247 of file object_select.cc.

References BA_SELECT, base_activate(), base_deselect_all(), base_select(), BASE_SELECTED, BASE_VISIBLE, BKE_view_layer_active_base_get(), BKE_view_layer_base_find(), BKE_view_layer_synced_ensure(), C, CTX_data_scene(), CTX_data_view_layer(), CTX_wm_view3d(), Base::flag, NC_SCENE, ND_OB_SELECT, SEL_DESELECT, and WM_event_add_notifier().

Referenced by jump_to_bone(), and jump_to_target_ptr().

◆ keymap_object()

void blender::ed::object::keymap_object ( wmKeyConfig * keyconf)

◆ laplaciandeform_bind_exec()

◆ laplaciandeform_bind_invoke()

wmOperatorStatus blender::ed::object::laplaciandeform_bind_invoke ( bContext * C,
wmOperator * op,
const wmEvent *  )
static

◆ laplaciandeform_poll()

bool blender::ed::object::laplaciandeform_poll ( bContext * C)
static

Definition at line 3337 of file object_modifier.cc.

References C, and edit_modifier_poll_generic().

Referenced by OBJECT_OT_laplaciandeform_bind().

◆ lattice_add_to_selected_collect_targets_and_calc_bounds()

◆ lattice_add_to_selected_exec()

◆ libblock_relink_collection()

void blender::ed::object::libblock_relink_collection ( Main * bmain,
Collection * collection,
const bool do_collection )
static

◆ light_linking_collection_new_exec()

◆ light_linking_link_exec()

◆ light_linking_select_exec()

◆ light_linking_unlink_from_collection_exec()

◆ lightprobe_add_exec()

◆ limitdistance_reset_exec()

◆ limitdistance_reset_invoke()

wmOperatorStatus blender::ed::object::limitdistance_reset_invoke ( bContext * C,
wmOperator * op,
const wmEvent *  )
static

◆ link_to_collection_menu_register()

◆ location_from_view()

◆ make_links_data_exec()

◆ make_links_scene_exec()

◆ make_local_all__instance_indirect_unused()

bool blender::ed::object::make_local_all__instance_indirect_unused ( Main * bmain,
const Scene * scene,
ViewLayer * view_layer,
Collection * collection )
static

◆ make_local_animdata_tag()

void blender::ed::object::make_local_animdata_tag ( AnimData * adt)
static

◆ make_local_animdata_tag_strips()

void blender::ed::object::make_local_animdata_tag_strips ( ListBase * strips)
static

◆ make_local_exec()

◆ make_local_material_tag()

void blender::ed::object::make_local_material_tag ( Material * ma)
static

◆ make_object_duplilist_real()

void blender::ed::object::make_object_duplilist_real ( bContext * C,
Depsgraph * depsgraph,
Scene * scene,
Base * base,
const bool use_base_parent,
const bool use_hierarchy )
static

Definition at line 2723 of file object_add.cc.

References blender::Map< Key, Value, InlineBufferCapacity, ProbingStrategy, Hash, IsEqual, Slot, Allocator >::add(), Object::adt, BA_DESELECT, BA_SELECT, base_select(), BKE_animdata_free(), BKE_collection_object_add_from(), BKE_constraints_free(), BKE_id_copy(), BKE_libblock_relink_to_newid(), BKE_main_id_newptr_and_tag_clear(), BKE_object_apply_mat4(), BKE_scene_object_base_flag_sync_from_base(), BKE_view_layer_base_find(), BKE_view_layer_synced_ensure(), BLI_assert, BLI_ghash_ensure_p(), BLI_ghash_free(), BLI_ghash_lookup(), BLI_ghash_new(), C, Object::constraints, copy_m4_m4(), CTX_data_main(), CTX_data_view_layer(), DEG_get_evaluated(), DEG_get_original(), DEG_id_tag_update(), depsgraph, dupliobject_cmp(), dupliobject_hash(), dupliobject_instancer_cmp(), dupliobject_instancer_hash(), Object::id, ID_NEW_SET, ID_RECALC_GEOMETRY, ID_RECALC_SELECT, ID_RECALC_SYNC_TO_EVAL, ID_RECALC_TRANSFORM, id_us_min(), Object::instance_collection, blender::VectorList< T, CapacityStart, CapacityMax >::is_empty(), blender::Map< Key, Value, InlineBufferCapacity, ProbingStrategy, Hash, IsEqual, Slot, Allocator >::lookup(), Object::mat, MAX_DUPLI_RECUR, DupliObject::ob, OB_DUPLI, OB_DUPLICOLLECTION, Base::object, object_duplilist(), blender::bke::object_has_geometry_set_instances(), Object::par1, Object::par2, Object::par3, Object::parent, Object::parentinv, PAROBJECT, Object::parsubstr, Object::partype, DupliObject::persistent_id, Object::runtime, STRNCPY_UTF8, Object::totcol, Object::transflag, and DupliObject::type.

Referenced by object_duplicates_make_real_exec().

◆ make_override_library_exec()

wmOperatorStatus blender::ed::object::make_override_library_exec ( bContext * C,
wmOperator * op )
static

Currently there is no 'all editable' option from the 3DView.

Definition at line 2381 of file object_relations.cc.

References base_free_and_unlink(), 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(), 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, i, Collection::id, Object::id, Scene::id, ID_GR, ID_IS_LINKED, ID_IS_OVERRIDABLE_LIBRARY, ID_IS_OVERRIDE_LIBRARY_REAL, ID_OB, ID_RECALC_BASE_FLAGS, ID_RECALC_SYNC_TO_EVAL, ID_TAG_DOIT, Object::instance_collection, LIBOVERRIDE_FLAG_SYSTEM_DEFINED, LISTBASE_FOREACH, LISTBASE_FOREACH_MUTABLE, MAIN_ID_SESSION_UID_UNSET, make_override_library_object_overridable_check(), ID::name, NC_SPACE, NC_WINDOW, NC_WM, ND_LIB_OVERRIDE_CHANGED, ND_SPACE_VIEW3D, nullptr, OB_ARMATURE, offsetof, OPERATOR_CANCELLED, OPERATOR_FINISHED, ID::override_library, POINTER_FROM_UINT, wmOperatorType::prop, wmOperator::ptr, IDOverrideLibrary::reference, wmOperator::reports, RNA_property_int_get(), RPT_ERROR_INVALID_INPUT, Collection::runtime, ID::session_uid, ID::tag, wmOperator::type, and WM_event_add_notifier().

Referenced by make_override_library_invoke(), and OBJECT_OT_make_override_library().

◆ make_override_library_invoke()

◆ make_override_library_object_overridable_check()

bool blender::ed::object::make_override_library_object_overridable_check ( Main * bmain,
Object * object )
static

◆ make_override_library_poll()

◆ make_single_user_exec()

◆ make_single_user_invoke()

wmOperatorStatus blender::ed::object::make_single_user_invoke ( bContext * C,
wmOperator * op,
const wmEvent * event )
static

Definition at line 2921 of file object_relations.cc.

References C, IFACE_, and WM_operator_props_popup_confirm_ex().

Referenced by OBJECT_OT_make_single_user().

◆ material_active_index_set()

bool blender::ed::object::material_active_index_set ( Object * ob,
int index )

Set the active material by index.

Parameters
indexA zero based index. This will be clamped to the valid range.
Returns
true if the material index changed.

Definition at line 44 of file object_utils.cc.

References Object::actcol, NC_MATERIAL, ND_SHADING_LINKS, Object::totcol, and WM_main_add_notifier().

Referenced by ED_curve_editnurb_select_pick(), EDBM_select_pick(), font_cursor_set_apply(), mouse_mesh_shortest_path_face(), and text_update_edited().

◆ mesh_data_to_grease_pencil()

◆ mesh_defvert_mirror_update_em()

void blender::ed::object::mesh_defvert_mirror_update_em ( Object * ob,
BMVert * eve,
int def_nr,
int vidx,
const int cd_dvert_offset )
static

◆ mesh_defvert_mirror_update_internal()

void blender::ed::object::mesh_defvert_mirror_update_internal ( Object * ob,
MDeformVert * dvert_dst,
MDeformVert * dvert_src,
const int def_nr )
static

◆ mesh_defvert_mirror_update_ob()

void blender::ed::object::mesh_defvert_mirror_update_ob ( Object * ob,
int def_nr,
int vidx )
static

◆ mesh_is_manifold_consistent()

bool blender::ed::object::mesh_is_manifold_consistent ( Mesh * mesh)
static

◆ mesh_needs_keyindex()

bool blender::ed::object::mesh_needs_keyindex ( Main * bmain,
const Mesh * mesh )
static

Definition at line 588 of file object_edit.cc.

References ELEM, eModifierType_Hook, LISTBASE_FOREACH, Main::objects, PARVERT1, and PARVERT3.

Referenced by editmode_enter_ex().

◆ mesh_to_grease_pencil_add_material()

int blender::ed::object::mesh_to_grease_pencil_add_material ( Main & bmain,
Object & ob_grease_pencil,
const StringRefNull name,
const std::optional< float4 > & stroke_color,
const std::optional< float4 > & fill_color )
static

◆ mesh_to_grease_pencil_get_material_list()

◆ meshdeform_bind_exec()

◆ meshdeform_bind_invoke()

wmOperatorStatus blender::ed::object::meshdeform_bind_invoke ( bContext * C,
wmOperator * op,
const wmEvent *  )
static

◆ meshdeform_poll()

bool blender::ed::object::meshdeform_poll ( bContext * C)
static

Definition at line 3002 of file object_modifier.cc.

References C, and edit_modifier_poll_generic().

Referenced by OBJECT_OT_meshdeform_bind().

◆ metaball_coords_and_quats_apply()

void blender::ed::object::metaball_coords_and_quats_apply ( MetaBall * mb,
const Span< ElemData_MetaBall > elem_array )
static

◆ metaball_coords_and_quats_apply_with_mat4()

◆ metaball_coords_and_quats_get()

◆ mode_compat_set()

bool blender::ed::object::mode_compat_set ( bContext * C,
Object * ob,
eObjectMode mode,
ReportList * reports )

Set the provided object's mode to one that is compatible with the provided mode.

Returns
true if the provided object's mode matches the provided mode, or if the function was able to set the object back into Object Mode.

This is so each mode toggle operator exec function can call this function to ensure the current mode runtime data is cleaned up prior to entering a new mode.

Definition at line 154 of file object_modes.cc.

References BKE_reportf(), C, ELEM, blender::wm::ExecRegionWin, Object::mode, OB_MODE_OBJECT, object_mode_op_string(), ot, RPT_ERROR, WM_operator_name_call(), and WM_operatortype_find().

Referenced by blender::ed::sculpt_paint::curves_sculptmode_toggle_exec(), editmode_toggle_exec(), particle_edit_toggle_exec(), posemode_exec(), blender::ed::sculpt_paint::sculpt_mode_toggle_exec(), texture_paint_toggle_exec(), vpaint_mode_toggle_exec(), and wpaint_mode_toggle_exec().

◆ mode_compat_test()

◆ mode_generic_exit()

void blender::ed::object::mode_generic_exit ( Main * bmain,
Depsgraph * depsgraph,
Scene * scene,
Object * ob )

◆ mode_generic_has_data()

bool blender::ed::object::mode_generic_has_data ( Depsgraph * depsgraph,
const Object * ob )

Definition at line 405 of file object_modes.cc.

References depsgraph, and ed_object_mode_generic_exit_ex().

◆ mode_set()

◆ mode_set_ex()

◆ mode_transfer_overlay_current_state()

Map< std::string, float, 1 > blender::ed::object::mode_transfer_overlay_current_state ( )

◆ mode_transfer_overlay_start_times()

auto & blender::ed::object::mode_transfer_overlay_start_times ( )
static

◆ modifier_add()

ModifierData * blender::ed::object::modifier_add ( ReportList * reports,
Main * bmain,
Scene * scene,
Object * ob,
const char * name,
int type )

Add a modifier to given object, including relevant extra processing needed by some physics types (particles, simulations...).

Parameters
sceneis only used to set current frame in some cases, and may be NULL.

Definition at line 158 of file object_modifier.cc.

References BKE_mesh_ensure_skin_customdata(), BKE_modifier_get_info(), BKE_modifier_new(), BKE_modifier_unique_name(), BKE_modifiers_findby_type(), BKE_modifiers_persistent_uid_init(), BKE_object_modifier_set_active(), BKE_object_support_modifier_type_check(), BKE_partdeflect_new(), BKE_report(), BKE_reportf(), BKE_sculpt_mask_layers_ensure(), BLI_insertlinkbefore(), Object::data, PartDeflect::deflect, DEG_id_tag_update(), DEG_relations_tag_update(), eModifierFlag_PinLast, eModifierType_Collision, eModifierType_Multires, eModifierType_ParticleSystem, eModifierType_Skin, eModifierType_Softbody, eModifierType_Surface, eModifierTypeFlag_RequiresOriginalData, eModifierTypeFlag_Single, ListBase::first, ModifierData::flag, ModifierTypeInfo::flags, Object::id, ID_RECALC_GEOMETRY, LISTBASE_FOREACH_BACKWARD, Object::mode, Object::modifiers, multiresModifier_set_levels_from_disps(), ID::name, ModifierData::name, name, ModifierData::next, OB_MODE_SCULPT, OB_SB_EDGES, OB_SB_GOAL, object_add_particle_system(), OnlyDeform, Object::pd, RPT_WARNING, sbNew(), Object::soft, Object::softflag, STRNCPY_UTF8, ModifierData::type, and ModifierTypeInfo::type.

Referenced by check_force_modifiers(), drop_geometry_nodes_invoke(), blender::ed::curves::ensure_surface_deformation_node_exists(), geometry_extract_apply(), lattice_add_to_selected_exec(), modifier_add_asset_exec(), modifier_add_exec(), parent_set_with_depsgraph(), and shade_auto_smooth_exec().

◆ modifier_add_asset_exec()

◆ modifier_add_asset_get_description()

std::string blender::ed::object::modifier_add_asset_get_description ( bContext * C,
wmOperatorType * ,
PointerRNA * ptr )
static

◆ modifier_add_asset_invoke()

wmOperatorStatus blender::ed::object::modifier_add_asset_invoke ( bContext * C,
wmOperator * op,
const wmEvent * event )
static

◆ modifier_add_catalog_assets_menu_type()

◆ modifier_add_exec()

◆ modifier_add_invoke()

wmOperatorStatus blender::ed::object::modifier_add_invoke ( bContext * C,
wmOperator * op,
const wmEvent * event )
static

◆ modifier_add_itemf()

◆ modifier_add_root_catalogs_menu_type()

◆ modifier_add_unassigned_assets_menu_type()

◆ modifier_apply()

◆ modifier_apply_as_shapekey_exec()

wmOperatorStatus blender::ed::object::modifier_apply_as_shapekey_exec ( bContext * C,
wmOperator * op )
static

◆ modifier_apply_as_shapekey_get_description()

std::string blender::ed::object::modifier_apply_as_shapekey_get_description ( bContext * ,
wmOperatorType * ,
PointerRNA * ptr )
static

Definition at line 2173 of file object_modifier.cc.

References ptr, RNA_boolean_get(), and TIP_.

Referenced by OBJECT_OT_modifier_apply_as_shapekey().

◆ modifier_apply_as_shapekey_invoke()

wmOperatorStatus blender::ed::object::modifier_apply_as_shapekey_invoke ( bContext * C,
wmOperator * op,
const wmEvent * event )
static

◆ modifier_apply_as_shapekey_poll()

bool blender::ed::object::modifier_apply_as_shapekey_poll ( bContext * C)
static

Definition at line 2150 of file object_modifier.cc.

References C, and modifier_apply_poll().

Referenced by OBJECT_OT_modifier_apply_as_shapekey().

◆ modifier_apply_exec()

wmOperatorStatus blender::ed::object::modifier_apply_exec ( bContext * C,
wmOperator * op )
static

◆ modifier_apply_exec_ex()

◆ modifier_apply_invoke()

◆ modifier_apply_obdata()

bool blender::ed::object::modifier_apply_obdata ( ReportList * reports,
Depsgraph * depsgraph,
Scene * scene,
Object * ob,
ModifierData * md_eval,
const bool do_all_keyframes )
static

Definition at line 1068 of file object_modifier.cc.

References apply_grease_pencil_for_modifier(), apply_grease_pencil_for_modifier_all_keyframes(), BKE_curve_nurbs_vert_coords_alloc(), BKE_curve_nurbs_vert_coords_apply(), BKE_lattice_vert_coords_alloc(), BKE_lattice_vert_coords_apply(), BKE_mesh_nomain_to_mesh(), BKE_modifier_get_info(), BKE_modifier_get_original(), BKE_object_material_from_eval_data(), BKE_pointcloud_copy_for_eval(), BKE_pointcloud_nomain_to_pointcloud(), BKE_report(), BLI_assert_unreachable, Constructive, create_applied_mesh_for_modifier(), Object::data, ModifierTypeInfo::deform_verts, DEG_get_bmain(), DEG_get_evaluated(), DEG_get_evaluated_scene(), DEG_id_tag_update(), depsgraph, ELEM, eModifierType_Multires, eModifierType_Nodes, find_multires_modifier_before(), ListBase::first, blender::bke::GeometrySet::from_curves(), blender::bke::GeometrySet::from_pointcloud(), Curves::geometry, blender::bke::GeometrySet::get_component_for_write(), blender::bke::GeometrySet::get_curves_for_write(), blender::bke::GeometrySet::has_curves(), blender::bke::GeometrySet::has_pointcloud(), Curves::id, Mesh::id, Object::id, PointCloud::id, ID_RECALC_GEOMETRY, ModifierTypeInfo::is_disabled, LISTBASE_FOREACH, blender::bke::mesh_remove_invalid_attribute_strings(), MOD_APPLY_TO_ORIGINAL, ModifierTypeInfo::modify_geometry_set, multires_customdata_delete(), multires_force_sculpt_rebuild(), multiresModifier_reshapeFromDeformModifier(), Nonconstructive, NonGeometrical, Curve::nurb, OB_CURVES, OB_CURVES_LEGACY, OB_GREASE_PENCIL, OB_LATTICE, OB_MESH, OB_POINTCLOUD, OB_SURF, OnlyDeform, PART_HAIR, Object::particlesystem, psys_apply_hair_lattice(), blender::bke::ReadOnly, RPT_ERROR, RPT_INFO, MultiresModifierData::totlvl, ModifierData::type, ModifierTypeInfo::type, and Object::type.

Referenced by modifier_apply().

◆ modifier_apply_poll()

◆ modifier_apply_shape()

◆ modifier_convert_exec()

◆ modifier_convert_invoke()

wmOperatorStatus blender::ed::object::modifier_convert_invoke ( bContext * C,
wmOperator * op,
const wmEvent *  )
static

◆ modifier_copy()

◆ modifier_copy_exec()

◆ modifier_copy_invoke()

wmOperatorStatus blender::ed::object::modifier_copy_invoke ( bContext * C,
wmOperator * op,
const wmEvent * event )
static

◆ modifier_copy_to_object()

◆ modifier_copy_to_selected_exec()

◆ modifier_copy_to_selected_invoke()

wmOperatorStatus blender::ed::object::modifier_copy_to_selected_invoke ( bContext * C,
wmOperator * op,
const wmEvent * event )
static

◆ modifier_copy_to_selected_poll()

◆ modifier_get_edit_objects()

◆ modifier_link()

◆ modifier_move_down()

bool blender::ed::object::modifier_move_down ( ReportList * reports,
eReportType error_type,
Object * ob,
ModifierData * md )

◆ modifier_move_down_exec()

◆ modifier_move_down_invoke()

wmOperatorStatus blender::ed::object::modifier_move_down_invoke ( bContext * C,
wmOperator * op,
const wmEvent * event )
static

◆ modifier_move_to_index()

◆ modifier_move_to_index_exec()

◆ modifier_move_to_index_invoke()

wmOperatorStatus blender::ed::object::modifier_move_to_index_invoke ( bContext * C,
wmOperator * op,
const wmEvent * event )
static

◆ modifier_move_up()

bool blender::ed::object::modifier_move_up ( ReportList * reports,
eReportType error_type,
Object * ob,
ModifierData * md )

◆ modifier_move_up_exec()

◆ modifier_move_up_invoke()

wmOperatorStatus blender::ed::object::modifier_move_up_invoke ( bContext * C,
wmOperator * op,
const wmEvent * event )
static

◆ modifier_register_use_selected_objects_prop()

◆ modifier_remove()

◆ modifier_remove_exec()

◆ modifier_remove_invoke()

wmOperatorStatus blender::ed::object::modifier_remove_invoke ( bContext * C,
wmOperator * op,
const wmEvent * event )
static

◆ modifier_set_active_exec()

◆ modifier_set_active_invoke()

wmOperatorStatus blender::ed::object::modifier_set_active_invoke ( bContext * C,
wmOperator * op,
const wmEvent * event )
static

◆ modifier_skin_armature_create()

◆ modifier_skin_customdata_delete()

void blender::ed::object::modifier_skin_customdata_delete ( Object * ob)
static

◆ modifiers_clear()

void blender::ed::object::modifiers_clear ( Main * bmain,
Scene * scene,
Object * ob )

◆ modifiers_clear_exec()

◆ modifiers_clear_poll()

bool blender::ed::object::modifiers_clear_poll ( bContext * C)
static

◆ modifiers_copy_to_selected_poll()

◆ motion_paths_clear()

void blender::ed::object::motion_paths_clear ( bContext * C,
bool only_selected )

Clear motion paths for all objects.

Definition at line 1572 of file object_edit.cc.

References C, CTX_DATA_BEGIN, CTX_DATA_END, and object_clear_mpath().

Referenced by object_clear_paths_exec().

◆ motion_paths_recalc()

◆ motion_paths_recalc_selected()

◆ motion_paths_recalc_visible()

void blender::ed::object::motion_paths_recalc_visible ( bContext * C,
Scene * scene,
eObjectPathCalcRange range )

◆ move_to_collection_exec()

◆ move_to_collection_invoke()

◆ move_to_collection_menu_draw() [1/2]

◆ move_to_collection_menu_draw() [2/2]

◆ move_to_collection_menu_register()

◆ move_to_collection_poll()

bool blender::ed::object::move_to_collection_poll ( bContext * C)
static

◆ move_to_collection_recursive_menu_draw()

void blender::ed::object::move_to_collection_recursive_menu_draw ( const bContext * ,
Menu * menu )
static

◆ multires_base_apply_exec()

◆ multires_base_apply_invoke()

wmOperatorStatus blender::ed::object::multires_base_apply_invoke ( bContext * C,
wmOperator * op,
const wmEvent *  )
static

◆ multires_external_pack_exec()

◆ multires_external_save_exec()

◆ multires_external_save_invoke()

◆ multires_higher_levels_delete_exec()

◆ multires_higher_levels_delete_invoke()

wmOperatorStatus blender::ed::object::multires_higher_levels_delete_invoke ( bContext * C,
wmOperator * op,
const wmEvent *  )
static

◆ multires_poll()

◆ multires_rebuild_subdiv_exec()

◆ multires_rebuild_subdiv_invoke()

wmOperatorStatus blender::ed::object::multires_rebuild_subdiv_invoke ( bContext * C,
wmOperator * op,
const wmEvent *  )
static

◆ multires_reshape_exec()

◆ multires_reshape_invoke()

wmOperatorStatus blender::ed::object::multires_reshape_invoke ( bContext * C,
wmOperator * op,
const wmEvent *  )
static

◆ multires_subdivide_exec()

◆ multires_subdivide_invoke()

wmOperatorStatus blender::ed::object::multires_subdivide_invoke ( bContext * C,
wmOperator * op,
const wmEvent *  )
static

◆ multires_unsubdivide_exec()

◆ multires_unsubdivide_invoke()

wmOperatorStatus blender::ed::object::multires_unsubdivide_invoke ( bContext * C,
wmOperator * op,
const wmEvent *  )
static

◆ multires_update_totlevels()

bool blender::ed::object::multires_update_totlevels ( Object * ob,
void * totlevel_v )

Use with iter_other(). Sets the total number of levels for any multi-res modifiers on the object to the int pointed to by callback_data.

Definition at line 316 of file object_modifier.cc.

References DEG_id_tag_update(), eModifierType_Multires, Object::id, ID_RECALC_GEOMETRY, LISTBASE_FOREACH, Object::modifiers, and multires_set_tot_level().

Referenced by blender::ed::mesh::join_objects_exec(), multires_higher_levels_delete_exec(), and multires_subdivide_exec().

◆ multiresbake_check()

◆ multiresbake_freejob()

void blender::ed::object::multiresbake_freejob ( void * bkv)
static

◆ multiresbake_image_exec()

◆ multiresbake_image_exec_locked()

◆ multiresbake_startjob()

◆ new_primitive_matrix()

float blender::ed::object::new_primitive_matrix ( bContext * C,
Object * obedit,
const float loc[3],
const float rot[3],
const float scale[3],
float primmat[4][4] )

◆ normalize_vertex_group_target()

◆ object_add_drop_xy_generic_invoke()

wmOperatorStatus blender::ed::object::object_add_drop_xy_generic_invoke ( bContext * C,
wmOperator * op,
const wmEvent * event )
static

Set the drop coordinate to the mouse position (if not already set) and call the operator's exec() callback.

Definition at line 271 of file object_add.cc.

References C, wmOperatorType::exec, object_add_drop_xy_is_set(), wmOperator::ptr, RNA_int_set(), wmOperator::type, and wmEvent::xy.

Referenced by OBJECT_OT_add_named(), OBJECT_OT_data_instance_add(), and OBJECT_OT_transform_to_mouse().

◆ object_add_drop_xy_get()

bool blender::ed::object::object_add_drop_xy_get ( bContext * C,
wmOperator * op,
int(*) r_mval[2] )
static

Query the currently set X- and Y-coordinate to position the new object under.

Parameters
r_mvalReturned pointer to the coordinate in region-space.

Definition at line 252 of file object_add.cc.

References C, CTX_wm_region(), object_add_drop_xy_is_set(), wmOperator::ptr, RNA_int_get(), ARegion::winrct, rcti::xmin, and rcti::ymin.

Referenced by collection_add_info_get_from_op(), object_add_named_exec(), object_data_instance_add_exec(), and object_transform_to_mouse_exec().

◆ object_add_drop_xy_is_set()

bool blender::ed::object::object_add_drop_xy_is_set ( const wmOperator * op)
static

◆ object_add_drop_xy_props()

void blender::ed::object::object_add_drop_xy_props ( wmOperatorType * ot)
static

Operator properties for creating an object under a screen space (2D) coordinate. Used for object dropping like behavior (drag object and drop into 3D View).

Definition at line 216 of file object_add.cc.

References ot, PROP_HIDDEN, PROP_SKIP_SAVE, RNA_def_int(), and RNA_def_property_flag().

Referenced by OBJECT_OT_add_named(), OBJECT_OT_collection_external_asset_drop(), OBJECT_OT_collection_instance_add(), OBJECT_OT_data_instance_add(), and OBJECT_OT_transform_to_mouse().

◆ object_add_duplicate_internal() [1/2]

void blender::ed::object::object_add_duplicate_internal ( Main * bmain,
Object * ob,
const eDupli_ID_Flags dupflag,
const eLibIDDuplicateFlags duplicate_options,
Object ** r_ob_new )
static

◆ object_add_duplicate_internal() [2/2]

Base * blender::ed::object::object_add_duplicate_internal ( Main * bmain,
Scene * scene,
ViewLayer * view_layer,
Object * ob,
const eDupli_ID_Flags dupflag,
const eLibIDDuplicateFlags duplicate_options,
Object ** r_ob_new )
static

◆ object_add_exec()

◆ object_add_hook_newob_exec()

◆ object_add_hook_selob_exec()

◆ object_add_named_exec()

◆ object_add_sync_base_collection()

◆ object_add_sync_local_view()

void blender::ed::object::object_add_sync_local_view ( Base * base_src,
Base * base_new )
static

◆ object_add_sync_rigid_body()

void blender::ed::object::object_add_sync_rigid_body ( Main * bmain,
Object * object_src,
Object * object_new )
static

◆ object_add_text_exec()

◆ object_add_to_selected_poll_property()

bool blender::ed::object::object_add_to_selected_poll_property ( const bContext * ,
wmOperator * op,
const PropertyRNA * prop )
static

◆ object_apply_location()

void blender::ed::object::object_apply_location ( Object * ob,
const float loc[3] )
static

◆ object_apply_rotation()

void blender::ed::object::object_apply_rotation ( Object * ob,
const float rmat[3][3] )
static

◆ object_armature_add_exec()

◆ object_array_for_wpaint()

Vector< Object * > blender::ed::object::object_array_for_wpaint ( bContext * C)
static

◆ object_array_for_wpaint_filter()

bool blender::ed::object::object_array_for_wpaint_filter ( const Object * ob,
void * user_data )
static

Definition at line 79 of file object_vgroup.cc.

References C, and vertex_group_supported_poll_ex().

Referenced by object_array_for_wpaint().

◆ object_calculate_paths_exec()

◆ object_calculate_paths_invoke()

◆ object_camera_add_exec()

◆ object_camera_custom_update_exec()

◆ object_camera_custom_update_poll()

◆ object_can_have_lattice_modifier()

bool blender::ed::object::object_can_have_lattice_modifier ( const Object * ob)
static

◆ object_clear_loc()

void blender::ed::object::object_clear_loc ( Object * ob,
const bool clear_delta )
static

◆ object_clear_mpath()

void blender::ed::object::object_clear_mpath ( Object * ob)
static

◆ object_clear_paths_exec()

wmOperatorStatus blender::ed::object::object_clear_paths_exec ( bContext * C,
wmOperator * op )
static

◆ object_clear_paths_get_description()

std::string blender::ed::object::object_clear_paths_get_description ( bContext * ,
wmOperatorType * ,
PointerRNA * ptr )
static

Definition at line 1604 of file object_edit.cc.

References ptr, RNA_boolean_get(), and TIP_.

Referenced by OBJECT_OT_paths_clear().

◆ object_clear_rot()

◆ object_clear_scale()

void blender::ed::object::object_clear_scale ( Object * ob,
const bool clear_delta )
static

◆ object_clear_transform_generic_exec()

wmOperatorStatus blender::ed::object::object_clear_transform_generic_exec ( bContext * C,
wmOperator * op,
void(* clear_func )(Object *, const bool),
const char default_ksName[] )
static

◆ object_constraint_add_exec()

◆ object_constraint_add_itemf()

◆ object_constraint_copy_exec()

◆ object_constraints_clear_exec()

◆ object_convert_exec()

wmOperatorStatus blender::ed::object::object_convert_exec ( bContext * C,
wmOperator * op )
static

Definition at line 4234 of file object_add.cc.

References ATTR_FALLTHROUGH, ViewLayer::basact, base_activate(), base_free_and_unlink(), BKE_id_is_editable(), BKE_mball_basis_find(), BKE_mball_is_basis(), BKE_object_free_modifiers(), BKE_object_materials_sync_length(), BKE_report(), BKE_reportf(), BKE_scene_graph_update_tagged(), BKE_view_layer_active_object_get(), BKE_view_layer_synced_ensure(), BLI_assert, blender::ed::object::ObjectConversionInfo::bmain, C, CD_MASK_MESH, convert_curves(), convert_curves_legacy(), convert_font(), convert_grease_pencil(), convert_mball(), convert_mesh(), convert_pointcloud(), CTX_data_ensure_evaluated_depsgraph(), CTX_data_main(), CTX_data_scene(), CTX_data_selected_editable_bases(), CTX_data_view_layer(), Scene::customdata_mask, CustomData_MeshMasks_update(), Object::data, DEG_id_tag_update(), DEG_relations_tag_update(), blender::ed::object::ObjectConversionInfo::depsgraph, depsgraph, blender::ed::object::ObjectConversionInfo::do_merge_customdata, Base::flag, Object::flag, FOREACH_SCENE_OBJECT_BEGIN, FOREACH_SCENE_OBJECT_END, Object::id, Scene::id, ID_RECALC_GEOMETRY, ID_RECALC_SELECT, ID_RECALC_TRANSFORM, ID_TAG_DOIT, blender::Vector< T, InlineBufferCapacity, Allocator >::is_empty(), IS_TAGGED, blender::ed::object::ObjectConversionInfo::keep_original, Object::mode, NC_OBJECT, NC_SCENE, ND_DATA, ND_DRAW, ND_LAYER_CONTENT, ND_MODIFIER, ND_OB_SELECT, OB_CURVES, OB_CURVES_LEGACY, OB_DONE, OB_FONT, OB_GREASE_PENCIL, OB_MBALL, OB_MESH, OB_MODE_EDIT, OB_POINTCLOUD, OB_SURF, blender::ed::object::ObjectConversionInfo::obact, Base::object, object_convert_exec(), blender::ed::object::ObjectConversionInfo::op_props, OPERATOR_CANCELLED, OPERATOR_FINISHED, ptr, wmOperator::ptr, blender::ed::object::ObjectConversionInfo::reports, wmOperator::reports, RNA_boolean_get(), RNA_enum_get(), RNA_property_enum_name(), RNA_struct_find_property(), RPT_, RPT_ERROR, RPT_INFO, blender::ed::object::ObjectConversionInfo::scene, SELECT, blender::Vector< T, InlineBufferCapacity, Allocator >::size(), Object::type, blender::ed::object::ObjectConversionInfo::view_layer, and WM_event_add_notifier().

Referenced by object_convert_exec(), and OBJECT_OT_convert().

◆ object_convert_poll()

bool blender::ed::object::object_convert_poll ( bContext * C)
static

◆ object_convert_ui()

void blender::ed::object::object_convert_ui ( bContext * ,
wmOperator * op )
static

◆ object_curves_empty_hair_add_exec()

◆ object_curves_empty_hair_add_poll()

bool blender::ed::object::object_curves_empty_hair_add_poll ( bContext * C)
static

◆ object_curves_random_add_exec()

wmOperatorStatus blender::ed::object::object_curves_random_add_exec ( bContext * C,
wmOperator * op )
static

◆ object_data_convert_curve_to_mesh()

void blender::ed::object::object_data_convert_curve_to_mesh ( Main * bmain,
Depsgraph * depsgraph,
Object * ob )
static

◆ object_data_instance_add_exec()

◆ object_delete_exec()

◆ object_delete_invoke()

wmOperatorStatus blender::ed::object::object_delete_invoke ( bContext * C,
wmOperator * op,
const wmEvent *  )
static

◆ object_duplicates_make_real_exec()

◆ object_empty_add_exec()

◆ object_force_modifier_bind_simple_options()

void blender::ed::object::object_force_modifier_bind_simple_options ( Depsgraph * depsgraph,
Object * object,
ModifierData * md )
static

◆ object_force_modifier_update_for_bind()

◆ object_grease_pencil_add_exec()

◆ object_grease_pencil_add_invoke()

wmOperatorStatus blender::ed::object::object_grease_pencil_add_invoke ( bContext * C,
wmOperator * op,
const wmEvent *  )
static

◆ object_has_modifier()

bool blender::ed::object::object_has_modifier ( const Object * ob,
const ModifierData * exclude,
ModifierType type )
static

◆ object_has_modifier_cb()

bool blender::ed::object::object_has_modifier_cb ( Object * ob,
void * data )
static

Definition at line 309 of file object_modifier.cc.

References data, and object_has_modifier().

Referenced by object_modifier_safe_to_delete().

◆ object_has_shaderfx()

bool UNUSED_FUNCTION blender::ed::object::object_has_shaderfx ( const Object * ob,
const ShaderFxData * exclude,
ShaderFxType type )
static

Definition at line 96 of file object_shader_fx.cc.

References LISTBASE_FOREACH, and object_has_shaderfx().

Referenced by object_has_shaderfx().

◆ object_hide_collection_exec()

◆ object_hide_collection_invoke()

◆ object_hide_poll()

bool blender::ed::object::object_hide_poll ( bContext * C)
static

◆ object_hide_view_clear_exec()

◆ object_hide_view_set_exec()

◆ object_hook_assign_exec()

◆ object_hook_from_context()

void blender::ed::object::object_hook_from_context ( bContext * C,
PointerRNA * ptr,
const int num,
Object ** r_ob,
HookModifierData ** r_hmd )
static

◆ object_hook_index_array()

◆ object_hook_recenter_exec()

◆ object_hook_remove_exec()

◆ object_hook_reset_exec()

◆ object_hook_select()

void blender::ed::object::object_hook_select ( Object * ob,
HookModifierData * hmd )
static

◆ object_hook_select_exec()

◆ object_image_add_exec()

◆ object_image_add_invoke()

◆ object_image_add_poll()

bool blender::ed::object::object_image_add_poll ( bContext * C)
static

Definition at line 1554 of file object_add.cc.

References C, and CTX_wm_region_view3d().

Referenced by OBJECT_OT_empty_image_add().

◆ object_in_mode_from_index()

Object * blender::ed::object::object_in_mode_from_index ( const Scene * scene,
ViewLayer * view_layer,
eObjectMode mode,
int index )

Access the object from the index returned by object_in_mode_to_index.

Definition at line 266 of file object_edit.cc.

References BLI_assert, FOREACH_BASE_IN_MODE_BEGIN, FOREACH_BASE_IN_MODE_END, and i.

Referenced by uv_shortest_path_pick_exec().

◆ object_in_mode_to_index()

int blender::ed::object::object_in_mode_to_index ( const Scene * scene,
ViewLayer * view_layer,
eObjectMode mode,
const Object * ob )

Return the index of an object in a mode (typically edit/pose mode).

Useful for operators with multi-mode editing to be able to redo an action on an object by its index which (unlike pointers) the operator can store for redo.

The indices aren't intended to be useful from Python scripts, although they are not prevented from passing them in, this is mainly to enable redo. For scripts it's more convenient to set the object active before operating on it.

Note
The active object is always index 0.

Definition at line 244 of file object_edit.cc.

References BLI_assert, FOREACH_BASE_IN_MODE_BEGIN, FOREACH_BASE_IN_MODE_END, and i.

Referenced by uv_shortest_path_pick_invoke().

◆ object_instance_add_invoke()

◆ object_is_any_shape_key_locked()

bool blender::ed::object::object_is_any_shape_key_locked ( Object * ob)
static

◆ object_is_target_compat()

bool blender::ed::object::object_is_target_compat ( const Object * ob)
static

◆ object_join_exec()

◆ object_join_poll()

◆ object_light_add_exec()

◆ object_location_clear_exec()

wmOperatorStatus blender::ed::object::object_location_clear_exec ( bContext * C,
wmOperator * op )
static

◆ object_metaball_add_exec()

◆ object_mode_op_string()

◆ object_mode_poll()

bool blender::ed::object::object_mode_poll ( bContext * C)
static

Definition at line 327 of file object_ops.cc.

References C, CTX_data_active_object(), Object::mode, and OB_MODE_OBJECT.

Referenced by keymap_object().

◆ object_mode_set_exec()

wmOperatorStatus blender::ed::object::object_mode_set_exec ( bContext * C,
wmOperator * op )
static

Mode Switching Logic (internal details).

Notes:

  • Code below avoids calling mode switching functions more than once, as this causes unnecessary calculations and undo steps to be added.
  • The previous mode (Object.restore_mode) is object mode by default.

Supported Cases:

  • Setting the mode (when the 'toggle' setting is off).
  • Toggle the mode:
    • Toggle between object mode and non-object mode property.
    • Toggle between the previous mode (Object.restore_mode) and the mode property.
    • Toggle object mode. While this is similar to regular toggle, this operator depends on there being a previous mode set (this isn't bound to a key with the default key-map).

Definition at line 2074 of file object_edit.cc.

References C, CTX_data_active_object(), CTX_data_main(), CTX_wm_manager(), EDBM_selectmode_set_multi(), wmOperator::idname, Object::mode, mode_compat_test(), mode_set_ex(), OB_MESH, OB_MODE_EDIT, OB_MODE_OBJECT, object_mode_set_ok_or_report(), OPERATOR_CANCELLED, OPERATOR_FINISHED, OPERATOR_PASS_THROUGH, wmOperator::ptr, wmOperator::reports, Object::restore_mode, RNA_boolean_get(), RNA_enum_get(), RNA_property_enum_get(), RNA_property_is_set(), RNA_struct_find_property(), STREQ, Object::type, WM_autosave_is_scheduled(), and WM_autosave_write().

Referenced by OBJECT_OT_mode_set().

◆ object_mode_set_itemf()

const EnumPropertyItem * blender::ed::object::object_mode_set_itemf ( bContext * C,
PointerRNA * ,
PropertyRNA * ,
bool * r_free )
static

◆ object_mode_set_ok_or_report()

bool blender::ed::object::object_mode_set_ok_or_report ( ReportList * reports)
static

◆ object_mode_set_poll()

bool blender::ed::object::object_mode_set_poll ( bContext * C)
static

Definition at line 2067 of file object_edit.cc.

References C, CTX_data_active_object(), and ED_operator_object_active_editable_ex().

Referenced by OBJECT_OT_mode_set().

◆ object_modifier_add_asset_register()

◆ object_modifier_check_move_after()

bool blender::ed::object::object_modifier_check_move_after ( ReportList * reports,
eReportType error_type,
ModifierData * md,
ModifierData * md_next )
static

◆ object_modifier_check_move_before()

bool blender::ed::object::object_modifier_check_move_before ( ReportList * reports,
eReportType error_type,
ModifierData * md,
ModifierData * md_prev )
static

◆ object_modifier_remove()

◆ object_modifier_safe_to_delete()

bool blender::ed::object::object_modifier_safe_to_delete ( Main * bmain,
Object * ob,
ModifierData * exclude,
ModifierType type )
static

Definition at line 330 of file object_modifier.cc.

References iter_other(), object_has_modifier(), and object_has_modifier_cb().

Referenced by object_modifier_remove().

◆ object_modifiers_copy_exec()

◆ object_orient_to_location()

bool blender::ed::object::object_orient_to_location ( Object * ob,
const float rot_orig[3][3],
const float axis[3],
const float location[3],
const bool z_flip )
static

◆ object_origin_clear_exec()

◆ object_origin_set_exec()

wmOperatorStatus blender::ed::object::object_origin_set_exec ( bContext * C,
wmOperator * op )
static

Definition at line 1285 of file object_transform.cc.

References add_v3_v3(), arithmetic_mean(), BKE_armature_copy_bone_transforms(), BKE_curve_center_median(), BKE_curve_minmax(), BKE_curve_translate(), BKE_id_is_editable(), BKE_lattice_center_median(), BKE_lattice_minmax(), BKE_lattice_translate(), BKE_mball_center_bounds(), BKE_mball_center_median(), BKE_mball_translate(), BKE_mesh_center_median(), BKE_mesh_center_of_surface(), BKE_mesh_center_of_volume(), BKE_object_batch_cache_dirty_tag(), BKE_object_minmax_dupli(), BKE_object_to_mat4(), BKE_object_transform_copy(), BKE_object_where_is_calc(), BKE_pose_where_is(), BKE_report(), BKE_reportf(), BMEditMesh::bm, BM_ITER_MESH, BM_VERTS_OF_MESH, C, RenderData::cfra, BMVert::co, copy_v3_v3(), CTX_data_active_object(), CTX_data_edit_object(), CTX_data_ensure_evaluated_depsgraph(), CTX_data_main(), CTX_data_scene(), CU_3D, Scene::cursor, blender::Array< T, InlineBufferCapacity, Allocator >::data(), Object::data, DEG_get_evaluated(), DEG_id_tag_update(), depsgraph, GreasePencilFrame::drawing_index, ED_armature_origin_set(), EDBM_mesh_normals_update(), ELEM, Curve::flag, Object::flag, float, blender::Map< Key, Value, InlineBufferCapacity, ProbingStrategy, Hash, IsEqual, Slot, Allocator >::foreach_item(), blender::bke::greasepencil::Layer::frames(), Curves::geometry, GEOMETRY_TO_ORIGIN, GP_DRAWING, i, bArmature::id, Curve::id, Curves::id, GreasePencil::id, Lattice::id, MetaBall::id, Object::id, ID_IS_EDITABLE, ID_IS_OVERRIDE_LIBRARY, ID_REAL_USERS, ID_RECALC_GEOMETRY, ID_RECALC_SYNC_TO_EVAL, ID_RECALC_TRANSFORM, ID_TAG_DOIT, ignore_parent_tx(), blender::Array< T, InlineBufferCapacity, Allocator >::index_range(), blender::Span< T >::index_range(), INIT_MINMAX, blender::math::invert(), invert_m4_m4(), blender::Array< T, InlineBufferCapacity, Allocator >::is_empty(), LISTBASE_FOREACH, blender::bke::greasepencil::Layer::local_transform(), View3DCursor::location, madd_v3_v3fl(), max, blender::bke::mesh_translate(), mid_v3_v3v3(), blender::math::midpoint(), min, minmax_v3v3_v3(), mul_m4_v3(), mul_v3_mat3_m4v3(), NC_OBJECT, ND_TRANSFORM, negate_v3_v3(), OB_ARMATURE, OB_CURVES, OB_CURVES_LEGACY, OB_DONE, OB_DUPLICOLLECTION, OB_FONT, OB_GREASE_PENCIL, OB_LATTICE, OB_MBALL, OB_MESH, OB_POINTCLOUD, OB_SURF, object_origin_set_exec(), Main::objects, OPERATOR_CANCELLED, OPERATOR_FINISHED, ORIGIN_TO_CENTER_OF_MASS_SURFACE, ORIGIN_TO_CENTER_OF_MASS_VOLUME, ORIGIN_TO_CURSOR, wmOperator::ptr, Scene::r, wmOperator::reports, RNA_enum_get(), RNA_property_enum_get(), RNA_property_enum_set(), RNA_property_is_set(), RNA_struct_find_property(), RPT_ERROR, RPT_WARNING, Object::runtime, blender::Array< T, InlineBufferCapacity, Allocator >::size(), blender::Span< T >::size(), sorted_selected_editable_objects(), blender::bke::greasepencil::Drawing::strokes_for_write(), sub_v3_v3(), ID::tag, Scene::toolsettings, BMesh::totvert, blender::math::transform_direction(), ToolSettings::transform_pivot_point, blender::math::transform_point(), translate_positions(), GreasePencilDrawingBase::type, Object::type, V3D_AROUND_CENTER_BOUNDS, V3D_AROUND_CENTER_MEDIAN, WM_event_add_notifier(), wrap(), Curve::xof, Curve::yof, and zero_v3().

Referenced by object_origin_set_exec(), and OBJECT_OT_origin_set().

◆ OBJECT_OT_add()

◆ OBJECT_OT_add_named()

◆ OBJECT_OT_armature_add()

void blender::ed::object::OBJECT_OT_armature_add ( wmOperatorType * ot)

◆ OBJECT_OT_bake()

◆ OBJECT_OT_bake_image()

void blender::ed::object::OBJECT_OT_bake_image ( wmOperatorType * ot)

◆ OBJECT_OT_camera_add()

◆ OBJECT_OT_camera_custom_update()

void blender::ed::object::OBJECT_OT_camera_custom_update ( wmOperatorType * ot)

◆ OBJECT_OT_clear_override_library()

void blender::ed::object::OBJECT_OT_clear_override_library ( wmOperatorType * ot)

◆ OBJECT_OT_collection_add()

void blender::ed::object::OBJECT_OT_collection_add ( wmOperatorType * ot)

◆ OBJECT_OT_collection_external_asset_drop()

◆ OBJECT_OT_collection_instance_add()

◆ OBJECT_OT_collection_link()

◆ OBJECT_OT_collection_objects_select()

void blender::ed::object::OBJECT_OT_collection_objects_select ( wmOperatorType * ot)

◆ OBJECT_OT_collection_remove()

void blender::ed::object::OBJECT_OT_collection_remove ( wmOperatorType * ot)

◆ OBJECT_OT_collection_unlink()

void blender::ed::object::OBJECT_OT_collection_unlink ( wmOperatorType * ot)

◆ OBJECT_OT_constraint_add()

◆ OBJECT_OT_constraint_add_with_targets()

◆ OBJECT_OT_constraints_clear()

void blender::ed::object::OBJECT_OT_constraints_clear ( wmOperatorType * ot)

◆ OBJECT_OT_constraints_copy()

void blender::ed::object::OBJECT_OT_constraints_copy ( wmOperatorType * ot)

◆ OBJECT_OT_convert()

◆ OBJECT_OT_correctivesmooth_bind()

void blender::ed::object::OBJECT_OT_correctivesmooth_bind ( wmOperatorType * ot)

◆ OBJECT_OT_curves_empty_hair_add()

void blender::ed::object::OBJECT_OT_curves_empty_hair_add ( wmOperatorType * ot)

◆ OBJECT_OT_curves_random_add()

void blender::ed::object::OBJECT_OT_curves_random_add ( wmOperatorType * ot)

◆ OBJECT_OT_data_instance_add()

◆ OBJECT_OT_data_transfer()

◆ OBJECT_OT_datalayout_transfer()

◆ OBJECT_OT_delete()

◆ OBJECT_OT_drop_geometry_nodes()

void blender::ed::object::OBJECT_OT_drop_geometry_nodes ( wmOperatorType * ot)

Used for drop-box. Assigns to object under cursor, creates a new geometry nodes modifier.

Definition at line 3145 of file object_relations.cc.

References drop_geometry_nodes_invoke(), ED_operator_view3d_active(), INT32_MAX, INT32_MIN, OPTYPE_INTERNAL, OPTYPE_REGISTER, OPTYPE_UNDO, ot, PROP_HIDDEN, PROP_SKIP_SAVE, RNA_def_boolean(), RNA_def_int(), and RNA_def_property_flag().

Referenced by operatortypes_object().

◆ OBJECT_OT_drop_named_material()

void blender::ed::object::OBJECT_OT_drop_named_material ( wmOperatorType * ot)

Used for drop-box. Assigns to object under cursor, only first material slot.

Definition at line 3033 of file object_relations.cc.

References drop_named_material_invoke(), ED_operator_objectmode_with_view3d_poll_msg(), OPTYPE_INTERNAL, OPTYPE_UNDO, ot, and WM_operator_properties_id_lookup().

Referenced by operatortypes_object().

◆ OBJECT_OT_duplicate()

◆ OBJECT_OT_duplicates_make_real()

◆ OBJECT_OT_editmode_toggle()

void blender::ed::object::OBJECT_OT_editmode_toggle ( wmOperatorType * ot)

◆ OBJECT_OT_effector_add()

void blender::ed::object::OBJECT_OT_effector_add ( wmOperatorType * ot)

◆ OBJECT_OT_empty_add()

◆ OBJECT_OT_empty_image_add()

◆ OBJECT_OT_explode_refresh()

void blender::ed::object::OBJECT_OT_explode_refresh ( wmOperatorType * ot)

◆ OBJECT_OT_forcefield_toggle()

void blender::ed::object::OBJECT_OT_forcefield_toggle ( wmOperatorType * ot)

◆ OBJECT_OT_geometry_node_tree_copy_assign()

void blender::ed::object::OBJECT_OT_geometry_node_tree_copy_assign ( wmOperatorType * ot)

◆ OBJECT_OT_geometry_nodes_input_attribute_toggle()

void blender::ed::object::OBJECT_OT_geometry_nodes_input_attribute_toggle ( wmOperatorType * ot)

◆ OBJECT_OT_grease_pencil_add()

◆ OBJECT_OT_grease_pencil_dash_modifier_segment_add()

void blender::ed::object::OBJECT_OT_grease_pencil_dash_modifier_segment_add ( wmOperatorType * ot)

◆ OBJECT_OT_grease_pencil_dash_modifier_segment_move()

void blender::ed::object::OBJECT_OT_grease_pencil_dash_modifier_segment_move ( wmOperatorType * ot)

◆ OBJECT_OT_grease_pencil_dash_modifier_segment_remove()

void blender::ed::object::OBJECT_OT_grease_pencil_dash_modifier_segment_remove ( wmOperatorType * ot)

◆ OBJECT_OT_grease_pencil_time_modifier_segment_add()

void blender::ed::object::OBJECT_OT_grease_pencil_time_modifier_segment_add ( wmOperatorType * ot)

◆ OBJECT_OT_grease_pencil_time_modifier_segment_move()

void blender::ed::object::OBJECT_OT_grease_pencil_time_modifier_segment_move ( wmOperatorType * ot)

◆ OBJECT_OT_grease_pencil_time_modifier_segment_remove()

void blender::ed::object::OBJECT_OT_grease_pencil_time_modifier_segment_remove ( wmOperatorType * ot)

◆ OBJECT_OT_hide_collection()

◆ OBJECT_OT_hide_view_clear()

void blender::ed::object::OBJECT_OT_hide_view_clear ( wmOperatorType * ot)

◆ OBJECT_OT_hide_view_set()

void blender::ed::object::OBJECT_OT_hide_view_set ( wmOperatorType * ot)

◆ OBJECT_OT_hook_add_newob()

void blender::ed::object::OBJECT_OT_hook_add_newob ( wmOperatorType * ot)

◆ OBJECT_OT_hook_add_selob()

void blender::ed::object::OBJECT_OT_hook_add_selob ( wmOperatorType * ot)

◆ OBJECT_OT_hook_assign()

◆ OBJECT_OT_hook_recenter()

◆ OBJECT_OT_hook_remove()

◆ OBJECT_OT_hook_reset()

◆ OBJECT_OT_hook_select()

◆ OBJECT_OT_join()

void blender::ed::object::OBJECT_OT_join ( wmOperatorType * ot)

◆ OBJECT_OT_join_shapes()

◆ OBJECT_OT_laplaciandeform_bind()

void blender::ed::object::OBJECT_OT_laplaciandeform_bind ( wmOperatorType * ot)

◆ OBJECT_OT_lattice_add_to_selected()

◆ OBJECT_OT_light_add()

◆ OBJECT_OT_light_linking_blocker_collection_new()

void blender::ed::object::OBJECT_OT_light_linking_blocker_collection_new ( wmOperatorType * ot)

◆ OBJECT_OT_light_linking_blockers_link()

◆ OBJECT_OT_light_linking_blockers_select()

void blender::ed::object::OBJECT_OT_light_linking_blockers_select ( wmOperatorType * ot)

◆ OBJECT_OT_light_linking_receiver_collection_new()

void blender::ed::object::OBJECT_OT_light_linking_receiver_collection_new ( wmOperatorType * ot)

◆ OBJECT_OT_light_linking_receivers_link()

◆ OBJECT_OT_light_linking_receivers_select()

void blender::ed::object::OBJECT_OT_light_linking_receivers_select ( wmOperatorType * ot)

◆ OBJECT_OT_light_linking_unlink_from_collection()

void blender::ed::object::OBJECT_OT_light_linking_unlink_from_collection ( wmOperatorType * ot)

◆ OBJECT_OT_lightprobe_add()

void blender::ed::object::OBJECT_OT_lightprobe_add ( wmOperatorType * ot)

◆ OBJECT_OT_link_to_collection()

◆ OBJECT_OT_location_clear()

void blender::ed::object::OBJECT_OT_location_clear ( wmOperatorType * ot)

◆ OBJECT_OT_make_links_data()

◆ OBJECT_OT_make_links_scene()

◆ OBJECT_OT_make_local()

◆ OBJECT_OT_make_override_library()

◆ OBJECT_OT_make_single_user()

◆ OBJECT_OT_meshdeform_bind()

void blender::ed::object::OBJECT_OT_meshdeform_bind ( wmOperatorType * ot)

◆ OBJECT_OT_metaball_add()

◆ OBJECT_OT_mode_set()

◆ OBJECT_OT_mode_set_with_submode()

void blender::ed::object::OBJECT_OT_mode_set_with_submode ( wmOperatorType * ot)

◆ OBJECT_OT_modifier_add()

◆ OBJECT_OT_modifier_add_node_group()

◆ OBJECT_OT_modifier_apply()

◆ OBJECT_OT_modifier_apply_as_shapekey()

◆ OBJECT_OT_modifier_convert()

void blender::ed::object::OBJECT_OT_modifier_convert ( wmOperatorType * ot)

◆ OBJECT_OT_modifier_copy()

◆ OBJECT_OT_modifier_copy_to_selected()

◆ OBJECT_OT_modifier_move_down()

void blender::ed::object::OBJECT_OT_modifier_move_down ( wmOperatorType * ot)

◆ OBJECT_OT_modifier_move_to_index()

◆ OBJECT_OT_modifier_move_up()

void blender::ed::object::OBJECT_OT_modifier_move_up ( wmOperatorType * ot)

◆ OBJECT_OT_modifier_remove()

◆ OBJECT_OT_modifier_set_active()

void blender::ed::object::OBJECT_OT_modifier_set_active ( wmOperatorType * ot)

◆ OBJECT_OT_modifiers_clear()

void blender::ed::object::OBJECT_OT_modifiers_clear ( wmOperatorType * ot)

◆ OBJECT_OT_modifiers_copy_to_selected()

void blender::ed::object::OBJECT_OT_modifiers_copy_to_selected ( wmOperatorType * ot)

◆ OBJECT_OT_move_to_collection()

◆ OBJECT_OT_multires_base_apply()

◆ OBJECT_OT_multires_external_pack()

void blender::ed::object::OBJECT_OT_multires_external_pack ( wmOperatorType * ot)

◆ OBJECT_OT_multires_external_save()

◆ OBJECT_OT_multires_higher_levels_delete()

void blender::ed::object::OBJECT_OT_multires_higher_levels_delete ( wmOperatorType * ot)

◆ OBJECT_OT_multires_rebuild_subdiv()

void blender::ed::object::OBJECT_OT_multires_rebuild_subdiv ( wmOperatorType * ot)

◆ OBJECT_OT_multires_reshape()

void blender::ed::object::OBJECT_OT_multires_reshape ( wmOperatorType * ot)

◆ OBJECT_OT_multires_subdivide()

◆ OBJECT_OT_multires_unsubdivide()

void blender::ed::object::OBJECT_OT_multires_unsubdivide ( wmOperatorType * ot)

◆ OBJECT_OT_ocean_bake()

void blender::ed::object::OBJECT_OT_ocean_bake ( wmOperatorType * ot)

◆ OBJECT_OT_origin_clear()

void blender::ed::object::OBJECT_OT_origin_clear ( wmOperatorType * ot)

◆ OBJECT_OT_origin_set()

◆ OBJECT_OT_parent_clear()

void blender::ed::object::OBJECT_OT_parent_clear ( wmOperatorType * ot)

◆ OBJECT_OT_parent_inverse_apply()

void blender::ed::object::OBJECT_OT_parent_inverse_apply ( wmOperatorType * ot)

◆ OBJECT_OT_parent_no_inverse_set()

void blender::ed::object::OBJECT_OT_parent_no_inverse_set ( wmOperatorType * ot)

◆ OBJECT_OT_parent_set()

◆ OBJECT_OT_paths_calculate()

◆ OBJECT_OT_paths_clear()

◆ OBJECT_OT_paths_update()

void blender::ed::object::OBJECT_OT_paths_update ( wmOperatorType * ot)

◆ OBJECT_OT_paths_update_visible()

void blender::ed::object::OBJECT_OT_paths_update_visible ( wmOperatorType * ot)

◆ OBJECT_OT_pointcloud_random_add()

void blender::ed::object::OBJECT_OT_pointcloud_random_add ( wmOperatorType * ot)

◆ OBJECT_OT_posemode_toggle()

void blender::ed::object::OBJECT_OT_posemode_toggle ( wmOperatorType * ot)

◆ OBJECT_OT_quadriflow_remesh()

◆ OBJECT_OT_reset_override_library()

void blender::ed::object::OBJECT_OT_reset_override_library ( wmOperatorType * ot)

◆ OBJECT_OT_rotation_clear()

void blender::ed::object::OBJECT_OT_rotation_clear ( wmOperatorType * ot)

◆ OBJECT_OT_scale_clear()

void blender::ed::object::OBJECT_OT_scale_clear ( wmOperatorType * ot)

◆ OBJECT_OT_select_all()

void blender::ed::object::OBJECT_OT_select_all ( wmOperatorType * ot)

◆ OBJECT_OT_select_by_type()

◆ OBJECT_OT_select_grouped()

void blender::ed::object::OBJECT_OT_select_grouped ( wmOperatorType * ot)

◆ OBJECT_OT_select_less()

void blender::ed::object::OBJECT_OT_select_less ( wmOperatorType * ot)

◆ OBJECT_OT_select_linked()

void blender::ed::object::OBJECT_OT_select_linked ( wmOperatorType * ot)

◆ OBJECT_OT_select_mirror()

void blender::ed::object::OBJECT_OT_select_mirror ( wmOperatorType * ot)

◆ OBJECT_OT_select_more()

void blender::ed::object::OBJECT_OT_select_more ( wmOperatorType * ot)

◆ OBJECT_OT_select_random()

void blender::ed::object::OBJECT_OT_select_random ( wmOperatorType * ot)

◆ OBJECT_OT_select_same_collection()

void blender::ed::object::OBJECT_OT_select_same_collection ( wmOperatorType * ot)

◆ OBJECT_OT_shade_auto_smooth()

◆ OBJECT_OT_shade_flat()

void blender::ed::object::OBJECT_OT_shade_flat ( wmOperatorType * ot)

◆ OBJECT_OT_shade_smooth()

void blender::ed::object::OBJECT_OT_shade_smooth ( wmOperatorType * ot)

◆ OBJECT_OT_shade_smooth_by_angle()

◆ OBJECT_OT_shaderfx_add()

◆ OBJECT_OT_shaderfx_copy()

void blender::ed::object::OBJECT_OT_shaderfx_copy ( wmOperatorType * ot)

◆ OBJECT_OT_shaderfx_move_down()

void blender::ed::object::OBJECT_OT_shaderfx_move_down ( wmOperatorType * ot)

◆ OBJECT_OT_shaderfx_move_to_index()

void blender::ed::object::OBJECT_OT_shaderfx_move_to_index ( wmOperatorType * ot)

◆ OBJECT_OT_shaderfx_move_up()

void blender::ed::object::OBJECT_OT_shaderfx_move_up ( wmOperatorType * ot)

◆ OBJECT_OT_shaderfx_remove()

◆ OBJECT_OT_shape_key_add()

void blender::ed::object::OBJECT_OT_shape_key_add ( wmOperatorType * ot)

◆ OBJECT_OT_shape_key_clear()

void blender::ed::object::OBJECT_OT_shape_key_clear ( wmOperatorType * ot)

◆ OBJECT_OT_shape_key_copy()

void blender::ed::object::OBJECT_OT_shape_key_copy ( wmOperatorType * ot)

◆ OBJECT_OT_shape_key_lock()

void blender::ed::object::OBJECT_OT_shape_key_lock ( wmOperatorType * ot)

◆ OBJECT_OT_shape_key_make_basis()

void blender::ed::object::OBJECT_OT_shape_key_make_basis ( wmOperatorType * ot)

◆ OBJECT_OT_shape_key_mirror()

void blender::ed::object::OBJECT_OT_shape_key_mirror ( wmOperatorType * ot)

◆ OBJECT_OT_shape_key_move()

void blender::ed::object::OBJECT_OT_shape_key_move ( wmOperatorType * ot)

◆ OBJECT_OT_shape_key_remove()

◆ OBJECT_OT_shape_key_retime()

void blender::ed::object::OBJECT_OT_shape_key_retime ( wmOperatorType * ot)

◆ OBJECT_OT_skin_armature_create()

void blender::ed::object::OBJECT_OT_skin_armature_create ( wmOperatorType * ot)

◆ OBJECT_OT_skin_loose_mark_clear()

void blender::ed::object::OBJECT_OT_skin_loose_mark_clear ( wmOperatorType * ot)

◆ OBJECT_OT_skin_radii_equalize()

void blender::ed::object::OBJECT_OT_skin_radii_equalize ( wmOperatorType * ot)

◆ OBJECT_OT_skin_root_mark()

void blender::ed::object::OBJECT_OT_skin_root_mark ( wmOperatorType * ot)

◆ OBJECT_OT_speaker_add()

void blender::ed::object::OBJECT_OT_speaker_add ( wmOperatorType * ot)

◆ OBJECT_OT_surfacedeform_bind()

void blender::ed::object::OBJECT_OT_surfacedeform_bind ( wmOperatorType * ot)

◆ OBJECT_OT_text_add()

void blender::ed::object::OBJECT_OT_text_add ( wmOperatorType * ot)

◆ OBJECT_OT_track_clear()

void blender::ed::object::OBJECT_OT_track_clear ( wmOperatorType * ot)

◆ OBJECT_OT_track_set()

void blender::ed::object::OBJECT_OT_track_set ( wmOperatorType * ot)

◆ OBJECT_OT_transfer_mode()

void blender::ed::object::OBJECT_OT_transfer_mode ( wmOperatorType * ot)

◆ OBJECT_OT_transform_apply()

◆ OBJECT_OT_transform_axis_target()

◆ OBJECT_OT_transform_to_mouse()

◆ OBJECT_OT_unlink_data()

void blender::ed::object::OBJECT_OT_unlink_data ( wmOperatorType * ot)
Note
Only for empty-image objects, this operator is needed

Definition at line 3213 of file object_relations.cc.

References object_unlink_data_exec(), OPTYPE_INTERNAL, and ot.

Referenced by operatortypes_object().

◆ OBJECT_OT_update_shapes()

◆ OBJECT_OT_vertex_group_add()

void blender::ed::object::OBJECT_OT_vertex_group_add ( wmOperatorType * ot)

◆ OBJECT_OT_vertex_group_assign()

void blender::ed::object::OBJECT_OT_vertex_group_assign ( wmOperatorType * ot)

◆ OBJECT_OT_vertex_group_assign_new()

void blender::ed::object::OBJECT_OT_vertex_group_assign_new ( wmOperatorType * ot)

◆ OBJECT_OT_vertex_group_clean()

◆ OBJECT_OT_vertex_group_copy()

void blender::ed::object::OBJECT_OT_vertex_group_copy ( wmOperatorType * ot)

◆ OBJECT_OT_vertex_group_copy_to_selected()

void blender::ed::object::OBJECT_OT_vertex_group_copy_to_selected ( wmOperatorType * ot)

◆ OBJECT_OT_vertex_group_deselect()

void blender::ed::object::OBJECT_OT_vertex_group_deselect ( wmOperatorType * ot)

◆ OBJECT_OT_vertex_group_invert()

◆ OBJECT_OT_vertex_group_levels()

◆ OBJECT_OT_vertex_group_limit_total()

◆ OBJECT_OT_vertex_group_lock()

◆ OBJECT_OT_vertex_group_mirror()

void blender::ed::object::OBJECT_OT_vertex_group_mirror ( wmOperatorType * ot)

◆ OBJECT_OT_vertex_group_move()

void blender::ed::object::OBJECT_OT_vertex_group_move ( wmOperatorType * ot)

◆ OBJECT_OT_vertex_group_normalize()

void blender::ed::object::OBJECT_OT_vertex_group_normalize ( wmOperatorType * ot)

◆ OBJECT_OT_vertex_group_normalize_all()

◆ OBJECT_OT_vertex_group_quantize()

◆ OBJECT_OT_vertex_group_remove()

◆ OBJECT_OT_vertex_group_remove_from()

◆ OBJECT_OT_vertex_group_select()

void blender::ed::object::OBJECT_OT_vertex_group_select ( wmOperatorType * ot)

◆ OBJECT_OT_vertex_group_set_active()

◆ OBJECT_OT_vertex_group_smooth()

◆ OBJECT_OT_vertex_group_sort()

◆ OBJECT_OT_vertex_parent_set()

void blender::ed::object::OBJECT_OT_vertex_parent_set ( wmOperatorType * ot)

◆ OBJECT_OT_vertex_weight_copy()

void blender::ed::object::OBJECT_OT_vertex_weight_copy ( wmOperatorType * ot)

◆ OBJECT_OT_vertex_weight_delete()

◆ OBJECT_OT_vertex_weight_normalize_active_vertex()

◆ OBJECT_OT_vertex_weight_paste()

◆ OBJECT_OT_vertex_weight_set_active()

◆ OBJECT_OT_visual_geometry_to_objects()

◆ OBJECT_OT_visual_transform_apply()

void blender::ed::object::OBJECT_OT_visual_transform_apply ( wmOperatorType * ot)

◆ OBJECT_OT_volume_add()

void blender::ed::object::OBJECT_OT_volume_add ( wmOperatorType * ot)

◆ OBJECT_OT_volume_import()

◆ OBJECT_OT_voxel_remesh()

void blender::ed::object::OBJECT_OT_voxel_remesh ( wmOperatorType * ot)

Definition at line 177 of file object_remesh.cc.

References object_remesh_poll(), OPTYPE_REGISTER, OPTYPE_UNDO, ot, and voxel_remesh_exec().

Referenced by operatortypes_object().

◆ OBJECT_OT_voxel_size_edit()

void blender::ed::object::OBJECT_OT_voxel_size_edit ( wmOperatorType * ot)

◆ object_overlay_mode_transfer_animation_start()

void blender::ed::object::object_overlay_mode_transfer_animation_start ( bContext * C,
Object * ob_dst )
static

◆ object_parent_in_set()

bool blender::ed::object::object_parent_in_set ( const Set< Object * > & objects_set,
Object * ob )
static

◆ object_parent_inverse_apply_exec()

◆ object_path_convert_range()

◆ object_pointcloud_add_exec()

◆ object_pose_tag_update()

void blender::ed::object::object_pose_tag_update ( Main * bmain,
Object * ob )
static

◆ object_rand_transverts()

bool blender::ed::object::object_rand_transverts ( TransVertStore * tvs,
const float offset,
const float uniform,
const float normal_factor,
const uint seed )
static

◆ object_rand_verts_exec()

◆ object_remesh_poll()

◆ object_remove_parent_deform_modifiers()

◆ object_rotation_clear_exec()

wmOperatorStatus blender::ed::object::object_rotation_clear_exec ( bContext * C,
wmOperator * op )
static

◆ object_scale_clear_exec()

wmOperatorStatus blender::ed::object::object_scale_clear_exec ( bContext * C,
wmOperator * op )
static

◆ object_select_all_by_instance_collection()

bool blender::ed::object::object_select_all_by_instance_collection ( bContext * C,
Object * ob )
static

◆ object_select_all_by_library()

bool blender::ed::object::object_select_all_by_library ( bContext * C,
Library * lib )
static

◆ object_select_all_by_library_obdata()

bool blender::ed::object::object_select_all_by_library_obdata ( bContext * C,
Library * lib )
static

◆ object_select_all_by_material()

bool blender::ed::object::object_select_all_by_material ( bContext * C,
Material * mat )
static

◆ object_select_all_by_obdata()

bool blender::ed::object::object_select_all_by_obdata ( bContext * C,
void * obdata )
static

◆ object_select_all_by_particle()

bool blender::ed::object::object_select_all_by_particle ( bContext * C,
Object * ob )
static

◆ object_select_all_exec()

◆ object_select_by_type_exec()

◆ object_select_grouped_exec()

◆ object_select_less_exec()

◆ object_select_linked_exec()

◆ object_select_mirror_exec()

◆ object_select_more_exec()

◆ object_select_more_less()

◆ object_select_random_exec()

◆ object_select_same_collection_exec()

◆ object_shaderfx_remove()

bool blender::ed::object::object_shaderfx_remove ( Main * bmain,
Object * ob,
ShaderFxData * fx,
bool *  )
static

◆ object_shape_key_add()

void blender::ed::object::object_shape_key_add ( bContext * C,
Object * ob,
const bool from_mix )
static

◆ object_shape_key_mirror()

bool blender::ed::object::object_shape_key_mirror ( bContext * C,
Object * ob,
int * r_totmirr,
int * r_totfail,
bool use_topology )
static

◆ object_single_user_make()

void blender::ed::object::object_single_user_make ( Main * bmain,
Scene * scene,
Object * ob )

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

Definition at line 1866 of file object_relations.cc.

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

Referenced by template_id_cb().

◆ object_speaker_add_exec()

◆ object_test_constraint()

void blender::ed::object::object_test_constraint ( Main * bmain,
Object * ob,
bConstraint * con )
static

◆ object_test_constraints()

void blender::ed::object::object_test_constraints ( Main * bmain,
Object * ob )

◆ object_track_clear_exec()

◆ object_transfer_mode_invoke()

◆ object_transfer_mode_poll()

bool blender::ed::object::object_transfer_mode_poll ( bContext * C)
static

◆ object_transfer_mode_reposition_view_pivot()

void blender::ed::object::object_transfer_mode_reposition_view_pivot ( ARegion * region,
Paint * paint,
const int mval[2] )
static

◆ object_transfer_mode_to_base()

◆ object_transform_apply_exec()

◆ object_transform_apply_invoke()

◆ object_transform_axis_target_calc_depth_init()

◆ object_transform_axis_target_cancel()

◆ object_transform_axis_target_free_data()

◆ object_transform_axis_target_invoke()

wmOperatorStatus blender::ed::object::object_transform_axis_target_invoke ( bContext * C,
wmOperator * op,
const wmEvent * event )
static

◆ object_transform_axis_target_modal()

wmOperatorStatus blender::ed::object::object_transform_axis_target_modal ( bContext * C,
wmOperator * op,
const wmEvent * event )
static

Definition at line 2156 of file object_transform.cc.

References add_v3_v3(), blender::animrig::autokeyframe_property(), C, RenderData::cfra, copy_m3_m4(), copy_v3_v3(), CTX_data_scene(), wmOperator::customdata, DEG_id_tag_update(), blender::ed::object::XFormAxisData::depth, ViewDepths::depth_range, blender::ed::object::XFormAxisData::depths, dot_v3v3(), ED_region_tag_redraw(), ED_view3d_depth_read_cached(), ED_view3d_depth_read_cached_normal(), ED_view3d_depth_unproject_v3(), ELEM, EVT_ESCKEY, EVT_PADENTER, EVT_RETKEY, fabsf, ViewDepths::h, i, Object::id, ID_RECALC_TRANSFORM, blender::ed::object::XFormAxisData::init_event, invert_m3_m3(), blender::ed::object::XFormAxisData::is_depth_valid, blender::ed::object::XFormAxisData::is_normal_valid, blender::ed::object::XFormAxisData::is_translate, blender::ed::object::XFormAxisItem::is_z_flip, ISMOUSE_BUTTON, KM_CTRL, KM_RELEASE, LEFTMOUSE, len_v3v3(), madd_v3_v3fl(), MOUSEMOVE, mul_m3_m3m3(), mul_m3_v3(), wmEvent::mval, NC_OBJECT, ND_TRANSFORM, blender::ed::object::XFormAxisData::normal, normalize_m3(), normalize_v3(), normalize_v3_v3(), blender::ed::object::XFormAxisItem::ob, object_apply_location(), blender::ed::object::XFormAxisData::object_data, object_orient_to_location(), object_transform_axis_target_calc_depth_init(), object_transform_axis_target_cancel(), object_transform_axis_target_free_data(), object_transform_axis_target_modal(), OPERATOR_CANCELLED, OPERATOR_FINISHED, OPERATOR_RUNNING_MODAL, blender::ed::object::XFormAxisData::prev, ptr, Scene::r, ViewContext::region, RIGHTMOUSE, RNA_pointer_create_discrete(), RNA_struct_find_property(), blender::ed::object::XFormAxisItem::rot_mat, ROT_MODE_AXISANGLE, ROT_MODE_QUAT, Object::rotmode, Object::runtime, wmEvent::type, wmEvent::val, blender::ed::object::XFormAxisData::vc, view3d_operator_needs_gpu(), ViewDepths::w, WM_event_add_notifier(), x, blender::ed::object::XFormAxisItem::xform_dist, blender::ed::object::XFormAxisItem::xform_rot_offset, and y.

Referenced by OBJECT_OT_transform_axis_target(), and object_transform_axis_target_modal().

◆ object_transform_to_mouse_exec()

◆ object_unlink_data_exec()

◆ object_update_all_paths_exec()

◆ object_update_all_paths_poll()

bool blender::ed::object::object_update_all_paths_poll ( bContext * )
static

Definition at line 1518 of file object_edit.cc.

Referenced by OBJECT_OT_paths_update_visible().

◆ object_update_paths_exec()

◆ object_update_paths_poll()

bool blender::ed::object::object_update_paths_poll ( bContext * C)
static

◆ object_update_shapes_poll()

bool blender::ed::object::object_update_shapes_poll ( bContext * C)
static

◆ object_volume_add()

Object * blender::ed::object::object_volume_add ( bContext * C,
wmOperator * op,
const char * name )
static

Definition at line 41 of file object_volume.cc.

References add_generic_get_opts(), add_type(), C, name, OB_VOLUME, and rot.

Referenced by object_volume_add_exec(), and volume_import_exec().

◆ object_volume_add_exec()

wmOperatorStatus blender::ed::object::object_volume_add_exec ( bContext * C,
wmOperator * op )
static

Definition at line 51 of file object_volume.cc.

References C, object_volume_add(), OPERATOR_CANCELLED, and OPERATOR_FINISHED.

Referenced by OBJECT_OT_volume_add().

◆ object_warp_calc_view_matrix()

void blender::ed::object::object_warp_calc_view_matrix ( float r_mat_view[4][4],
float r_center_view[3],
Object * obedit,
const float viewmat[4][4],
const float center[3],
const float offset_angle )
static

Definition at line 32 of file object_warp.cc.

References axis_angle_to_mat4_single(), mul_m4_m4m4(), and mul_v3_m4v3().

Referenced by object_warp_verts_exec().

◆ object_warp_transverts()

void blender::ed::object::object_warp_transverts ( TransVertStore * tvs,
const float mat_view[4][4],
const float center_view[3],
const float angle_,
const float min,
const float max )
static

◆ object_warp_transverts_minmax_x()

void blender::ed::object::object_warp_transverts_minmax_x ( TransVertStore * tvs,
const float mat_view[4][4],
const float center_view[3],
float * r_min,
float * r_max )
static

◆ object_warp_verts_exec()

◆ object_xform_array_m4()

void blender::ed::object::object_xform_array_m4 ( Object ** objects,
uint objects_len,
const float matrix[4][4] )

◆ object_xform_skip_child_container_destroy()

void blender::ed::object::object_xform_skip_child_container_destroy ( XFormObjectSkipChild_Container * xcs)

◆ object_xform_skip_child_container_item_ensure()

void blender::ed::object::object_xform_skip_child_container_item_ensure ( XFormObjectSkipChild_Container * xcs,
Object * ob,
Object * ob_parent_recurse,
int mode )

◆ object_xform_skip_child_container_update_all()

◆ objects_add_active_exec()

◆ objects_bake_render_invoke()

wmOperatorStatus blender::ed::object::objects_bake_render_invoke ( bContext * C,
wmOperator * op,
const wmEvent *  )
static

◆ objects_bake_render_modal()

wmOperatorStatus blender::ed::object::objects_bake_render_modal ( bContext * C,
wmOperator * ,
const wmEvent * event )
static

◆ objects_in_mode_or_selected()

Vector< Object * > blender::ed::object::objects_in_mode_or_selected ( bContext * C,
bool(* filter_fn )(const Object *ob, void *user_data),
void * filter_user_data )

Return an array of objects:

  • When in the property space, return the pinned or active object.
  • When in edit-mode/pose-mode, return an array of objects in the mode.
  • Otherwise return selected objects, the callers filter_fn needs to check of they are editable (assuming they need to be modified).

Definition at line 164 of file object_edit.cc.

References BKE_view_layer_active_object_get(), BKE_view_layer_array_from_objects_in_mode_params(), BKE_view_layer_array_selected_objects_params(), BKE_view_layer_synced_ensure(), C, CTX_data_scene(), CTX_data_view_layer(), CTX_wm_area(), ListBase::first, GS, ID_OB, Object::mode, ID::name, OB_MODE_ALL_PAINT, OB_MODE_ALL_PAINT_GPENCIL, OB_MODE_ALL_SCULPT, OB_MODE_EDIT, OB_MODE_POSE, params, SpaceProperties::pinid, SPACE_EMPTY, SPACE_PROPERTIES, SPACE_VIEW3D, ScrArea::spacedata, and ScrArea::spacetype.

Referenced by object_array_for_shading_edit_mode_disabled(), object_array_for_shading_edit_mode_enabled(), and object_array_for_wpaint().

◆ objects_remove_active_exec()

◆ objects_selectable_poll()

◆ objectsolver_clear_inverse_exec()

◆ objectsolver_clear_inverse_invoke()

wmOperatorStatus blender::ed::object::objectsolver_clear_inverse_invoke ( bContext * C,
wmOperator * op,
const wmEvent *  )
static

◆ objectsolver_clear_inverse_poll()

bool blender::ed::object::objectsolver_clear_inverse_poll ( bContext * C)
static

◆ objectsolver_set_inverse_exec()

◆ objectsolver_set_inverse_invoke()

wmOperatorStatus blender::ed::object::objectsolver_set_inverse_invoke ( bContext * C,
wmOperator * op,
const wmEvent *  )
static

◆ ocean_bake_exec()

wmOperatorStatus blender::ed::object::ocean_bake_exec ( bContext * C,
wmOperator * op )
static

Definition at line 3213 of file object_modifier.cc.

References ADT_RECALC_ANIM, OceanModifierData::bakeend, OceanModifierData::bakestart, BKE_animsys_eval_context_construct(), BKE_animsys_evaluate_animdata(), BKE_modifier_path_relbase(), BKE_ocean_add(), BKE_ocean_bake(), BKE_ocean_free_modifier_cache(), BKE_ocean_init_cache(), BKE_ocean_init_from_modifier(), C, OceanModifierData::cached, OceanModifierData::cachepath, RenderData::cfra, OceanModifierData::chop_amount, context_active_object(), CTX_data_depsgraph_pointer(), CTX_data_main(), CTX_data_scene(), CTX_wm_manager(), CTX_wm_window(), DEG_id_tag_update(), depsgraph, OceanCache::duration, edit_modifier_property_get(), eModifierType_Ocean, OceanModifierData::foam_coverage, OceanModifierData::foam_fade, free(), i, Object::id, ID_RECALC_GEOMETRY, MEM_callocN(), MEM_malloc_arrayN(), NC_OBJECT, ND_MODIFIER, blender::ed::object::OceanBakeJob::ocean, oceanbake_endjob(), oceanbake_free(), oceanbake_startjob(), OceanModifierData::oceancache, blender::ed::object::OceanBakeJob::och, blender::ed::object::OceanBakeJob::omd, OPERATOR_CANCELLED, OPERATOR_FINISHED, blender::ed::object::OceanBakeJob::owner, wmOperator::ptr, Scene::r, OceanModifierData::resolution, RNA_boolean_get(), OceanCache::time, OceanModifierData::time, OceanModifierData::wave_scale, WM_event_add_notifier(), WM_JOB_PROGRESS, WM_JOB_TYPE_OBJECT_SIM_OCEAN, WM_jobs_callbacks(), WM_jobs_customdata_set(), WM_jobs_get(), WM_jobs_start(), and WM_jobs_timer().

Referenced by OBJECT_OT_ocean_bake(), and ocean_bake_invoke().

◆ ocean_bake_invoke()

wmOperatorStatus blender::ed::object::ocean_bake_invoke ( bContext * C,
wmOperator * op,
const wmEvent *  )
static

◆ ocean_bake_poll()

bool blender::ed::object::ocean_bake_poll ( bContext * C)
static

Definition at line 3134 of file object_modifier.cc.

References C, and edit_modifier_poll_generic().

Referenced by OBJECT_OT_ocean_bake().

◆ oceanbake_breakjob()

int blender::ed::object::oceanbake_breakjob ( void * )
static

Definition at line 3157 of file object_modifier.cc.

References G.

Referenced by oceanbake_update().

◆ oceanbake_endjob()

◆ oceanbake_free()

void blender::ed::object::oceanbake_free ( void * customdata)
static

Definition at line 3150 of file object_modifier.cc.

Referenced by ocean_bake_exec().

◆ oceanbake_startjob()

◆ oceanbake_update()

void blender::ed::object::oceanbake_update ( void * customdata,
float progress,
int * cancel )
static

◆ operatormacros_object()

void blender::ed::object::operatormacros_object ( )

◆ operatortypes_object()

void blender::ed::object::operatortypes_object ( )

Definition at line 29 of file object_ops.cc.

References collection_exporter_register(), COLLECTION_OT_create(), COLLECTION_OT_objects_add_active(), COLLECTION_OT_objects_remove(), COLLECTION_OT_objects_remove_active(), COLLECTION_OT_objects_remove_all(), CONSTRAINT_OT_apply(), CONSTRAINT_OT_childof_clear_inverse(), CONSTRAINT_OT_childof_set_inverse(), CONSTRAINT_OT_copy(), CONSTRAINT_OT_copy_to_selected(), CONSTRAINT_OT_delete(), CONSTRAINT_OT_followpath_path_animate(), CONSTRAINT_OT_limitdistance_reset(), CONSTRAINT_OT_move_down(), CONSTRAINT_OT_move_to_index(), CONSTRAINT_OT_move_up(), CONSTRAINT_OT_objectsolver_clear_inverse(), CONSTRAINT_OT_objectsolver_set_inverse(), CONSTRAINT_OT_stretchto_reset(), link_to_collection_menu_register(), move_to_collection_menu_register(), object_modifier_add_asset_register(), OBJECT_OT_add(), OBJECT_OT_add_named(), OBJECT_OT_armature_add(), OBJECT_OT_bake(), OBJECT_OT_bake_image(), OBJECT_OT_camera_add(), OBJECT_OT_camera_custom_update(), OBJECT_OT_clear_override_library(), OBJECT_OT_collection_add(), OBJECT_OT_collection_external_asset_drop(), OBJECT_OT_collection_instance_add(), OBJECT_OT_collection_link(), OBJECT_OT_collection_objects_select(), OBJECT_OT_collection_remove(), OBJECT_OT_collection_unlink(), OBJECT_OT_constraint_add(), OBJECT_OT_constraint_add_with_targets(), OBJECT_OT_constraints_clear(), OBJECT_OT_constraints_copy(), OBJECT_OT_convert(), OBJECT_OT_correctivesmooth_bind(), OBJECT_OT_curves_empty_hair_add(), OBJECT_OT_curves_random_add(), OBJECT_OT_data_instance_add(), OBJECT_OT_data_transfer(), OBJECT_OT_datalayout_transfer(), OBJECT_OT_delete(), OBJECT_OT_drop_geometry_nodes(), OBJECT_OT_drop_named_material(), OBJECT_OT_duplicate(), OBJECT_OT_duplicates_make_real(), OBJECT_OT_editmode_toggle(), OBJECT_OT_effector_add(), OBJECT_OT_empty_add(), OBJECT_OT_empty_image_add(), OBJECT_OT_explode_refresh(), OBJECT_OT_forcefield_toggle(), blender::ed::object::bake_simulation::OBJECT_OT_geometry_node_bake_delete_single(), blender::ed::object::bake_simulation::OBJECT_OT_geometry_node_bake_pack_single(), blender::ed::object::bake_simulation::OBJECT_OT_geometry_node_bake_single(), blender::ed::object::bake_simulation::OBJECT_OT_geometry_node_bake_unpack_single(), OBJECT_OT_geometry_node_tree_copy_assign(), OBJECT_OT_geometry_nodes_input_attribute_toggle(), OBJECT_OT_grease_pencil_add(), OBJECT_OT_grease_pencil_dash_modifier_segment_add(), OBJECT_OT_grease_pencil_dash_modifier_segment_move(), OBJECT_OT_grease_pencil_dash_modifier_segment_remove(), OBJECT_OT_grease_pencil_time_modifier_segment_add(), OBJECT_OT_grease_pencil_time_modifier_segment_move(), OBJECT_OT_grease_pencil_time_modifier_segment_remove(), OBJECT_OT_hide_collection(), OBJECT_OT_hide_view_clear(), OBJECT_OT_hide_view_set(), OBJECT_OT_hook_add_newob(), OBJECT_OT_hook_add_selob(), OBJECT_OT_hook_assign(), OBJECT_OT_hook_recenter(), OBJECT_OT_hook_remove(), OBJECT_OT_hook_reset(), OBJECT_OT_hook_select(), OBJECT_OT_join(), OBJECT_OT_join_shapes(), OBJECT_OT_laplaciandeform_bind(), OBJECT_OT_lattice_add_to_selected(), OBJECT_OT_light_add(), OBJECT_OT_light_linking_blocker_collection_new(), OBJECT_OT_light_linking_blockers_link(), OBJECT_OT_light_linking_blockers_select(), OBJECT_OT_light_linking_receiver_collection_new(), OBJECT_OT_light_linking_receivers_link(), OBJECT_OT_light_linking_receivers_select(), OBJECT_OT_light_linking_unlink_from_collection(), OBJECT_OT_lightprobe_add(), OBJECT_OT_link_to_collection(), OBJECT_OT_location_clear(), OBJECT_OT_make_links_data(), OBJECT_OT_make_links_scene(), OBJECT_OT_make_local(), OBJECT_OT_make_override_library(), OBJECT_OT_make_single_user(), OBJECT_OT_meshdeform_bind(), OBJECT_OT_metaball_add(), OBJECT_OT_mode_set(), OBJECT_OT_mode_set_with_submode(), OBJECT_OT_modifier_add(), OBJECT_OT_modifier_apply(), OBJECT_OT_modifier_apply_as_shapekey(), OBJECT_OT_modifier_convert(), OBJECT_OT_modifier_copy(), OBJECT_OT_modifier_copy_to_selected(), OBJECT_OT_modifier_move_down(), OBJECT_OT_modifier_move_to_index(), OBJECT_OT_modifier_move_up(), OBJECT_OT_modifier_remove(), OBJECT_OT_modifier_set_active(), OBJECT_OT_modifiers_clear(), OBJECT_OT_modifiers_copy_to_selected(), OBJECT_OT_move_to_collection(), OBJECT_OT_multires_base_apply(), OBJECT_OT_multires_external_pack(), OBJECT_OT_multires_external_save(), OBJECT_OT_multires_higher_levels_delete(), OBJECT_OT_multires_rebuild_subdiv(), OBJECT_OT_multires_reshape(), OBJECT_OT_multires_subdivide(), OBJECT_OT_multires_unsubdivide(), OBJECT_OT_ocean_bake(), OBJECT_OT_origin_clear(), OBJECT_OT_origin_set(), OBJECT_OT_parent_clear(), OBJECT_OT_parent_inverse_apply(), OBJECT_OT_parent_no_inverse_set(), OBJECT_OT_parent_set(), OBJECT_OT_paths_calculate(), OBJECT_OT_paths_clear(), OBJECT_OT_paths_update(), OBJECT_OT_paths_update_visible(), OBJECT_OT_pointcloud_random_add(), OBJECT_OT_posemode_toggle(), OBJECT_OT_quadriflow_remesh(), OBJECT_OT_reset_override_library(), OBJECT_OT_rotation_clear(), OBJECT_OT_scale_clear(), OBJECT_OT_select_all(), OBJECT_OT_select_by_type(), OBJECT_OT_select_grouped(), OBJECT_OT_select_less(), OBJECT_OT_select_linked(), OBJECT_OT_select_mirror(), OBJECT_OT_select_more(), OBJECT_OT_select_random(), OBJECT_OT_select_same_collection(), OBJECT_OT_shade_auto_smooth(), OBJECT_OT_shade_flat(), OBJECT_OT_shade_smooth(), OBJECT_OT_shade_smooth_by_angle(), OBJECT_OT_shaderfx_add(), OBJECT_OT_shaderfx_copy(), OBJECT_OT_shaderfx_move_down(), OBJECT_OT_shaderfx_move_to_index(), OBJECT_OT_shaderfx_move_up(), OBJECT_OT_shaderfx_remove(), OBJECT_OT_shape_key_add(), OBJECT_OT_shape_key_clear(), OBJECT_OT_shape_key_copy(), OBJECT_OT_shape_key_lock(), OBJECT_OT_shape_key_make_basis(), OBJECT_OT_shape_key_mirror(), OBJECT_OT_shape_key_move(), OBJECT_OT_shape_key_remove(), OBJECT_OT_shape_key_retime(), blender::ed::object::bake_simulation::OBJECT_OT_simulation_nodes_cache_bake(), blender::ed::object::bake_simulation::OBJECT_OT_simulation_nodes_cache_calculate_to_frame(), blender::ed::object::bake_simulation::OBJECT_OT_simulation_nodes_cache_delete(), OBJECT_OT_skin_armature_create(), OBJECT_OT_skin_loose_mark_clear(), OBJECT_OT_skin_radii_equalize(), OBJECT_OT_skin_root_mark(), OBJECT_OT_speaker_add(), OBJECT_OT_surfacedeform_bind(), OBJECT_OT_text_add(), OBJECT_OT_track_clear(), OBJECT_OT_track_set(), OBJECT_OT_transfer_mode(), OBJECT_OT_transform_apply(), OBJECT_OT_transform_axis_target(), OBJECT_OT_transform_to_mouse(), OBJECT_OT_unlink_data(), OBJECT_OT_update_shapes(), OBJECT_OT_vertex_group_add(), OBJECT_OT_vertex_group_assign(), OBJECT_OT_vertex_group_assign_new(), OBJECT_OT_vertex_group_clean(), OBJECT_OT_vertex_group_copy(), OBJECT_OT_vertex_group_copy_to_selected(), OBJECT_OT_vertex_group_deselect(), OBJECT_OT_vertex_group_invert(), OBJECT_OT_vertex_group_levels(), OBJECT_OT_vertex_group_limit_total(), OBJECT_OT_vertex_group_lock(), OBJECT_OT_vertex_group_mirror(), OBJECT_OT_vertex_group_move(), OBJECT_OT_vertex_group_normalize(), OBJECT_OT_vertex_group_normalize_all(), OBJECT_OT_vertex_group_quantize(), OBJECT_OT_vertex_group_remove(), OBJECT_OT_vertex_group_remove_from(), OBJECT_OT_vertex_group_select(), OBJECT_OT_vertex_group_set_active(), OBJECT_OT_vertex_group_smooth(), OBJECT_OT_vertex_group_sort(), OBJECT_OT_vertex_parent_set(), OBJECT_OT_vertex_weight_copy(), OBJECT_OT_vertex_weight_delete(), OBJECT_OT_vertex_weight_normalize_active_vertex(), OBJECT_OT_vertex_weight_paste(), OBJECT_OT_vertex_weight_set_active(), OBJECT_OT_visual_geometry_to_objects(), OBJECT_OT_visual_transform_apply(), OBJECT_OT_volume_add(), OBJECT_OT_volume_import(), OBJECT_OT_voxel_remesh(), OBJECT_OT_voxel_size_edit(), POSE_OT_constraint_add(), POSE_OT_constraint_add_with_targets(), POSE_OT_constraints_clear(), POSE_OT_constraints_copy(), POSE_OT_ik_add(), POSE_OT_ik_clear(), TRANSFORM_OT_vertex_random(), TRANSFORM_OT_vertex_warp(), and WM_operatortype_append().

Referenced by ED_spacetypes_init().

◆ parent_clear()

◆ parent_clear_data()

void blender::ed::object::parent_clear_data ( Object * ob)
static

Definition at line 375 of file object_relations.cc.

References Object::parent, PAROBJECT, Object::parsubstr, and Object::partype.

Referenced by parent_clear(), and parent_set().

◆ parent_clear_exec()

◆ parent_noinv_set_exec()

◆ parent_set() [1/2]

void blender::ed::object::parent_set ( Object * ob,
Object * parent,
int type,
const char * substr )

◆ parent_set() [2/2]

bool blender::ed::object::parent_set ( ReportList * reports,
const bContext * C,
Scene * scene,
Object *const ob,
Object *const par,
int partype,
bool xmirror,
bool keep_transform,
const int vert_par[3] )

◆ parent_set_exec()

◆ parent_set_invoke()

wmOperatorStatus blender::ed::object::parent_set_invoke ( bContext * C,
wmOperator * op,
const wmEvent *  )
static

◆ parent_set_invoke_menu()

◆ parent_set_nonvertex_parent()

◆ parent_set_poll_property()

bool blender::ed::object::parent_set_poll_property ( const bContext * ,
wmOperator * op,
const PropertyRNA * prop )
static

◆ parent_set_vert_find()

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

Definition at line 801 of file object_relations.cc.

References BLI_assert, min_iii(), tree, UNPACK3, and UNUSED_VARS.

Referenced by parent_set_vertex_parent_with_kdtree().

◆ parent_set_vertex_parent()

◆ parent_set_vertex_parent_with_kdtree()

◆ parent_set_with_depsgraph()

bool blender::ed::object::parent_set_with_depsgraph ( ReportList * reports,
const bContext * C,
Scene * scene,
Depsgraph * depsgraph,
Object *const ob,
Object *const par,
Object *const parent_eval,
int partype,
const bool xmirror,
const bool keep_transform,
const int vert_par[3] )
static

Definition at line 504 of file object_relations.cc.

References blender::animrig::action_fcurve_ensure_ex(), blender::ed::greasepencil::add_armature_automatic_weights(), blender::ed::greasepencil::add_armature_envelope_weights(), blender::ed::greasepencil::add_armature_vertex_groups(), add_fmodifier(), 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_calc_parent(), BKE_object_parent_loop_check(), BKE_pose_channel_active_if_bonecoll_visible(), BKE_report(), BLI_assert_msg, bPoseChannel::bone, BONE_RELATIVE_PARENTING, C, RenderData::cfra, CONSTRAINT_OBTYPE_OBJECT, CONSTRAINT_TYPE_FOLLOWPATH, copy_v3_v3(), copy_v3_v3_int(), CTX_data_main(), CU_FOLLOW, CU_PATH, bConstraint::data, data, Object::data, DEG_id_tag_update(), depsgraph, ED_object_vgroup_calc_from_armature(), ELEM, eModifierType_Armature, eModifierType_Curve, eModifierType_GreasePencilArmature, eModifierType_Lattice, ListBase::first, Bone::flag, Curve::flag, FMODIFIER_TYPE_GENERATOR, FCurve::fpt, Curve::id, Object::id, blender::animrig::id_action_ensure(), ID_RECALC_GEOMETRY, ID_RECALC_TRANSFORM, invert_m4_m4(), Object::loc, modifier_add(), FCurve::modifiers, bPoseChannel::name, OB_ARMATURE, OB_CURVES_LEGACY, OB_FONT, OB_GREASE_PENCIL, OB_LATTICE, OB_MESH, OB_SURF, 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, ptr, Scene::r, RNA_id_pointer_create(), RPT_ERROR, Object::runtime, STRNCPY_UTF8, sub_v3_v3v3(), Object::type, unit_m4(), and WM_cursor_wait().

Referenced by parent_set(), and parent_set_nonvertex_parent().

◆ pose_constraint_add_exec()

◆ pose_constraint_copy_exec()

◆ pose_constraint_list()

ListBase * blender::ed::object::pose_constraint_list ( const bContext * C)

Get the constraints for the active pose bone. Bone may be on an inactive bone-layer (unlike constraint_active_list, such constraints are not excluded here).

Definition at line 102 of file object_constraint.cc.

References C, bPoseChannel::constraints, CTX_data_pointer_get(), and PointerRNA::data.

Referenced by edit_constraint_property_get(), and uiTemplateConstraints().

◆ pose_constraints_clear_exec()

◆ pose_ik_add_exec()

wmOperatorStatus blender::ed::object::pose_ik_add_exec ( bContext * C,
wmOperator * op )
static

◆ pose_ik_add_invoke()

◆ pose_ik_clear_exec()

◆ POSE_OT_constraint_add()

◆ POSE_OT_constraint_add_with_targets()

void blender::ed::object::POSE_OT_constraint_add_with_targets ( wmOperatorType * ot)

◆ POSE_OT_constraints_clear()

void blender::ed::object::POSE_OT_constraints_clear ( wmOperatorType * ot)

◆ POSE_OT_constraints_copy()

void blender::ed::object::POSE_OT_constraints_copy ( wmOperatorType * ot)

◆ POSE_OT_ik_add()

void blender::ed::object::POSE_OT_ik_add ( wmOperatorType * ot)

◆ POSE_OT_ik_clear()

void blender::ed::object::POSE_OT_ik_clear ( wmOperatorType * ot)

◆ posemode_exec()

◆ posemode_set_for_weight_paint()

◆ quadriflow_break_job()

int blender::ed::object::quadriflow_break_job ( void * customdata)
static

◆ quadriflow_check()

◆ quadriflow_end_job()

◆ quadriflow_free_job()

void blender::ed::object::quadriflow_free_job ( void * customdata)
static

Definition at line 739 of file object_remesh.cc.

References MEM_freeN().

Referenced by quadriflow_remesh_exec().

◆ quadriflow_poll_property()

◆ quadriflow_remesh_exec()

wmOperatorStatus blender::ed::object::quadriflow_remesh_exec ( bContext * C,
wmOperator * op )
static

◆ quadriflow_remesh_invoke()

wmOperatorStatus blender::ed::object::quadriflow_remesh_invoke ( bContext * C,
wmOperator * op,
const wmEvent * event )
static

Definition at line 1120 of file object_remesh.cc.

References C, IFACE_, and WM_operator_props_popup_confirm_ex().

Referenced by OBJECT_OT_quadriflow_remesh().

◆ quadriflow_start_job()

void blender::ed::object::quadriflow_start_job ( void * customdata,
wmJobWorkerStatus * worker_status )
static

Definition at line 844 of file object_remesh.cc.

References BKE_id_free(), BKE_mesh_batch_cache_dirty_tag(), BKE_MESH_BATCH_DIRTY_ALL, BKE_mesh_copy_for_eval(), BKE_mesh_nomain_to_mesh(), BKE_mesh_remesh_quadriflow(), BKE_sculptsession_free_pbvh(), Object::data, wmJobWorkerStatus::do_update, G, blender::ed::sculpt_paint::undo::geometry_begin(), blender::ed::sculpt_paint::undo::geometry_end(), blender::ed::object::QuadriFlowJob::is_nonblocking_job, mesh_is_manifold_consistent(), blender::bke::mesh_remesh_reproject_attributes(), blender::bke::mesh_smooth_set(), Object::mode, OB_MODE_SCULPT, blender::ed::object::QuadriFlowJob::op, blender::ed::object::QuadriFlowJob::owner, blender::ed::object::QuadriFlowJob::preserve_attributes, QUADRIFLOW_STATUS_FAIL, QUADRIFLOW_STATUS_NONMANIFOLD, QUADRIFLOW_STATUS_SUCCESS, quadriflow_update_job(), remesh_symmetry_bisect(), remesh_symmetry_mirror(), blender::ed::object::QuadriFlowJob::scene, blender::ed::object::QuadriFlowJob::seed, blender::ed::object::QuadriFlowJob::smooth_normals, blender::ed::object::QuadriFlowJob::status, wmJobWorkerStatus::stop, blender::ed::object::QuadriFlowJob::symmetry_axes, blender::ed::object::QuadriFlowJob::target_faces, blender::ed::object::QuadriFlowJob::use_mesh_curvature, blender::ed::object::QuadriFlowJob::use_mesh_symmetry, blender::ed::object::QuadriFlowJob::use_preserve_boundary, blender::ed::object::QuadriFlowJob::use_preserve_sharp, and blender::ed::object::QuadriFlowJob::worker_status.

Referenced by quadriflow_remesh_exec().

◆ quadriflow_update_job()

void blender::ed::object::quadriflow_update_job ( void * customdata,
float progress,
int * cancel )
static

◆ remesh_symmetry_bisect()

◆ remesh_symmetry_mirror()

Mesh * blender::ed::object::remesh_symmetry_mirror ( Object * ob,
Mesh * mesh,
eSymmetryAxes symmetry_axes )
static

◆ reset_clear_override_library_poll()

bool blender::ed::object::reset_clear_override_library_poll ( bContext * C)
static

◆ reset_override_library_exec()

◆ return_editcurve_indexar()

int blender::ed::object::return_editcurve_indexar ( Object * obedit,
int ** r_indexar,
int * r_indexar_num,
float r_cent[3] )
static

◆ return_editlattice_indexar()

int blender::ed::object::return_editlattice_indexar ( Lattice * editlatt,
int ** r_indexar,
int * r_indexar_num,
float r_cent[3] )
static

◆ return_editmesh_indexar()

int blender::ed::object::return_editmesh_indexar ( BMEditMesh * em,
int * r_indexar_num,
int ** r_indexar,
float r_cent[3] )
static

◆ return_editmesh_vgroup()

◆ rna_vertex_group_select_itemf()

const EnumPropertyItem * blender::ed::object::rna_vertex_group_select_itemf ( bContext * C,
PointerRNA * ptr,
PropertyRNA * prop,
bool * r_free )
static

◆ rna_vertex_group_with_single_itemf()

const EnumPropertyItem * blender::ed::object::rna_vertex_group_with_single_itemf ( bContext * C,
PointerRNA * ptr,
PropertyRNA * prop,
bool * r_free )
static

◆ root_catalogs_draw()

◆ rotation_from_quat()

void blender::ed::object::rotation_from_quat ( float rot[3],
const float quat[4],
char align_axis )

Definition at line 294 of file object_add.cc.

References axis_angle_to_quat(), BLI_assert, float, M_PI_2, mul_qt_qtqt(), quat_to_eul(), and rot.

Referenced by rotation_from_view().

◆ rotation_from_view()

void blender::ed::object::rotation_from_view ( bContext * C,
float rot[3],
char align_axis )

◆ select_editbmesh_hook()

void blender::ed::object::select_editbmesh_hook ( Object * ob,
HookModifierData * hmd )
static

◆ select_editcurve_hook()

void blender::ed::object::select_editcurve_hook ( Object * obedit,
HookModifierData * hmd )
static

◆ select_editlattice_hook()

void blender::ed::object::select_editlattice_hook ( Object * obedit,
HookModifierData * hmd )
static

◆ select_grouped_children()

bool blender::ed::object::select_grouped_children ( bContext * C,
Object * ob,
const bool recursive )
static

◆ select_grouped_collection()

◆ select_grouped_color()

bool blender::ed::object::select_grouped_color ( bContext * C,
Object * ob )
static

◆ select_grouped_exec()

◆ select_grouped_index_object()

bool blender::ed::object::select_grouped_index_object ( bContext * C,
Object * ob )
static

◆ select_grouped_keyingset()

◆ select_grouped_lighttype()

bool blender::ed::object::select_grouped_lighttype ( bContext * C,
Object * ob )
static

◆ select_grouped_object_hooks()

◆ select_grouped_parent()

◆ select_grouped_siblings()

bool blender::ed::object::select_grouped_siblings ( bContext * C,
Object * ob )
static

◆ select_grouped_type()

bool blender::ed::object::select_grouped_type ( bContext * C,
Object * ob )
static

◆ select_linked_by_id()

◆ selected_objects_get()

ListBase blender::ed::object::selected_objects_get ( bContext * C)
static

◆ set_active_group_exec()

◆ set_constraint_nth_target()

void blender::ed::object::set_constraint_nth_target ( bConstraint * con,
Object * target,
const char subtarget[],
int index )
static

◆ set_local_object_transform()

void blender::ed::object::set_local_object_transform ( Object & ob,
const float4x4 & transform )
static

◆ shade_auto_smooth_exec()

wmOperatorStatus blender::ed::object::shade_auto_smooth_exec ( bContext * C,
wmOperator * op )
static

Definition at line 1872 of file object_edit.cc.

References blender::asset_system::all_library_reference(), angle(), ASSET_LIBRARY_ESSENTIALS, AssetWeakReference::asset_library_type, blender::ed::asset::asset_local_id_ensure_imported(), BKE_modifier_unique_name(), BLI_strdup(), C, blender::StringRefNull::c_str(), CTX_data_main(), CTX_data_scene(), CTX_data_selected_editable_objects(), DATA_, DEG_id_tag_update(), eModifierFlag_PinLast, eModifierType_Nodes, blender::ed::asset::find_asset_from_weak_ref(), ModifierData::flag, NodesModifierData::flag, G, GS, bNodeTree::id, ID_NT, ID_RECALC_GEOMETRY, id_us_plus(), IDP_DOUBLE, IDP_double_set, IDP_FLOAT, IDP_float_set, IDP_GetPropertyFromGroup(), is_smooth_by_angle_modifier(), is_valid_smooth_by_angle_group(), ID::library_weak_reference, LISTBASE_FOREACH, MEM_SAFE_FREE, blender::bke::mesh_smooth_set(), MOD_nodes_update_interface(), NodesModifierData::modifier, modifier_add(), modifier_remove(), NA_REMOVED, ID::name, ModifierData::name, NC_OBJECT, ND_MODIFIER, NodesModifierData::node_group, NODES_MODIFIER_HIDE_DATABLOCK_SELECTOR, NODES_MODIFIER_HIDE_MANAGE_PANEL, OB_MESH, OPERATOR_CANCELLED, OPERATOR_FINISHED, NodesModifierSettings::properties, wmOperator::ptr, AssetWeakReference::relative_asset_identifier, wmOperator::reports, RNA_boolean_get(), RNA_float_get(), NodesModifierData::settings, blender::ed::asset::list::storage_fetch_blocking(), STRNCPY_UTF8, IDProperty::type, WM_event_add_notifier(), and WM_main_add_notifier().

Referenced by OBJECT_OT_shade_auto_smooth().

◆ shade_auto_smooth_ui()

◆ shade_poll()

◆ shade_smooth_exec()

◆ shaderfx_add()

◆ shaderfx_add_exec()

◆ shaderfx_add_itemf()

◆ shaderfx_clear()

void blender::ed::object::shaderfx_clear ( Main * bmain,
Object * ob )

◆ shaderfx_copy()

◆ shaderfx_copy_exec()

◆ shaderfx_copy_invoke()

wmOperatorStatus blender::ed::object::shaderfx_copy_invoke ( bContext * C,
wmOperator * op,
const wmEvent * event )
static

Definition at line 695 of file object_shader_fx.cc.

References C, edit_shaderfx_invoke_properties(), and shaderfx_copy_exec().

Referenced by OBJECT_OT_shaderfx_copy().

◆ shaderfx_link()

◆ shaderfx_move_down()

int blender::ed::object::shaderfx_move_down ( ReportList * reports,
Object * ob,
ShaderFxData * fx )

◆ shaderfx_move_down_exec()

◆ shaderfx_move_down_invoke()

wmOperatorStatus blender::ed::object::shaderfx_move_down_invoke ( bContext * C,
wmOperator * op,
const wmEvent * event )
static

◆ shaderfx_move_to_index()

◆ shaderfx_move_to_index_exec()

◆ shaderfx_move_to_index_invoke()

wmOperatorStatus blender::ed::object::shaderfx_move_to_index_invoke ( bContext * C,
wmOperator * op,
const wmEvent * event )
static

◆ shaderfx_move_up()

int blender::ed::object::shaderfx_move_up ( ReportList * reports,
Object * ob,
ShaderFxData * fx )

◆ shaderfx_move_up_exec()

◆ shaderfx_move_up_invoke()

wmOperatorStatus blender::ed::object::shaderfx_move_up_invoke ( bContext * C,
wmOperator * op,
const wmEvent * event )
static

◆ shaderfx_remove()

bool blender::ed::object::shaderfx_remove ( ReportList * reports,
Main * bmain,
Object * ob,
ShaderFxData * fx )

◆ shaderfx_remove_exec()

◆ shaderfx_remove_invoke()

wmOperatorStatus blender::ed::object::shaderfx_remove_invoke ( bContext * C,
wmOperator * op,
const wmEvent * event )
static

◆ shape_key_add_exec()

◆ shape_key_clear_exec()

◆ shape_key_copy_exec()

◆ shape_key_exists_poll()

bool blender::ed::object::shape_key_exists_poll ( bContext * C)
static

◆ shape_key_is_selected()

bool blender::ed::object::shape_key_is_selected ( const Object & object,
const KeyBlock & kb,
int keyblock_index )

Return whether this shapekey is considered 'selected'.

The active shapekey is always considered 'selected', even though it may not have its selection flag set.

Definition at line 129 of file object_shapekey.cc.

References KeyBlock::flag, and KEYBLOCK_SEL.

Referenced by shape_key_move_exec(), and shape_key_remove_exec().

◆ shape_key_lock_exec()

◆ shape_key_lock_get_description()

std::string blender::ed::object::shape_key_lock_get_description ( bContext * ,
wmOperatorType * ,
PointerRNA * ptr )
static

Definition at line 809 of file object_shapekey.cc.

References ptr, RNA_enum_get(), SHAPE_KEY_LOCK, SHAPE_KEY_UNLOCK, and TIP_.

Referenced by OBJECT_OT_shape_key_lock().

◆ shape_key_make_basis_exec()

◆ shape_key_make_basis_poll()

bool blender::ed::object::shape_key_make_basis_poll ( bContext * C)
static

◆ shape_key_mirror()

◆ shape_key_mirror_exec()

◆ shape_key_mode_exists_poll()

bool blender::ed::object::shape_key_mode_exists_poll ( bContext * C)
static

◆ shape_key_mode_poll()

bool blender::ed::object::shape_key_mode_poll ( bContext * C)
static

◆ shape_key_move_exec()

◆ shape_key_move_poll()

bool blender::ed::object::shape_key_move_poll ( bContext * C)
static

◆ shape_key_poll()

bool blender::ed::object::shape_key_poll ( bContext * C)
static

◆ shape_key_remove_exec()

◆ shape_key_remove_get_description()

std::string blender::ed::object::shape_key_remove_get_description ( bContext * ,
wmOperatorType * ,
PointerRNA * ptr )
static

Definition at line 497 of file object_shapekey.cc.

References ptr, RNA_boolean_get(), and TIP_.

Referenced by OBJECT_OT_shape_key_remove().

◆ shape_key_remove_poll_property()

bool blender::ed::object::shape_key_remove_poll_property ( const bContext * ,
wmOperator * op,
const PropertyRNA * prop )
static

◆ shape_key_report_if_active_locked()

bool blender::ed::object::shape_key_report_if_active_locked ( Object * ob,
ReportList * reports )

Checks if the active shape key of the object is locked, and produces an error message if so (unless reports is null).

Returns
true if the shape key was locked.

Definition at line 88 of file object_shapekey.cc.

References BKE_keyblock_from_object(), BKE_reportf(), KeyBlock::flag, Object::id, KEYBLOCK_LOCKED_SHAPE, ID::name, and RPT_ERROR.

Referenced by shape_key_mirror_exec().

◆ shape_key_report_if_any_locked()

bool blender::ed::object::shape_key_report_if_any_locked ( Object * ob,
ReportList * reports )

Checks if any of the shape keys of the object are locked, and produces an error message if so (unless reports is null).

Returns
true if a shape key was locked.

Definition at line 117 of file object_shapekey.cc.

References BKE_reportf(), Object::id, ID::name, object_is_any_shape_key_locked(), and RPT_ERROR.

Referenced by edbm_shape_propagate_to_all_exec(), and shape_key_remove_exec().

◆ shape_key_report_if_locked()

◆ shape_key_retime_exec()

◆ single_data_needs_duplication()

bool blender::ed::object::single_data_needs_duplication ( ID * id)
static

◆ single_mat_users()

◆ single_obdata_user_make()

void blender::ed::object::single_obdata_user_make ( Main * bmain,
Scene * scene,
Object * ob )

◆ single_obdata_users()

◆ single_object_action_users()

void blender::ed::object::single_object_action_users ( Main * bmain,
Scene * scene,
ViewLayer * view_layer,
View3D * v3d,
const int flag )
static

◆ single_object_users()

void blender::ed::object::single_object_users ( Main * bmain,
Scene * scene,
View3D * v3d,
const int flag,
const bool copy_collections )
static

◆ single_object_users_collection()

◆ single_objectdata_action_users()

void blender::ed::object::single_objectdata_action_users ( Main * bmain,
Scene * scene,
ViewLayer * view_layer,
View3D * v3d,
const int flag )
static

◆ skin_armature_bone_create()

◆ skin_armature_create_exec()

◆ skin_armature_create_invoke()

wmOperatorStatus blender::ed::object::skin_armature_create_invoke ( bContext * C,
wmOperator * op,
const wmEvent *  )
static

◆ skin_edit_poll()

◆ skin_loose_mark_clear_exec()

◆ skin_poll()

bool blender::ed::object::skin_poll ( bContext * C)
static

Definition at line 2560 of file object_modifier.cc.

References C, edit_modifier_poll_generic(), and OB_MESH.

Referenced by OBJECT_OT_skin_armature_create().

◆ skin_radii_equalize_exec()

◆ skin_root_clear()

void blender::ed::object::skin_root_clear ( BMVert * bm_vert,
GSet * visited,
const int cd_vert_skin_offset )
static

◆ skin_root_mark_exec()

◆ sorted_selected_editable_objects()

◆ stretchto_reset_exec()

◆ stretchto_reset_invoke()

wmOperatorStatus blender::ed::object::stretchto_reset_invoke ( bContext * C,
wmOperator * op,
const wmEvent *  )
static

◆ surfacedeform_bind_exec()

◆ surfacedeform_bind_invoke()

wmOperatorStatus blender::ed::object::surfacedeform_bind_invoke ( bContext * C,
wmOperator * op,
const wmEvent *  )
static

◆ surfacedeform_bind_poll()

bool blender::ed::object::surfacedeform_bind_poll ( bContext * C)
static

Definition at line 3419 of file object_modifier.cc.

References C, and edit_modifier_poll_generic().

Referenced by OBJECT_OT_surfacedeform_bind().

◆ tag_localizable_looper()

int blender::ed::object::tag_localizable_looper ( LibraryIDLinkCallbackData * cb_data)
static

◆ tag_localizable_objects()

◆ test_constraint()

◆ test_constraints()

void blender::ed::object::test_constraints ( Main * bmain,
Object * ob,
bPoseChannel * pchan )
static

◆ time_modifier_segment_add_exec()

◆ time_modifier_segment_add_invoke()

wmOperatorStatus blender::ed::object::time_modifier_segment_add_invoke ( bContext * C,
wmOperator * op,
const wmEvent *  )
static

◆ time_modifier_segment_free()

void blender::ed::object::time_modifier_segment_free ( GreasePencilTimeModifierSegment * )
static

Definition at line 3923 of file object_modifier.cc.

Referenced by time_modifier_segment_remove_exec().

◆ time_modifier_segment_move_exec()

◆ time_modifier_segment_move_invoke()

wmOperatorStatus blender::ed::object::time_modifier_segment_move_invoke ( bContext * C,
wmOperator * op,
const wmEvent *  )
static

◆ time_modifier_segment_poll()

◆ time_modifier_segment_remove_exec()

◆ time_modifier_segment_remove_invoke()

wmOperatorStatus blender::ed::object::time_modifier_segment_remove_invoke ( bContext * C,
wmOperator * op,
const wmEvent *  )
static

◆ track_set_exec()

◆ trans_obdata_in_obmode_free_elem()

void blender::ed::object::trans_obdata_in_obmode_free_elem ( void * xf_p)
static

Callback for GHash free.

Definition at line 408 of file object_utils.cc.

Referenced by data_xform_container_destroy().

◆ TRANSFORM_OT_vertex_random()

◆ TRANSFORM_OT_vertex_warp()

◆ translate_positions()

void blender::ed::object::translate_positions ( MutableSpan< float3 > positions,
const float3 & translation )
static

◆ ui_template_modifier_asset_menu_items()

◆ unassigned_assets_draw()

◆ unassigned_local_poll()

bool blender::ed::object::unassigned_local_poll ( const Main & bmain)
static

Definition at line 128 of file add_modifier_assets.cc.

References GEO_NODE_ASSET_MODIFIER, LISTBASE_FOREACH, and Main::nodetrees.

Referenced by root_catalogs_draw().

◆ update_all_shape_keys_exec()

wmOperatorStatus blender::ed::object::update_all_shape_keys_exec ( bContext * C,
wmOperator * op )
static

◆ vertex_group_add_exec()

◆ vertex_group_assign_exec()

◆ vertex_group_assign_new_exec()

wmOperatorStatus blender::ed::object::vertex_group_assign_new_exec ( bContext * C,
wmOperator * op )
static

◆ vertex_group_clean_exec()

◆ vertex_group_copy_exec()

◆ vertex_group_copy_to_selected_exec()

◆ vertex_group_deselect_exec()

◆ vertex_group_invert_exec()

◆ vertex_group_levels_exec()

◆ vertex_group_limit_total_exec()

◆ vertex_group_lock_exec()

◆ vertex_group_lock_get_description()

◆ vertex_group_mesh_vert_poll()

bool blender::ed::object::vertex_group_mesh_vert_poll ( bContext * C)
static

◆ vertex_group_mirror_exec()

◆ vertex_group_normalize_all_exec()

◆ vertex_group_normalize_exec()

◆ vertex_group_poll()

◆ vertex_group_poll_edit()

bool UNUSED_FUNCTION blender::ed::object::vertex_group_poll_edit ( bContext * C)
static

◆ vertex_group_poll_ex()

bool blender::ed::object::vertex_group_poll_ex ( bContext * C,
Object * ob )
static

◆ vertex_group_quantize_exec()

◆ vertex_group_remove_exec()

◆ vertex_group_remove_from_exec()

◆ vertex_group_select_exec()

◆ vertex_group_smooth_exec()

◆ vertex_group_sort_exec()

◆ vertex_group_supported_poll()

bool blender::ed::object::vertex_group_supported_poll ( bContext * C)
static

◆ vertex_group_supported_poll_ex()

◆ vertex_group_use_vert_sel()

◆ vertex_group_vert_poll_ex()

◆ vertex_group_vert_select_mesh_poll()

◆ vertex_group_vert_select_poll()

bool blender::ed::object::vertex_group_vert_select_poll ( bContext * C)
static

◆ vertex_group_vert_select_unlocked_poll()

◆ vertex_parent_set_exec()

◆ vertex_parent_set_poll()

bool blender::ed::object::vertex_parent_set_poll ( bContext * C)
static

◆ vertex_weight_copy_exec()

◆ vertex_weight_delete_exec()

◆ vertex_weight_normalize_active_vertex_exec()

◆ vertex_weight_paste_exec()

◆ vertex_weight_set_active_exec()

◆ vgroup_array_copy()

◆ vgroup_assign_verts()

◆ vgroup_clean_subset()

void blender::ed::object::vgroup_clean_subset ( Object * ob,
const bool * vgroup_validmap,
const int vgroup_tot,
const int ,
const float epsilon,
const bool keep_single )
static

◆ vgroup_copy_active_to_sel()

◆ vgroup_copy_active_to_sel_single()

◆ vgroup_data_clamp_range()

void blender::ed::object::vgroup_data_clamp_range ( ID * id,
int total )

Removes out of range #MDeformWeights

Definition at line 135 of file object_vgroup.cc.

References BKE_defvert_remove_group(), MDeformWeight::def_nr, MDeformVert::dw, i, MDeformVert::totweight, and vgroup_parray_alloc().

Referenced by ED_object_vgroup_calc_from_armature().

◆ vgroup_delete_active()

void blender::ed::object::vgroup_delete_active ( Object * ob)
static

◆ vgroup_do_remap()

◆ vgroup_duplicate()

◆ vgroup_edit_lattice()

Lattice * blender::ed::object::vgroup_edit_lattice ( Object * ob)
static

◆ vgroup_grease_pencil_select_verts()

void blender::ed::object::vgroup_grease_pencil_select_verts ( const Scene & scene,
const ToolSettings & tool_settings,
const bDeformGroup * def_group,
const bool select,
Object & object )
static

◆ vgroup_init_remap()

char * blender::ed::object::vgroup_init_remap ( Object * ob)
static

◆ vgroup_invert_subset()

void blender::ed::object::vgroup_invert_subset ( Object * ob,
const bool * vgroup_validmap,
const int vgroup_tot,
const int ,
const bool auto_assign,
const bool auto_remove )
static

◆ vgroup_itemf()

◆ vgroup_levels_subset()

void blender::ed::object::vgroup_levels_subset ( Object * ob,
const bool * vgroup_validmap,
const int vgroup_tot,
const int ,
const float offset,
const float gain )
static

◆ vgroup_limit_total_subset()

int blender::ed::object::vgroup_limit_total_subset ( Object * ob,
const bool * vgroup_validmap,
const int vgroup_tot,
const int subset_count,
const int max_weights )
static

◆ vgroup_lock_all()

◆ vgroup_mirror()

◆ vgroup_move_exec()

◆ vgroup_normalize()

◆ vgroup_normalize_active_vertex()

◆ vgroup_normalize_all()

bool blender::ed::object::vgroup_normalize_all ( Object * ob,
const bool * vgroup_validmap,
const int vgroup_tot,
const bool lock_active,
const bool soft_lock_active,
ReportList * reports,
std::optional< int > current_frame = {} )
static

Normalize vertex group weights.

Parameters
vgroup_validmapAn array of bools indicating which vertex groups should be included (true) and excluded (false) from the normalization process. Must have #vgroup_tot elements.
lock_activeIf true, the active vertex group is temporarily locked during this normalization process.
soft_lock_activeIf true, the active vertex group is treated as "soft locked". See BKE_defvert_normalize_ex()'s documentation for details of what that means. Note: because locking is a stronger restriction, if lock_active is true then this parameter has no effect.
Returns
True if modification to weights might have happened, false if modification was impossible (e.g. due to all groups being locked.)

Definition at line 1390 of file object_vgroup.cc.

References vgroup_normalize_all().

Referenced by vertex_group_normalize_all_exec(), and vgroup_normalize_all().

◆ vgroup_normalize_all_deform_if_active_is_deform()

void blender::ed::object::vgroup_normalize_all_deform_if_active_is_deform ( Object * ob,
const bool soft_lock_active,
ReportList * reports,
std::optional< int > current_frame = {} )
static

If the currently active vertex group is for a deform bone, normalize all vertex groups that are for deform bones.

Parameters
soft_lock_activeIf true, the active vertex group is treated as "soft locked". See BKE_defvert_normalize_ex()'s documentation for details of what that means.

Definition at line 1464 of file object_vgroup.cc.

References vgroup_normalize_all_deform_if_active_is_deform().

Referenced by vertex_group_assign_exec(), vertex_group_remove_from_exec(), and vgroup_normalize_all_deform_if_active_is_deform().

◆ vgroup_nr_vert_add()

void blender::ed::object::vgroup_nr_vert_add ( Object * ob,
const int def_nr,
const int vertnum,
const float weight,
const int assignmode )
static

◆ vgroup_operator_subset_select_props()

◆ vgroup_parray_alloc()

◆ vgroup_parray_from_weight_array()

void blender::ed::object::vgroup_parray_from_weight_array ( MDeformVert ** dvert_array,
int dvert_tot,
const float * dvert_weights,
int def_nr,
bool remove_zero )

◆ vgroup_parray_mirror_assign()

void blender::ed::object::vgroup_parray_mirror_assign ( Object * ob,
MDeformVert ** dvert_array,
int dvert_tot )

Fill in the pointers for mirror verts (as if all mirror verts were selected too).

similar to vgroup_parray_mirror_sync but only fill in mirror points.

Definition at line 336 of file object_vgroup.cc.

References BKE_editmesh_from_object(), BLI_assert, BMEditMesh::bm, BM_mesh_elem_table_ensure(), BM_VERT, Object::data, ED_mesh_mirror_get_vert(), i, MEM_freeN(), and vgroup_parray_alloc().

Referenced by vgroup_clean_subset(), and vgroup_quantize_subset().

◆ vgroup_parray_mirror_sync()

void blender::ed::object::vgroup_parray_mirror_sync ( Object * ob,
MDeformVert ** dvert_array,
int dvert_tot,
const bool * vgroup_validmap,
int vgroup_tot )

For use with tools that use vgroup_parray_alloc with use_vert_sel == true. This finds the unselected mirror deform verts and copies the weights to them from the selected.

Note
dvert_array has mirrored weights filled in, in case cleanup operations are needed on both.

Definition at line 291 of file object_vgroup.cc.

References BKE_defvert_mirror_subset(), BKE_editmesh_from_object(), BKE_object_defgroup_flip_map(), BLI_assert, BMEditMesh::bm, BM_mesh_elem_table_ensure(), BM_VERT, Object::data, ED_mesh_mirror_get_vert(), MEM_freeN(), and vgroup_parray_alloc().

Referenced by vgroup_invert_subset(), vgroup_levels_subset(), and vgroup_smooth_subset().

◆ vgroup_parray_remove_zero()

void blender::ed::object::vgroup_parray_remove_zero ( MDeformVert ** dvert_array,
int dvert_tot,
const bool * vgroup_validmap,
int vgroup_tot,
float epsilon,
bool keep_single )

◆ vgroup_parray_to_weight_array()

void blender::ed::object::vgroup_parray_to_weight_array ( const MDeformVert ** dvert_array,
int dvert_tot,
float * dvert_weights,
int def_nr )

Definition at line 494 of file object_vgroup.cc.

References BKE_defvert_find_weight(), and i.

Referenced by vgroup_smooth_subset().

◆ vgroup_quantize_subset()

void blender::ed::object::vgroup_quantize_subset ( Object * ob,
const bool * vgroup_validmap,
const int vgroup_tot,
const int ,
const int steps )
static

◆ vgroup_remove_weight()

void blender::ed::object::vgroup_remove_weight ( Object * ob,
const int def_nr )
static

◆ vgroup_select_by_name()

void blender::ed::object::vgroup_select_by_name ( Object * ob,
const char * name )

◆ vgroup_select_verts()

◆ vgroup_selected_get()

◆ vgroup_selection_itemf_helper()

◆ vgroup_smooth_subset()

◆ vgroup_sort_bone_hierarchy()

void blender::ed::object::vgroup_sort_bone_hierarchy ( Object * ob,
ListBase * bonebase )
static

Sorts the weight groups according to the bone hierarchy of the associated armature (similar to how bones are ordered in the Outliner)

Definition at line 3994 of file object_vgroup.cc.

References BKE_modifiers_is_deformed_by_armature(), BKE_object_defgroup_find_name(), BKE_object_defgroup_list_mutable(), BLI_addhead(), BLI_remlink(), bArmature::bonebase, Object::data, LISTBASE_FOREACH_BACKWARD, Node::name, and vgroup_sort_bone_hierarchy().

Referenced by vertex_group_sort_exec(), and vgroup_sort_bone_hierarchy().

◆ vgroup_sort_name()

int blender::ed::object::vgroup_sort_name ( const void * def_a_ptr,
const void * def_b_ptr )
static

◆ vgroup_sync_from_pose()

◆ vgroup_vert_active_mirror()

void blender::ed::object::vgroup_vert_active_mirror ( Object * ob,
int def_nr )

◆ vgroup_vert_add()

void blender::ed::object::vgroup_vert_add ( Object * ob,
bDeformGroup * dg,
int vertnum,
float weight,
int assignmode )

◆ vgroup_vert_remove()

void blender::ed::object::vgroup_vert_remove ( Object * ob,
bDeformGroup * dg,
int vertnum )

◆ vgroup_vert_weight()

float blender::ed::object::vgroup_vert_weight ( Object * ob,
bDeformGroup * dg,
int vertnum )

Definition at line 1026 of file object_vgroup.cc.

References BKE_object_defgroup_list(), BLI_findindex(), and get_vert_def_nr().

Referenced by heat_bone_weighting().

◆ view_align_update()

void blender::ed::object::view_align_update ( Main * ,
Scene * ,
PointerRNA * ptr )
static

Definition at line 395 of file object_add.cc.

References ptr, and RNA_struct_system_idprops_unset().

Referenced by add_generic_props().

◆ visual_geometry_to_objects_exec()

wmOperatorStatus blender::ed::object::visual_geometry_to_objects_exec ( bContext * C,
wmOperator *  )
static

Definition at line 438 of file object_visual_geometry_to_objects.cc.

References blender::ed::object::ComponentObjects::all_objects(), blender::Vector< T, InlineBufferCapacity, Allocator >::append(), base_active_refresh(), BASE_SELECTED, BKE_collection_child_add(), BKE_collection_object_add(), BKE_layer_collection_first_from_scene_collection(), BKE_layer_collection_set_flag(), BKE_object_to_mat4(), BKE_scene_view_layers_synced_ensure(), BKE_view_layer_base_deselect_all(), BKE_view_layer_base_find(), BKE_view_layer_base_select_and_set_active(), BKE_view_layer_need_resync_tag(), C, copy_m4_m4(), CTX_DATA_BEGIN, CTX_DATA_END, CTX_data_ensure_evaluated_depsgraph(), CTX_data_main(), CTX_data_scene(), CTX_data_view_layer(), DEG_get_evaluated(), DEG_id_tag_update(), DEG_relations_tag_update(), depsgraph, blender::Vector< T, InlineBufferCapacity, Allocator >::extend(), find_collections_containing_object(), Base::flag, blender::ed::object::GeometryToObjectsBuilder::get_objects_for_geometry(), Scene::id, ID_RECALC_BASE_FLAGS, blender::Vector< T, InlineBufferCapacity, Allocator >::is_empty(), LAYER_COLLECTION_EXCLUDE, LISTBASE_FOREACH, Scene::master_collection, NC_OBJECT, NC_SCENE, ND_DRAW, ND_LAYER, ND_LAYER_CONTENT, ND_OB_SELECT, blender::ed::object::GeometryToObjectsBuilder::new_instance_collections(), blender::bke::object_get_evaluated_geometry_set(), OPERATOR_FINISHED, blender::MatBase< T, NumCol, NumRow, Alignment >::ptr(), set_local_object_transform(), Scene::view_layers, visual_geometry_to_objects_exec(), WM_event_add_notifier(), and WM_main_add_notifier().

Referenced by OBJECT_OT_visual_geometry_to_objects(), and visual_geometry_to_objects_exec().

◆ visual_transform_apply_exec()

◆ volume_import_exec()

◆ volume_import_invoke()

wmOperatorStatus blender::ed::object::volume_import_invoke ( bContext * C,
wmOperator * op,
const wmEvent *  )
static

◆ voxel_remesh_exec()

◆ voxel_size_edit_cancel()

◆ voxel_size_edit_draw()

◆ voxel_size_edit_invoke()

wmOperatorStatus blender::ed::object::voxel_size_edit_invoke ( bContext * C,
wmOperator * op,
const wmEvent * event )
static

Definition at line 438 of file object_remesh.cc.

References blender::ed::object::VoxelSizeEditCustomData::active_object, C, clamp_f(), copy_m3_m4(), copy_v3_v3(), blender::bounds::corners(), CTX_data_active_object(), CTX_wm_region(), CTX_wm_region_view3d(), wmOperator::customdata, Object::data, dot_v2v2(), dot_v3v3(), blender::ed::object::VoxelSizeEditCustomData::draw_handle, ED_region_draw_cb_activate(), ED_region_tag_redraw(), ED_view3d_pixel_size_no_ui_scale(), ED_view3d_project_v2(), fabsf, i, blender::ed::object::VoxelSizeEditCustomData::init_mval, blender::ed::object::VoxelSizeEditCustomData::init_voxel_size, invert_m4_m4(), invert_v3(), len_v3v3(), mat4_to_size(), max_ff(), MEM_callocN(), mid_v3_v3v3(), mul_m3_v3(), mul_m4_m4_post(), mul_m4_m4_pre(), mul_v3_fl(), mul_v3_m4v3(), normal_tri_v3(), normalize_v2(), normalize_v3(), OPERATOR_RUNNING_MODAL, blender::ed::object::VoxelSizeEditCustomData::preview_plane, REGION_DRAW_POST_VIEW, ARegion::runtime, Object::runtime, scale_m4_fl(), size_to_mat4(), blender::ed::object::VoxelSizeEditCustomData::slow_mode, sub_v2_v2v2(), sub_v3_v3v3(), blender::ed::object::VoxelSizeEditCustomData::text_mat, unit_m4(), RegionView3D::viewinv, blender::ed::object::VoxelSizeEditCustomData::voxel_size, voxel_size_edit_draw(), VOXEL_SIZE_EDIT_MAX_GRIDS_LINES, voxel_size_edit_update_header(), blender::ed::object::VoxelSizeEditCustomData::voxel_size_max, blender::ed::object::VoxelSizeEditCustomData::voxel_size_min, and WM_event_add_modal_handler().

Referenced by OBJECT_OT_voxel_size_edit().

◆ voxel_size_edit_modal()

◆ voxel_size_edit_poll()

bool blender::ed::object::voxel_size_edit_poll ( bContext * C)
static

Definition at line 609 of file object_remesh.cc.

References C, CTX_wm_region_view3d(), and object_remesh_poll().

Referenced by OBJECT_OT_voxel_size_edit().

◆ voxel_size_edit_update_header()

void blender::ed::object::voxel_size_edit_update_header ( wmOperator * op,
bContext * C )
static

◆ voxel_size_parallel_lines_draw()

void blender::ed::object::voxel_size_parallel_lines_draw ( uint pos3d,
const float initial_co[3],
const float end_co[3],
const float length_co[3],
const float spacing )
static

◆ wm_collection_export_all_exec()

◆ WM_OT_collection_export_all()

void blender::ed::object::WM_OT_collection_export_all ( wmOperatorType * ot)
static

◆ write_external_bake_pixels()

◆ write_internal_bake_pixels()

◆ xform_skip_child_container_create()

◆ xform_skip_child_container_item_ensure_from_array()

Variable Documentation

◆ align_options

const EnumPropertyItem blender::ed::object::align_options[]
static
Initial value:
= {
{ALIGN_WORLD, "WORLD", 0, "World", "Align the new object to the world"},
{ALIGN_VIEW, "VIEW", 0, "View", "Align the new object to the view"},
{ALIGN_CURSOR, "CURSOR", 0, "3D Cursor", "Use the 3D cursor orientation for the new object"},
{0, nullptr, 0, nullptr, nullptr},
}

Definition at line 199 of file object_add.cc.

Referenced by add_generic_props().

◆ constraint_owner_items

const EnumPropertyItem blender::ed::object::constraint_owner_items[]
static
Initial value:
= {
"OBJECT",
0,
"Object",
"Edit a constraint on the active object"},
{EDIT_CONSTRAINT_OWNER_BONE, "BONE", 0, "Bone", "Edit a constraint on the active bone"},
{0, nullptr, 0, nullptr, nullptr},
}
#define EDIT_CONSTRAINT_OWNER_BONE
#define EDIT_CONSTRAINT_OWNER_OBJECT

Definition at line 572 of file object_constraint.cc.

Referenced by edit_constraint_properties().

◆ convert_target_items

const EnumPropertyItem blender::ed::object::convert_target_items[]
static
Initial value:
= {
"CURVE",
ICON_OUTLINER_OB_CURVE,
"Curve",
"Curve from Mesh or Text objects"},
"MESH",
ICON_OUTLINER_OB_MESH,
"Mesh",
"Mesh from Curve, Surface, Metaball, Text, or Point Cloud objects"},
"POINTCLOUD",
ICON_OUTLINER_OB_POINTCLOUD,
"Point Cloud",
"Point Cloud from Mesh objects"},
{OB_CURVES, "CURVES", ICON_OUTLINER_OB_CURVES, "Curves", "Curves from evaluated curve data"},
"GREASEPENCIL",
ICON_OUTLINER_OB_GREASEPENCIL,
"Grease Pencil",
"Grease Pencil from Curve or Mesh objects"},
{0, nullptr, 0, nullptr, nullptr},
}
@ OB_GREASE_PENCIL
@ OB_MESH
@ OB_POINTCLOUD
@ OB_CURVES_LEGACY
@ OB_CURVES

Definition at line 2977 of file object_add.cc.

Referenced by convert_target_itemf(), and OBJECT_OT_convert().

◆ DT_layer_items

const EnumPropertyItem blender::ed::object::DT_layer_items[]
static

◆ field_type_items

const EnumPropertyItem blender::ed::object::field_type_items[]
static
Initial value:
= {
{PFIELD_FORCE, "FORCE", ICON_FORCE_FORCE, "Force", ""},
{PFIELD_WIND, "WIND", ICON_FORCE_WIND, "Wind", ""},
{PFIELD_VORTEX, "VORTEX", ICON_FORCE_VORTEX, "Vortex", ""},
{PFIELD_MAGNET, "MAGNET", ICON_FORCE_MAGNETIC, "Magnetic", ""},
{PFIELD_HARMONIC, "HARMONIC", ICON_FORCE_HARMONIC, "Harmonic", ""},
{PFIELD_CHARGE, "CHARGE", ICON_FORCE_CHARGE, "Charge", ""},
{PFIELD_LENNARDJ, "LENNARDJ", ICON_FORCE_LENNARDJONES, "Lennard-Jones", ""},
{PFIELD_TEXTURE, "TEXTURE", ICON_FORCE_TEXTURE, "Texture", ""},
{PFIELD_GUIDE, "GUIDE", ICON_FORCE_CURVE, "Curve Guide", ""},
{PFIELD_BOID, "BOID", ICON_FORCE_BOID, "Boid", ""},
{PFIELD_TURBULENCE, "TURBULENCE", ICON_FORCE_TURBULENCE, "Turbulence", ""},
{PFIELD_DRAG, "DRAG", ICON_FORCE_DRAG, "Drag", ""},
{PFIELD_FLUIDFLOW, "FLUID", ICON_FORCE_FLUIDFLOW, "Fluid Flow", ""},
{0, nullptr, 0, nullptr, nullptr},
}
@ PFIELD_FLUIDFLOW
@ PFIELD_HARMONIC
@ PFIELD_TURBULENCE
@ PFIELD_LENNARDJ

Definition at line 157 of file object_add.cc.

Referenced by OBJECT_OT_effector_add().

◆ lightprobe_type_items

EnumPropertyItem blender::ed::object::lightprobe_type_items[]
static
Initial value:
= {
"SPHERE",
ICON_LIGHTPROBE_SPHERE,
"Sphere",
"Light probe that captures precise lighting from all directions at a single point in space"},
"PLANE",
ICON_LIGHTPROBE_PLANE,
"Plane",
"Light probe that captures incoming light from a single direction on a plane"},
"VOLUME",
ICON_LIGHTPROBE_VOLUME,
"Volume",
"Light probe that captures low frequency lighting inside a volume"},
{0, nullptr, 0, nullptr, nullptr},
}
@ LIGHTPROBE_TYPE_PLANE
@ LIGHTPROBE_TYPE_VOLUME
@ LIGHTPROBE_TYPE_SPHERE

Definition at line 174 of file object_add.cc.

Referenced by OBJECT_OT_lightprobe_add().

◆ LOG [1/2]

CLG_LogRef blender::ed::object::LOG = {"object.edit"}
static

Definition at line 118 of file object_edit.cc.

Referenced by add_shapekey_layers(), editmode_enter_ex(), and editmode_load_free_ex().

◆ LOG [2/2]

CLG_LogRef blender::ed::object::LOG = {"object"}
static

Definition at line 109 of file object_modifier.cc.

◆ mode_transfer_flash_length

float blender::ed::object::mode_transfer_flash_length = 0.55f
constexpr

Definition at line 443 of file object_modes.cc.

Referenced by alpha_from_time_get(), and mode_transfer_overlay_current_state().

◆ mode_type_items

const EnumPropertyItem blender::ed::object::mode_type_items[]
static
Initial value:
= {
"RATIO",
0,
"Ratio",
"Specify target number of faces relative to the current mesh"},
"EDGE",
0,
"Edge Length",
"Input target edge length in the new mesh"},
{QUADRIFLOW_REMESH_FACES, "FACES", 0, "Faces", "Input target number of faces in the new mesh"},
{0, nullptr, 0, nullptr, nullptr},
}

Definition at line 1105 of file object_remesh.cc.

Referenced by OBJECT_OT_quadriflow_remesh().

◆ prop_clear_parent_types

const EnumPropertyItem blender::ed::object::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, nullptr, 0, nullptr, nullptr},
}

Definition at line 314 of file object_relations.cc.

Referenced by OBJECT_OT_parent_clear().

◆ prop_clear_track_types

const EnumPropertyItem blender::ed::object::prop_clear_track_types[]
static
Initial value:
= {
{CLEAR_TRACK, "CLEAR", 0, "Clear Track", ""},
"CLEAR_KEEP_TRANSFORM",
0,
"Clear and Keep Transformation (Clear Track)",
""},
{0, nullptr, 0, nullptr, nullptr},
}

Definition at line 1202 of file object_relations.cc.

Referenced by OBJECT_OT_track_clear().

◆ prop_make_parent_types

const EnumPropertyItem blender::ed::object::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, nullptr, 0, nullptr, nullptr},
}

Definition at line 487 of file object_relations.cc.

Referenced by OBJECT_OT_parent_set().

◆ prop_make_track_types

const EnumPropertyItem blender::ed::object::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, nullptr, 0, nullptr, nullptr},
}

Definition at line 1284 of file object_relations.cc.

Referenced by OBJECT_OT_track_set().

◆ prop_multires_subdivide_mode_type

EnumPropertyItem blender::ed::object::prop_multires_subdivide_mode_type[]
static
Initial value:
= {
"CATMULL_CLARK",
0,
"Catmull-Clark",
"Create a new level using Catmull-Clark subdivisions"},
"SIMPLE",
0,
"Simple",
"Create a new level using simple subdivisions"},
"LINEAR",
0,
"Linear",
"Create a new level using linear interpolation of the sculpted displacement"},
{0, nullptr, 0, nullptr, nullptr},
}

Definition at line 97 of file object_multires_modifier.cc.

Referenced by OBJECT_OT_multires_subdivide().

◆ prop_select_grouped_types

const EnumPropertyItem blender::ed::object::prop_select_grouped_types[]
static
Initial value:
= {
{OBJECT_GRPSEL_CHILDREN_RECURSIVE, "CHILDREN_RECURSIVE", 0, "Children", ""},
{OBJECT_GRPSEL_CHILDREN, "CHILDREN", 0, "Immediate Children", ""},
{OBJECT_GRPSEL_PARENT, "PARENT", 0, "Parent", ""},
{OBJECT_GRPSEL_SIBLINGS, "SIBLINGS", 0, "Siblings", "Shared parent"},
{OBJECT_GRPSEL_TYPE, "TYPE", 0, "Type", "Shared object type"},
{OBJECT_GRPSEL_COLLECTION, "COLLECTION", 0, "Collection", "Shared collection"},
{OBJECT_GRPSEL_HOOK, "HOOK", 0, "Hook", ""},
{OBJECT_GRPSEL_PASS, "PASS", 0, "Pass", "Render pass index"},
{OBJECT_GRPSEL_COLOR, "COLOR", 0, "Color", "Object color"},
"KEYINGSET",
0,
"Keying Set",
"Objects included in active Keying Set"},
{OBJECT_GRPSEL_LIGHT_TYPE, "LIGHT_TYPE", 0, "Light Type", "Matching light types"},
{0, nullptr, 0, nullptr, nullptr},
}

Definition at line 732 of file object_select.cc.

Referenced by OBJECT_OT_select_grouped().

◆ prop_select_linked_types

const EnumPropertyItem blender::ed::object::prop_select_linked_types[]
static
Initial value:
= {
{OBJECT_SELECT_LINKED_OBDATA, "OBDATA", 0, "Object Data", ""},
{OBJECT_SELECT_LINKED_MATERIAL, "MATERIAL", 0, "Material", ""},
{OBJECT_SELECT_LINKED_DUPGROUP, "DUPGROUP", 0, "Instanced Collection", ""},
{OBJECT_SELECT_LINKED_PARTICLE, "PARTICLE", 0, "Particle System", ""},
{OBJECT_SELECT_LINKED_LIBRARY, "LIBRARY", 0, "Library", ""},
{OBJECT_SELECT_LINKED_LIBRARY_OBDATA, "LIBRARY_OBDATA", 0, "Library (Object Data)", ""},
{0, nullptr, 0, nullptr, nullptr},
}

Definition at line 445 of file object_select.cc.

Referenced by OBJECT_OT_select_linked().

◆ rna_enum_gpencil_add_stroke_depth_order_items

EnumPropertyItem blender::ed::object::rna_enum_gpencil_add_stroke_depth_order_items[]
static
Initial value:
= {
"2D",
0,
"2D Layers",
"Display strokes using Grease Pencil layers to define order"},
{GP_DRAWMODE_3D, "3D", 0, "3D Location", "Display strokes using real 3D position in 3D space"},
{0, nullptr, 0, nullptr, nullptr},
}

Definition at line 1605 of file object_add.cc.

Referenced by OBJECT_OT_grease_pencil_add().

◆ vgroup_lock_actions

const EnumPropertyItem blender::ed::object::vgroup_lock_actions[]
static
Initial value:
= {
"TOGGLE",
0,
"Toggle",
"Unlock all vertex groups if there is at least one locked group, lock all in other case"},
{VGROUP_LOCK, "LOCK", 0, "Lock", "Lock all vertex groups"},
{VGROUP_UNLOCK, "UNLOCK", 0, "Unlock", "Unlock all vertex groups"},
{VGROUP_INVERT, "INVERT", 0, "Invert", "Invert the lock state of all vertex groups"},
{0, nullptr, 0, nullptr, nullptr},
}

Definition at line 1494 of file object_vgroup.cc.

Referenced by OBJECT_OT_vertex_group_lock().

◆ vgroup_lock_mask

const EnumPropertyItem blender::ed::object::vgroup_lock_mask[]
static
Initial value:
= {
{VGROUP_MASK_ALL, "ALL", 0, "All", "Apply action to all vertex groups"},
{VGROUP_MASK_SELECTED, "SELECTED", 0, "Selected", "Apply to selected vertex groups"},
{VGROUP_MASK_UNSELECTED, "UNSELECTED", 0, "Unselected", "Apply to unselected vertex groups"},
"INVERT_UNSELECTED",
0,
"Invert Unselected",
"Apply the opposite of Lock/Unlock to unselected vertex groups"},
{0, nullptr, 0, nullptr, nullptr},
}

Definition at line 1513 of file object_vgroup.cc.

Referenced by OBJECT_OT_vertex_group_lock().

◆ WT_vertex_group_select_item

const EnumPropertyItem blender::ed::object::WT_vertex_group_select_item[]
static
Initial value:
= {
{WT_VGROUP_ACTIVE, "ACTIVE", 0, "Active Group", "The active Vertex Group"},
"BONE_SELECT",
0,
"Selected Pose Bones",
"All Vertex Groups assigned to Selection"},
"BONE_DEFORM",
0,
"Deform Pose Bones",
"All Vertex Groups assigned to Deform Bones"},
{WT_VGROUP_ALL, "ALL", 0, "All Groups", "All Vertex Groups"},
{0, nullptr, 0, nullptr, nullptr},
}
@ WT_VGROUP_BONE_SELECT
@ WT_VGROUP_ALL
@ WT_VGROUP_ACTIVE
@ WT_VGROUP_BONE_DEFORM

Definition at line 741 of file object_vgroup.cc.

Referenced by vgroup_selection_itemf_helper().