Blender
V3.3
|
#include <cstdlib>
#include <cstring>
#include <numeric>
#include "DNA_anim_types.h"
#include "DNA_armature_types.h"
#include "DNA_collection_types.h"
#include "DNA_gpencil_types.h"
#include "DNA_lattice_types.h"
#include "DNA_light_types.h"
#include "DNA_mesh_types.h"
#include "DNA_meta_types.h"
#include "DNA_object_types.h"
#include "DNA_scene_types.h"
#include "BLI_array.hh"
#include "BLI_listbase.h"
#include "BLI_math.h"
#include "BLI_math_vector.hh"
#include "BLI_utildefines.h"
#include "BLI_vector.hh"
#include "BKE_armature.h"
#include "BKE_context.h"
#include "BKE_curve.h"
#include "BKE_curves.hh"
#include "BKE_editmesh.h"
#include "BKE_gpencil.h"
#include "BKE_gpencil_geom.h"
#include "BKE_idtype.h"
#include "BKE_lattice.h"
#include "BKE_layer.h"
#include "BKE_lib_id.h"
#include "BKE_main.h"
#include "BKE_mball.h"
#include "BKE_mesh.h"
#include "BKE_multires.h"
#include "BKE_object.h"
#include "BKE_report.h"
#include "BKE_scene.h"
#include "BKE_tracking.h"
#include "DEG_depsgraph.h"
#include "DEG_depsgraph_query.h"
#include "RNA_access.h"
#include "RNA_define.h"
#include "WM_api.h"
#include "WM_types.h"
#include "ED_armature.h"
#include "ED_gpencil.h"
#include "ED_keyframing.h"
#include "ED_mesh.h"
#include "ED_object.h"
#include "ED_screen.h"
#include "ED_view3d.h"
#include "MEM_guardedalloc.h"
#include "object_intern.h"
Go to the source code of this file.
Classes | |
struct | XFormAxisItem |
struct | XFormAxisData |
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 } |
static int | object_origin_set_exec (bContext *C, wmOperator *op) |
void | OBJECT_OT_origin_set (wmOperatorType *ot) |
#define USE_FAKE_DEPTH_INIT |
Calculate a depth if the cursor isn't already over a depth (not essential but feels buggy without).
Definition at line 1834 of file object_transform.cc.
#define USE_RELATIVE_ROTATION |
When using multiple objects, apply their relative rotational offset to the active object.
Definition at line 1827 of file object_transform.cc.
#define USE_RENDER_OVERRIDE |
Disable overlays, ignoring user setting (light wire gets in the way).
Definition at line 1829 of file object_transform.cc.
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 1222 of file object_transform.cc.
|
static |
Definition at line 547 of file object_transform.cc.
References ELEM, Object::id, LIB_TAG_DOIT, Object::parent, and ID::tag.
Referenced by sorted_selected_editable_objects().
|
static |
Definition at line 641 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_gpencil_transform(), BKE_idtype_idcode_to_name(), BKE_lattice_transform(), BKE_main_id_newptr_and_tag_clear(), BKE_mball_transform(), BKE_mesh_transform(), BKE_object_apply_mat4(), 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_object_workob_calc_parent(), BKE_pose_where_is(), BKE_report(), BKE_reportf(), BKE_tracking_reconstruction_scale(), C, blender::bke::CurvesGeometry::calculate_bezier_auto_handles(), 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, curves, Object::data, DEG_get_evaluated_object(), DEG_id_tag_update(), DEG_relations_tag_update(), depsgraph, ED_object_single_obdata_user(), ELEM, fabsf, ListBase::first, Curve::flag, Curve::fsize, GS, TextBox::h, bGPdata::id, Object::id, ID_GD, ID_IS_LINKED, ID_IS_OVERRIDE_LIBRARY, ID_REAL_USERS, ID_RECALC_GEOMETRY, ID_RECALC_TRANSFORM, id_us_min(), id_us_plus(), ignore_parent_tx(), 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, bGPdata::layers, LISTBASE_FOREACH, Object::loc, mat3_to_scale(), max_fff(), mul_m3_m3m3(), mul_m3_v3(), mul_m4_m4_post(), multiresModifier_scale_disp(), ID::name, NC_OBJECT, NC_WINDOW, ND_TRANSFORM, OB_ARMATURE, OB_CAMERA, OB_CURVES, OB_CURVES_LEGACY, OB_EMPTY, OB_FONT, OB_GPENCIL, OB_LAMP, OB_LATTICE, OB_MBALL, OB_MESH, OB_SURF, Object::obmat, OPERATOR_CANCELLED, OPERATOR_FINISHED, Object::parentinv, Object::quat, Object::rot, Object::rotAngle, Object::rotAxis, RPT_ERROR, RPT_WARNING, Object::scale, scene, sorted_selected_editable_objects(), Curve::tb, Curve::totbox, MovieClip::tracking, blender::bke::CurvesGeometry::transform(), Light::type, unit_axis_angle(), unit_m3(), unit_qt(), TextBox::w, WM_event_add_notifier(), blender::bke::CurvesGeometry::wrap(), TextBox::x, TextBox::y, and zero_v3().
Referenced by object_transform_apply_exec().
Check if we need and can handle the special multiuser case.
Definition at line 596 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().
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 631 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().
|
static |
Definition at line 520 of file object_transform.cc.
References BKE_object_apply_mat4(), BKE_object_eval_transform_all(), BKE_object_transform_copy(), BKE_object_workob_calc_parent(), copy_m4_m4(), DEG_get_evaluated_object(), DEG_get_evaluated_scene(), DEG_id_tag_update(), depsgraph, ID_RECALC_TRANSFORM, invert_m4_m4(), LISTBASE_FOREACH, Main::objects, Object::obmat, Object::parentinv, and scene.
Referenced by apply_objects_internal(), and object_origin_set_exec().
Definition at line 1944 of file object_transform.cc.
References BKE_object_apply_mat4(), copy_m4_m4(), copy_v3_v3(), Object::loc, and Object::obmat.
Referenced by object_transform_axis_target_modal().
Definition at line 1930 of file object_transform.cc.
References BKE_object_apply_mat4(), copy_m4_m3(), copy_v3_v3(), Object::loc, Object::scale, and size().
Referenced by object_orient_to_location().
Definition at line 81 of file object_transform.cc.
References Object::dloc, Object::loc, OB_LOCK_LOCX, OB_LOCK_LOCY, OB_LOCK_LOCZ, and Object::protectflag.
Referenced by object_location_clear_exec().
Definition at line 105 of file object_transform.cc.
References axis_angle_to_eulO(), copy_qt_qt(), copy_v3_v3(), Object::dquat, Object::drot, Object::drotAngle, Object::drotAxis, eul_to_quat(), EULER_ORDER_DEFAULT, eulO_to_axis_angle(), IS_EQF, mul_qt_fl(), OB_LOCK_ROT4D, OB_LOCK_ROTW, OB_LOCK_ROTX, OB_LOCK_ROTY, OB_LOCK_ROTZ, Object::protectflag, Object::quat, quat_to_eul(), Object::rot, ROT_MODE_AXISANGLE, ROT_MODE_QUAT, Object::rotAngle, Object::rotAxis, Object::rotmode, unit_axis_angle(), unit_qt(), and zero_v3().
Referenced by object_rotation_clear_exec().
Definition at line 262 of file object_transform.cc.
References Object::dscale, OB_LOCK_SCALEX, OB_LOCK_SCALEY, OB_LOCK_SCALEZ, Object::protectflag, and Object::scale.
Referenced by object_scale_clear_exec().
|
static |
Definition at line 286 of file object_transform.cc.
References ANIM_get_keyingset_for_autokeying(), blender::Vector< T, InlineBufferCapacity, Allocator >::append(), BKE_scene_graph_evaluated_ensure(), BLI_assert, C, CTX_data_depsgraph_pointer(), CTX_data_main(), CTX_data_scene(), CTX_data_view_layer(), CTX_wm_view3d(), blender::Vector< T, InlineBufferCapacity, Allocator >::data(), DEG_id_tag_update(), depsgraph, ED_autokeyframe_object(), ED_object_data_xform_container_create(), ED_object_data_xform_container_destroy(), ED_object_data_xform_container_item_ensure(), ED_object_data_xform_container_update_all(), ED_object_xform_skip_child_container_create(), ED_object_xform_skip_child_container_destroy(), ED_object_xform_skip_child_container_item_ensure_from_array(), ED_object_xform_skip_child_container_update_all(), ELEM, FOREACH_SELECTED_EDITABLE_OBJECT_BEGIN, FOREACH_SELECTED_EDITABLE_OBJECT_END, ID_RECALC_TRANSFORM, blender::Vector< T, InlineBufferCapacity, Allocator >::is_empty(), NC_OBJECT, ND_TRANSFORM, OPERATOR_CANCELLED, OPERATOR_FINISHED, wmOperator::ptr, RNA_boolean_get(), SCE_XFORM_DATA_ORIGIN, SCE_XFORM_SKIP_CHILDREN, scene, blender::Vector< T, InlineBufferCapacity, Allocator >::size(), Scene::toolsettings, ToolSettings::transform_flag, and WM_event_add_notifier().
Referenced by object_location_clear_exec(), object_rotation_clear_exec(), and object_scale_clear_exec().
Definition at line 1895 of file object_transform.cc.
References Object::data, ELEM, LA_AREA, LA_SPOT, LA_SUN, OB_CAMERA, OB_LAMP, Light::type, and Object::type.
Referenced by object_transform_axis_target_invoke().
|
static |
Definition at line 370 of file object_transform.cc.
References ANIM_KS_LOCATION_ID, C, object_clear_loc(), and object_clear_transform_generic_exec().
Referenced by OBJECT_OT_location_clear().
|
static |
Definition at line 1957 of file object_transform.cc.
References len_squared_v3v3(), mul_m3_m3m3(), negate_v3(), normalize_v3(), object_apply_rotation(), Object::obmat, rotation_between_vecs_to_mat3(), and sub_v3_v3v3().
Referenced by object_transform_axis_target_modal().
|
static |
Definition at line 472 of file object_transform.cc.
References C, copy_m3_m4(), CTX_DATA_BEGIN, CTX_DATA_END, DEG_id_tag_update(), ID_RECALC_TRANSFORM, mul_m3_v3(), NC_OBJECT, ND_TRANSFORM, negate_v3_v3(), OPERATOR_FINISHED, v1, and WM_event_add_notifier().
Referenced by OBJECT_OT_origin_clear().
|
static |
Definition at line 1230 of file object_transform.cc.
References add_v3_v3(), BKE_armature_copy_bone_transforms(), BKE_curve_center_bounds(), BKE_curve_center_median(), BKE_curve_translate(), BKE_gpencil_centroid_3d(), BKE_gpencil_layer_transform_matrix_get(), BKE_gpencil_stroke_geometry_update(), BKE_id_is_editable(), BKE_lattice_center_bounds(), BKE_lattice_center_median(), BKE_lattice_translate(), BKE_mball_center_bounds(), BKE_mball_center_median(), BKE_mball_translate(), BKE_mesh_center_bounds(), BKE_mesh_center_median(), BKE_mesh_center_of_surface(), BKE_mesh_center_of_volume(), BKE_mesh_translate(), 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, BMVert::co, copy_m3_m4(), 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, curves, blender::Array< T, InlineBufferCapacity, Allocator >::data(), Object::data, DEG_get_evaluated_object(), DEG_id_tag_update(), depsgraph, ED_armature_origin_set(), EDBM_mesh_normals_update(), Mesh::edit_mesh, ELEM, Curve::flag, Object::flag, float(), Curves::geometry, GEOMETRY_TO_ORIGIN, bArmature::id, Curve::id, Curves::id, bGPdata::id, Lattice::id, Mesh::id, MetaBall::id, Object::id, ID_IS_LINKED, ID_IS_OVERRIDE_LIBRARY, ID_REAL_USERS, ID_RECALC_COPY_ON_WRITE, ID_RECALC_GEOMETRY, ID_RECALC_TRANSFORM, ignore_parent_tx(), Object::imat, blender::Array< T, InlineBufferCapacity, Allocator >::index_range(), INIT_MINMAX, invert_m3_m3(), invert_m4_m4(), blender::Array< T, InlineBufferCapacity, Allocator >::is_empty(), bGPdata::layers, LIB_TAG_DOIT, LISTBASE_FOREACH, View3DCursor::location, madd_v3_v3fl(), max, mid_v3_v3v3(), blender::math::midpoint(), min, minmax_v3v3_v3(), mul_m3_v3(), mul_m4_v3(), mul_v3_m3v3(), mul_v3_m4v3(), 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_GPENCIL, OB_LATTICE, OB_MBALL, OB_MESH, OB_SURF, Main::objects, Object::obmat, OPERATOR_CANCELLED, OPERATOR_FINISHED, ORIGIN_TO_CENTER_OF_MASS_SURFACE, ORIGIN_TO_CENTER_OF_MASS_VOLUME, ORIGIN_TO_CURSOR, ORIGIN_TO_GEOMETRY, positions, wmOperator::ptr, 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, scene, blender::Array< T, InlineBufferCapacity, Allocator >::size(), sorted_selected_editable_objects(), sub_v3_v3(), sub_v3_v3v3(), ID::tag, Scene::toolsettings, BMesh::totvert, ToolSettings::transform_pivot_point, Object::type, V3D_AROUND_CENTER_BOUNDS, V3D_AROUND_CENTER_MEDIAN, BezTriple::vec, WM_event_add_notifier(), blender::bke::CurvesGeometry::wrap(), bGPDspoint::x, Curve::xof, Curve::yof, and zero_v3().
Referenced by OBJECT_OT_origin_set().
void OBJECT_OT_location_clear | ( | wmOperatorType * | ot | ) |
Definition at line 375 of file object_transform.cc.
References wmOperatorType::description, ED_operator_scene_editable(), wmOperatorType::exec, wmOperatorType::flag, wmOperatorType::idname, wmOperatorType::name, object_location_clear_exec(), OPTYPE_REGISTER, OPTYPE_UNDO, ot, wmOperatorType::poll, wmOperatorType::prop, RNA_def_boolean(), and wmOperatorType::srna.
Referenced by ED_operatortypes_object().
void OBJECT_OT_origin_clear | ( | wmOperatorType * | ot | ) |
Definition at line 497 of file object_transform.cc.
References wmOperatorType::description, ED_operator_scene_editable(), wmOperatorType::exec, wmOperatorType::flag, wmOperatorType::idname, wmOperatorType::name, object_origin_clear_exec(), OPTYPE_REGISTER, OPTYPE_UNDO, ot, and wmOperatorType::poll.
Referenced by ED_operatortypes_object().
void OBJECT_OT_origin_set | ( | wmOperatorType * | ot | ) |
Definition at line 1756 of file object_transform.cc.
References wmOperatorType::description, ED_operator_scene_editable(), wmOperatorType::exec, wmOperatorType::flag, GEOMETRY_TO_ORIGIN, wmOperatorType::idname, wmOperatorType::invoke, wmOperatorType::name, object_origin_set_exec(), OPTYPE_REGISTER, OPTYPE_UNDO, ORIGIN_TO_CENTER_OF_MASS_SURFACE, ORIGIN_TO_CENTER_OF_MASS_VOLUME, ORIGIN_TO_CURSOR, ORIGIN_TO_GEOMETRY, ot, wmOperatorType::poll, wmOperatorType::prop, RNA_def_enum(), wmOperatorType::srna, V3D_AROUND_CENTER_BOUNDS, V3D_AROUND_CENTER_MEDIAN, and WM_menu_invoke().
Referenced by ED_operatortypes_object().
void OBJECT_OT_parent_inverse_apply | ( | wmOperatorType * | ot | ) |
Definition at line 1201 of file object_transform.cc.
References wmOperatorType::description, ED_operator_objectmode(), wmOperatorType::exec, wmOperatorType::flag, wmOperatorType::idname, wmOperatorType::name, object_parent_inverse_apply_exec(), OPTYPE_REGISTER, OPTYPE_UNDO, ot, and wmOperatorType::poll.
Referenced by ED_operatortypes_object().
void OBJECT_OT_rotation_clear | ( | wmOperatorType * | ot | ) |
Definition at line 409 of file object_transform.cc.
References wmOperatorType::description, ED_operator_scene_editable(), wmOperatorType::exec, wmOperatorType::flag, wmOperatorType::idname, wmOperatorType::name, object_rotation_clear_exec(), OPTYPE_REGISTER, OPTYPE_UNDO, ot, wmOperatorType::poll, wmOperatorType::prop, RNA_def_boolean(), and wmOperatorType::srna.
Referenced by ED_operatortypes_object().
void OBJECT_OT_scale_clear | ( | wmOperatorType * | ot | ) |
Definition at line 443 of file object_transform.cc.
References wmOperatorType::description, ED_operator_scene_editable(), wmOperatorType::exec, wmOperatorType::flag, wmOperatorType::idname, wmOperatorType::name, object_scale_clear_exec(), OPTYPE_REGISTER, OPTYPE_UNDO, ot, wmOperatorType::poll, wmOperatorType::prop, RNA_def_boolean(), and wmOperatorType::srna.
Referenced by ED_operatortypes_object().
void OBJECT_OT_transform_apply | ( | wmOperatorType * | ot | ) |
Definition at line 1146 of file object_transform.cc.
References wmOperatorType::description, ED_operator_objectmode(), wmOperatorType::exec, wmOperatorType::flag, wmOperatorType::idname, wmOperatorType::invoke, wmOperatorType::name, object_transform_apply_exec(), object_transform_apply_invoke(), OPTYPE_REGISTER, OPTYPE_UNDO, ot, wmOperatorType::poll, PROP_HIDDEN, PROP_SKIP_SAVE, RNA_def_boolean(), RNA_def_property_flag(), and wmOperatorType::srna.
Referenced by ED_operatortypes_object().
void OBJECT_OT_transform_axis_target | ( | wmOperatorType * | ot | ) |
Definition at line 2251 of file object_transform.cc.
References wmOperatorType::cancel, wmOperatorType::description, ED_operator_region_view3d_active(), wmOperatorType::flag, wmOperatorType::idname, wmOperatorType::invoke, wmOperatorType::modal, wmOperatorType::name, object_transform_axis_target_cancel(), object_transform_axis_target_invoke(), object_transform_axis_target_modal(), OPTYPE_BLOCKING, OPTYPE_REGISTER, OPTYPE_UNDO, ot, and wmOperatorType::poll.
Referenced by ED_operatortypes_object().
void OBJECT_OT_visual_transform_apply | ( | wmOperatorType * | ot | ) |
Definition at line 1096 of file object_transform.cc.
References wmOperatorType::description, ED_operator_scene_editable(), wmOperatorType::exec, wmOperatorType::flag, wmOperatorType::idname, wmOperatorType::name, OPTYPE_REGISTER, OPTYPE_UNDO, ot, wmOperatorType::poll, and visual_transform_apply_exec().
Referenced by ED_operatortypes_object().
|
static |
Definition at line 1184 of file object_transform.cc.
References BKE_object_apply_parent_inverse(), C, CTX_DATA_BEGIN, CTX_DATA_END, DEG_id_tag_update(), ID_RECALC_TRANSFORM, NC_OBJECT, ND_TRANSFORM, OPERATOR_FINISHED, and WM_event_add_notifier().
Referenced by OBJECT_OT_parent_inverse_apply().
|
static |
Definition at line 404 of file object_transform.cc.
References ANIM_KS_ROTATION_ID, C, object_clear_rot(), and object_clear_transform_generic_exec().
Referenced by OBJECT_OT_rotation_clear().
|
static |
Definition at line 438 of file object_transform.cc.
References ANIM_KS_SCALING_ID, C, object_clear_scale(), and object_clear_transform_generic_exec().
Referenced by OBJECT_OT_scale_clear().
|
static |
Definition at line 1111 of file object_transform.cc.
References apply_objects_internal(), C, OPERATOR_FINISHED, wmOperator::ptr, wmOperator::reports, RNA_boolean_get(), and rot.
Referenced by OBJECT_OT_transform_apply(), and object_transform_apply_invoke().
|
static |
Definition at line 1126 of file object_transform.cc.
References apply_objects_internal_can_multiuser(), apply_objects_internal_need_single_user(), C, Object::data, ED_object_active_context(), object_transform_apply_exec(), wmOperator::ptr, RNA_property_boolean_get(), RNA_property_boolean_set(), RNA_property_is_set(), RNA_struct_find_property(), and WM_operator_confirm_message().
Referenced by OBJECT_OT_transform_apply().
|
static |
Definition at line 1866 of file object_transform.cc.
References add_v3_v3(), add_v3_v3v3(), center, XFormAxisData::depth, ED_view3d_project_v3(), ED_view3d_win_to_ray(), XFormAxisData::is_depth_valid, isect_line_line_v3(), mul_v3_fl(), XFormAxisItem::ob, XFormAxisData::object_data, Object::obmat, XFormAxisData::prev, ViewContext::region, and XFormAxisData::vc.
Referenced by object_transform_axis_target_modal().
|
static |
Definition at line 1985 of file object_transform.cc.
References BKE_object_tfm_restore(), C, wmOperator::customdata, DEG_id_tag_update(), Object::id, ID_RECALC_TRANSFORM, NC_OBJECT, ND_TRANSFORM, XFormAxisItem::ob, XFormAxisData::object_data, object_transform_axis_target_free_data(), XFormAxisItem::obtfm, and WM_event_add_notifier().
Referenced by OBJECT_OT_transform_axis_target(), and object_transform_axis_target_modal().
|
static |
Definition at line 1912 of file object_transform.cc.
References wmOperator::customdata, XFormAxisData::depths, ED_view3d_depths_free(), MEM_freeN, XFormAxisData::object_data, and XFormAxisItem::obtfm.
Referenced by object_transform_axis_target_cancel(), and object_transform_axis_target_modal().
|
static |
Definition at line 1997 of file object_transform.cc.
References blender::Vector< T, InlineBufferCapacity, Allocator >::append(), BKE_object_rot_to_mat3(), BKE_object_tfm_backup(), BKE_object_to_mat3(), BKE_report(), C, CTX_DATA_BEGIN, CTX_DATA_END, CTX_data_ensure_evaluated_depsgraph(), wmOperator::customdata, depsgraph, ViewContext::depsgraph, XFormAxisData::depth, XFormAxisData::depths, dot_v3v3(), ED_region_tag_redraw(), ED_view3d_depth_override(), ED_view3d_viewcontext_init(), View3D::flag2, XFormAxisData::init_event, XFormAxisData::is_depth_valid, XFormAxisData::is_normal_valid, XFormAxisData::is_translate, XFormAxisItem::is_z_flip, blender::Vector< T, InlineBufferCapacity, Allocator >::last(), ViewContext::mval, XFormAxisItem::ob, ViewContext::obact, XFormAxisData::object_data, object_is_target_compat(), XFormAxisItem::obtfm, OPERATOR_CANCELLED, OPERATOR_PASS_THROUGH, OPERATOR_RUNNING_MODAL, XFormAxisData::prev, ViewContext::region, wmOperator::reports, XFormAxisItem::rot_mat, RPT_WARNING, wmEvent::type, ViewContext::v3d, V3D_DEPTH_NO_GPENCIL, V3D_HIDE_OVERLAYS, XFormAxisData::vc, WM_event_add_modal_handler(), and WM_userdef_event_type_from_keymap_type().
Referenced by OBJECT_OT_transform_axis_target().
|
static |
Definition at line 2070 of file object_transform.cc.
References add_v3_v3(), C, copy_m3_m4(), copy_v3_v3(), wmOperator::customdata, DEG_id_tag_update(), XFormAxisData::depth, ViewDepths::depth_range, XFormAxisData::depths, dot_v3v3(), double(), 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, Object::id, ID_RECALC_TRANSFORM, blender::Vector< T, InlineBufferCapacity, Allocator >::index_range(), XFormAxisData::init_event, invert_m3_m3(), XFormAxisData::is_depth_valid, XFormAxisData::is_normal_valid, XFormAxisData::is_translate, 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, normal, XFormAxisData::normal, normalize_m3(), normalize_v3(), normalize_v3_v3(), XFormAxisItem::ob, object_apply_location(), 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::obmat, OPERATOR_CANCELLED, OPERATOR_FINISHED, OPERATOR_RUNNING_MODAL, XFormAxisData::prev, ViewContext::region, RIGHTMOUSE, XFormAxisItem::rot_mat, blender::Vector< T, InlineBufferCapacity, Allocator >::size(), wmEvent::type, wmEvent::val, XFormAxisData::vc, view3d_operator_needs_opengl(), ViewDepths::w, WM_event_add_notifier(), x, XFormAxisItem::xform_dist, XFormAxisItem::xform_rot_offset, and y.
Referenced by OBJECT_OT_transform_axis_target().
Definition at line 563 of file object_transform.cc.
References append_sorted_object_parent_hierarchy(), BKE_main_id_tag_all(), C, CTX_DATA_BEGIN, CTX_DATA_END, CTX_data_main(), blender::Array< T, InlineBufferCapacity, Allocator >::data(), and LIB_TAG_DOIT.
Referenced by apply_objects_internal(), and object_origin_set_exec().
|
static |
Definition at line 1069 of file object_transform.cc.
References BKE_object_apply_mat4(), BKE_object_transform_copy(), BKE_object_where_is_calc(), C, CTX_DATA_BEGIN, CTX_DATA_END, CTX_data_ensure_evaluated_depsgraph(), CTX_data_scene(), DEG_get_evaluated_object(), DEG_id_tag_update(), depsgraph, ID_RECALC_TRANSFORM, NC_OBJECT, ND_TRANSFORM, Object::obmat, OPERATOR_CANCELLED, OPERATOR_FINISHED, scene, and WM_event_add_notifier().
Referenced by OBJECT_OT_visual_transform_apply().