|
Blender V5.0
|
#include <cfloat>#include <cstring>#include <optional>#include "DNA_action_types.h"#include "DNA_armature_types.h"#include "DNA_curve_types.h"#include "DNA_mesh_types.h"#include "DNA_meshdata_types.h"#include "DNA_meta_types.h"#include "DNA_object_types.h"#include "DNA_pointcloud_types.h"#include "DNA_scene_types.h"#include "DNA_tracking_types.h"#include "MEM_guardedalloc.h"#include "BLI_bitmap.h"#include "BLI_function_ref.hh"#include "BLI_lasso_2d.hh"#include "BLI_listbase.h"#include "BLI_math_bits.h"#include "BLI_math_geom.h"#include "BLI_rect.h"#include "BLI_span.hh"#include "BLI_string_utf8.h"#include "BLI_task.hh"#include "BLI_utildefines.h"#include "BLI_vector.hh"#include "BLT_translation.hh"#include "BKE_action.hh"#include "BKE_armature.hh"#include "BKE_attribute.hh"#include "BKE_context.hh"#include "BKE_crazyspace.hh"#include "BKE_curve.hh"#include "BKE_curves.hh"#include "BKE_editmesh.hh"#include "BKE_global.hh"#include "BKE_grease_pencil.hh"#include "BKE_layer.hh"#include "BKE_main.hh"#include "BKE_mball.hh"#include "BKE_mesh.hh"#include "BKE_object.hh"#include "BKE_paint.hh"#include "BKE_scene.hh"#include "BKE_tracking.h"#include "BKE_workspace.hh"#include "WM_api.hh"#include "WM_toolsystem.hh"#include "WM_types.hh"#include "RNA_access.hh"#include "RNA_define.hh"#include "RNA_enum_types.hh"#include "ED_armature.hh"#include "ED_curve.hh"#include "ED_curves.hh"#include "ED_gpencil_legacy.hh"#include "ED_grease_pencil.hh"#include "ED_lattice.hh"#include "ED_mball.hh"#include "ED_mesh.hh"#include "ED_object.hh"#include "ED_outliner.hh"#include "ED_particle.hh"#include "ED_pointcloud.hh"#include "ED_screen.hh"#include "ED_sculpt.hh"#include "ED_select_utils.hh"#include "ED_uvedit.hh"#include "UI_interface.hh"#include "UI_resources.hh"#include "GPU_matrix.hh"#include "GPU_select.hh"#include "DEG_depsgraph.hh"#include "DEG_depsgraph_query.hh"#include "DRW_engine.hh"#include "DRW_select_buffer.hh"#include "ANIM_armature.hh"#include "ANIM_bone_collections.hh"#include "view3d_intern.hh"Go to the source code of this file.
Classes | |
| struct | EditSelectBuf_Cache |
| struct | LassoSelectUserData |
| struct | LassoSelectUserData_ForMeshEdge |
| struct | LassoSelectUserData_ForMeshObjectVert |
| struct | SelMenuItemF |
| struct | ClosestPointCloud |
| struct | ClosestCurveDataBlock |
| struct | ClosestGreasePencilDrawing |
| struct | BoxSelectUserData |
| struct | BoxSelectUserData_ForMeshObjectVert |
| struct | BoxSelectUserData_ForMeshEdge |
| struct | CircleSelectUserData |
| struct | CircleSelectUserData_ForMeshObjectVert |
| class | UVSyncSelectFromMesh |
Typedefs | |
| using | int2 |
Functions | |
Public Utilities | |
| float | ED_view3d_select_dist_px () |
| ViewContext | ED_view3d_viewcontext_init (bContext *C, Depsgraph *depsgraph) |
| void | ED_view3d_viewcontext_init_object (ViewContext *vc, Object *obact) |
Internal Object Utilities | |
| static bool | object_deselect_all_visible (const Scene *scene, ViewLayer *view_layer, View3D *v3d) |
| static bool | object_deselect_all_except (const Scene *scene, ViewLayer *view_layer, Base *b) |
Internal Edit-Mesh Select Buffer Wrapper | |
Avoid duplicate code when using edit-mode selection, actual logic is handled outside of this function.
| |
| static void | editselect_buf_cache_init (const ViewContext *vc, short select_mode) |
| static void | editselect_buf_cache_free (EditSelectBuf_Cache *esel) |
| static void | editselect_buf_cache_free_voidp (void *esel_voidp) |
| static void | editselect_buf_cache_init_with_generic_userdata (wmGenericUserData *wm_userdata, const ViewContext *vc, short select_mode) |
Internal Edit-Mesh Utilities | |
| static bool | edbm_backbuf_check_and_select_verts (EditSelectBuf_Cache *esel, Depsgraph *depsgraph, Object *ob, BMEditMesh *em, UVSyncSelectFromMesh *uv_selctx, const eSelectOp sel_op) |
| static bool | edbm_backbuf_check_and_select_edges (EditSelectBuf_Cache *esel, Depsgraph *depsgraph, Object *ob, BMEditMesh *em, UVSyncSelectFromMesh *uv_selctx, const eSelectOp sel_op) |
| static bool | edbm_backbuf_check_and_select_faces (EditSelectBuf_Cache *esel, Depsgraph *depsgraph, Object *ob, BMEditMesh *em, UVSyncSelectFromMesh *uv_selctx, const eSelectOp sel_op) |
| static bool | edbm_backbuf_check_and_select_verts_obmode (Mesh *mesh, EditSelectBuf_Cache *esel, const eSelectOp sel_op) |
| static bool | edbm_backbuf_check_and_select_faces_obmode (Mesh *mesh, EditSelectBuf_Cache *esel, const eSelectOp sel_op) |
Lasso Select | |
| static void | view3d_userdata_lassoselect_init (LassoSelectUserData *r_data, const ViewContext *vc, const rcti *rect, const Span< int2 > mcoords, const eSelectOp sel_op) |
| static bool | view3d_selectable_data (bContext *C) |
| static bool | edge_fully_inside_rect (const rctf *rect, const float v1[2], const float v2[2]) |
| static bool | edge_inside_rect (const rctf *rect, const float v1[2], const float v2[2]) |
| static void | do_lasso_select_pose__do_tag (void *user_data, bPoseChannel *pchan, const float screen_co_a[2], const float screen_co_b[2]) |
| static void | do_lasso_tag_pose (const ViewContext *vc, const Span< int2 > mcoords) |
| static bool | do_lasso_select_objects (const ViewContext *vc, const Span< int2 > mcoords, const eSelectOp sel_op) |
| static blender::Vector< Base * > | do_pose_tag_select_op_prepare (const ViewContext *vc) |
| static bool | do_pose_tag_select_op_exec (blender::MutableSpan< Base * > bases, const eSelectOp sel_op) |
| static bool | do_lasso_select_pose (const ViewContext *vc, const Span< int2 > mcoords, const eSelectOp sel_op) |
| static void | do_lasso_select_mesh__doSelectVert (void *user_data, BMVert *eve, const float screen_co[2], int) |
| static void | do_lasso_select_mesh__doSelectEdge_pass0 (void *user_data, BMEdge *eed, const float screen_co_a[2], const float screen_co_b[2], int index) |
| static void | do_lasso_select_mesh__doSelectEdge_pass1 (void *user_data, BMEdge *eed, const float screen_co_a[2], const float screen_co_b[2], int index) |
| static void | do_lasso_select_mesh__doSelectFace (void *user_data, BMFace *efa, const float screen_co[2], int) |
| static bool | do_lasso_select_mesh (const ViewContext *vc, wmGenericUserData *wm_userdata, const Span< int2 > mcoords, const eSelectOp sel_op) |
| static void | do_lasso_select_curve__doSelect (void *user_data, Nurb *, BPoint *bp, BezTriple *bezt, int beztindex, bool handles_visible, const float screen_co[2]) |
| static bool | do_lasso_select_curve (const ViewContext *vc, const Span< int2 > mcoords, const eSelectOp sel_op) |
| static void | do_lasso_select_lattice__doSelect (void *user_data, BPoint *bp, const float screen_co[2]) |
| static bool | do_lasso_select_lattice (const ViewContext *vc, const Span< int2 > mcoords, const eSelectOp sel_op) |
| static void | do_lasso_select_armature__doSelectBone (void *user_data, EditBone *ebone, const float screen_co_a[2], const float screen_co_b[2]) |
| static void | do_lasso_select_armature__doSelectBone_clip_content (void *user_data, EditBone *ebone, const float screen_co_a[2], const float screen_co_b[2]) |
| static bool | do_lasso_select_armature (const ViewContext *vc, const Span< int2 > mcoords, const eSelectOp sel_op) |
| static void | do_lasso_select_mball__doSelectElem (void *user_data, MetaElem *ml, const float screen_co[2]) |
| static bool | do_lasso_select_meta (const ViewContext *vc, const Span< int2 > mcoords, const eSelectOp sel_op) |
| static bool | do_lasso_select_grease_pencil (const ViewContext *vc, const Span< int2 > mcoords, const eSelectOp sel_op) |
| static void | do_lasso_select_meshobject__doSelectVert (void *user_data, const float screen_co[2], int index) |
| static bool | do_lasso_select_paintvert (const ViewContext *vc, wmGenericUserData *wm_userdata, const Span< int2 > mcoords, const eSelectOp sel_op) |
| static bool | do_lasso_select_paintface (const ViewContext *vc, wmGenericUserData *wm_userdata, const Span< int2 > mcoords, const eSelectOp sel_op) |
| static bool | view3d_lasso_select (bContext *C, ViewContext *vc, const Span< int2 > mcoords, const eSelectOp sel_op) |
| static wmOperatorStatus | view3d_lasso_select_exec (bContext *C, wmOperator *op) |
| void | VIEW3D_OT_select_lasso (wmOperatorType *ot) |
Box Select | |
| static void | view3d_userdata_boxselect_init (BoxSelectUserData *r_data, const ViewContext *vc, const rcti *rect, const eSelectOp sel_op) |
| bool | edge_inside_circle (const float cent[2], float radius, const float screen_co_a[2], const float screen_co_b[2]) |
| static void | do_paintvert_box_select__doSelectVert (void *user_data, const float screen_co[2], int index) |
| static bool | do_paintvert_box_select (const ViewContext *vc, wmGenericUserData *wm_userdata, const rcti *rect, const eSelectOp sel_op) |
| static bool | do_paintface_box_select (const ViewContext *vc, wmGenericUserData *wm_userdata, const rcti *rect, eSelectOp sel_op) |
| static void | do_nurbs_box_select__doSelect (void *user_data, Nurb *, BPoint *bp, BezTriple *bezt, int beztindex, bool handles_visible, const float screen_co[2]) |
| static bool | do_nurbs_box_select (const ViewContext *vc, const rcti *rect, const eSelectOp sel_op) |
| static void | do_lattice_box_select__doSelect (void *user_data, BPoint *bp, const float screen_co[2]) |
| static bool | do_lattice_box_select (const ViewContext *vc, const rcti *rect, const eSelectOp sel_op) |
| static void | do_mesh_box_select__doSelectVert (void *user_data, BMVert *eve, const float screen_co[2], int) |
| static void | do_mesh_box_select__doSelectEdge_pass0 (void *user_data, BMEdge *eed, const float screen_co_a[2], const float screen_co_b[2], int index) |
| static void | do_mesh_box_select__doSelectEdge_pass1 (void *user_data, BMEdge *eed, const float screen_co_a[2], const float screen_co_b[2], int index) |
| static void | do_mesh_box_select__doSelectFace (void *user_data, BMFace *efa, const float screen_co[2], int) |
| static bool | do_mesh_box_select (const ViewContext *vc, wmGenericUserData *wm_userdata, const rcti *rect, const eSelectOp sel_op) |
| static bool | do_meta_box_select (const ViewContext *vc, const rcti *rect, const eSelectOp sel_op) |
| static bool | do_armature_box_select (const ViewContext *vc, const rcti *rect, const eSelectOp sel_op) |
| static int | gpu_bone_select_buffer_cmp (const void *sel_a_p, const void *sel_b_p) |
| static void | object_select_tag_updates (bContext &C, Scene &scene) |
| static bool | do_object_box_select (bContext *C, const ViewContext *vc, const rcti *rect, const eSelectOp sel_op) |
| static bool | do_pose_box_select (bContext *C, const ViewContext *vc, const rcti *rect, const eSelectOp sel_op) |
| static bool | do_grease_pencil_box_select (const ViewContext *vc, const rcti *rect, const eSelectOp sel_op) |
| static wmOperatorStatus | view3d_box_select_exec (bContext *C, wmOperator *op) |
| void | VIEW3D_OT_select_box (wmOperatorType *ot) |
Circle Select | |
| static void | view3d_userdata_circleselect_init (CircleSelectUserData *r_data, const ViewContext *vc, const bool select, const int mval[2], const float rad) |
| static void | mesh_circle_doSelectVert (void *user_data, BMVert *eve, const float screen_co[2], int) |
| static void | mesh_circle_doSelectEdge (void *user_data, BMEdge *eed, const float screen_co_a[2], const float screen_co_b[2], int) |
| static void | mesh_circle_doSelectFace (void *user_data, BMFace *efa, const float screen_co[2], int) |
| static bool | mesh_circle_select (const ViewContext *vc, wmGenericUserData *wm_userdata, eSelectOp sel_op, const int mval[2], float rad) |
| static bool | paint_facesel_circle_select (const ViewContext *vc, wmGenericUserData *wm_userdata, const eSelectOp sel_op, const int mval[2], float rad) |
| static void | paint_vertsel_circle_select_doSelectVert (void *user_data, const float screen_co[2], int index) |
| static bool | paint_vertsel_circle_select (const ViewContext *vc, wmGenericUserData *wm_userdata, const eSelectOp sel_op, const int mval[2], float rad) |
| static void | nurbscurve_circle_doSelect (void *user_data, Nurb *, BPoint *bp, BezTriple *bezt, int beztindex, bool, const float screen_co[2]) |
| static bool | nurbscurve_circle_select (const ViewContext *vc, const eSelectOp sel_op, const int mval[2], float rad) |
| static void | latticecurve_circle_doSelect (void *user_data, BPoint *bp, const float screen_co[2]) |
| static bool | lattice_circle_select (const ViewContext *vc, const eSelectOp sel_op, const int mval[2], float rad) |
| static bool | pchan_circle_doSelectJoint (void *user_data, bPoseChannel *pchan, const float screen_co[2]) |
| static void | do_circle_select_pose__doSelectBone (void *user_data, bPoseChannel *pchan, const float screen_co_a[2], const float screen_co_b[2]) |
| static bool | pose_circle_select (const ViewContext *vc, const eSelectOp sel_op, const int mval[2], float rad) |
| static bool | armature_circle_doSelectJoint (void *user_data, EditBone *ebone, const float screen_co[2], bool head) |
| static void | do_circle_select_armature__doSelectBone (void *user_data, EditBone *ebone, const float screen_co_a[2], const float screen_co_b[2]) |
| static void | do_circle_select_armature__doSelectBone_clip_content (void *user_data, EditBone *ebone, const float screen_co_a[2], const float screen_co_b[2]) |
| static bool | armature_circle_select (const ViewContext *vc, const eSelectOp sel_op, const int mval[2], float rad) |
| static void | do_circle_select_mball__doSelectElem (void *user_data, MetaElem *ml, const float screen_co[2]) |
| static bool | mball_circle_select (const ViewContext *vc, const eSelectOp sel_op, const int mval[2], float rad) |
| static bool | grease_pencil_circle_select (const ViewContext *vc, const eSelectOp sel_op, const int mval[2], const float rad) |
| static bool | obedit_circle_select (bContext *C, const ViewContext *vc, wmGenericUserData *wm_userdata, const eSelectOp sel_op, const int mval[2], float rad) |
| static bool | object_circle_select (const ViewContext *vc, const eSelectOp sel_op, const int mval[2], float rad) |
| static void | view3d_circle_select_recalc (void *user_data) |
| static wmOperatorStatus | view3d_circle_select_modal (bContext *C, wmOperator *op, const wmEvent *event) |
| static void | view3d_circle_select_cancel (bContext *C, wmOperator *op) |
| static wmOperatorStatus | view3d_circle_select_exec (bContext *C, wmOperator *op) |
| void | VIEW3D_OT_select_circle (wmOperatorType *ot) |
| #define SEL_MENU_SIZE 22 |
Definition at line 1576 of file view3d_select.cc.
Referenced by bone_mouse_select_menu(), object_mouse_select_menu(), and object_select_menu_enum_itemf().
| using blender::int2 |
Definition at line 601 of file BLI_math_vector_types.hh.
|
static |
Definition at line 5219 of file view3d_select.cc.
References BONE_ROOTSEL, BONE_TIPSEL, data, EditBone::flag, and len_squared_v2v2().
Referenced by do_circle_select_armature__doSelectBone().
|
static |
Definition at line 5328 of file view3d_select.cc.
References armature_foreachScreenBone(), data, Object::data, do_circle_select_armature__doSelectBone(), do_circle_select_armature__doSelectBone_clip_content(), ED_armature_edit_deselect_all_visible(), ED_armature_edit_sync_selection(), ED_view3d_init_mats_rv3d(), bArmature::edbo, NC_OBJECT, ND_BONE_SELECT, ViewContext::obedit, ViewContext::rv3d, SEL_OP_SUB, SEL_OP_USE_PRE_DESELECT, select, V3D_PROJ_TEST_CLIP_CONTENT_DEFAULT, V3D_PROJ_TEST_CLIP_DEFAULT, view3d_userdata_circleselect_init(), and WM_main_add_notifier().
Referenced by obedit_circle_select().
|
static |
The scale isn't defined, simply use for sorting.
Definition at line 1944 of file view3d_select.cc.
References b, BLI_addtail(), BLI_findlink(), BLI_freelinkN(), BLI_freelistN(), BLI_gset_free(), BLI_gset_haskey(), BLI_gset_insert(), BLI_gset_ptr_new(), BLI_listbase_sort(), BLI_strncpy_utf8(), bPoseChannel::bone, BONE_UNSELECTABLE, BONESEL_ANY, C, bPose::chanbase, CTX_DATA_BEGIN, CTX_DATA_END, Object::data, EditBone::ebone, bArmature::edbo, Bone::flag, EditBone::flag, i, blender::wm::InvokeDefault, ListBase::last, LISTBASE_FOREACH_INDEX, MAX_ID_NAME, MEM_callocN(), bPoseChannel::name, EditBone::name, name, next, Base::object, object_mouse_select_menu_data, ot, params, Object::pose, ptr, RNA_boolean_set(), SEL_MENU_SIZE, SEL_OP_ADD, SEL_OP_SUB, SEL_OP_XOR, WM_operator_name_call_ptr(), WM_operator_properties_create_ptr(), WM_operator_properties_free(), and WM_operatortype_find().
Referenced by ed_object_select_pick(), and view3d_select_exec().
|
static |
Definition at line 1841 of file view3d_select.cc.
References blender::ed::object::BA_SELECT, blender::ed::object::base_activate(), blender::ed::object::base_select(), BASE_SELECTABLE, BKE_view_layer_active_base_get(), BKE_view_layer_synced_ensure(), BLI_assert, BONE_SELECTED, C, CTX_data_scene(), CTX_data_view_layer(), CTX_wm_view3d(), DEG_id_tag_update(), ED_armature_edit_select_pick_bone(), ED_armature_pose_select_in_wpaint_mode(), ED_armature_pose_select_pick_bone(), ED_outliner_select_sync_from_object_tag(), ED_select_op_from_operator(), Scene::id, ID_RECALC_BASE_FLAGS, ID_RECALC_SELECT, Object::mode, NC_OBJECT, NC_SCENE, ND_BONE_ACTIVE, ND_BONE_SELECT, ND_OB_SELECT, OB_MODE_ALL_WEIGHT_PAINT, OB_MODE_EDIT, Base::object, object_mouse_select_menu_data, OPERATOR_CANCELLED, OPERATOR_FINISHED, params, wmOperator::ptr, RNA_enum_get(), and WM_event_add_notifier().
Referenced by VIEW3D_OT_bone_select_menu().
|
static |
Definition at line 2523 of file view3d_select.cc.
References BKE_tracking_track_deselect(), LISTBASE_FOREACH, MovieTracking::objects, and TRACK_AREA_ALL.
Referenced by ed_object_select_pick_camera_track().
|
static |
Definition at line 4253 of file view3d_select.cc.
References BKE_view_layer_array_from_bases_in_edit_mode_unique_data(), BONESEL_ANY, Object::data, ED_armature_base_and_ebone_from_select_buffer(), ED_armature_ebone_listbase_temp_clear(), ED_armature_edit_deselect_all_visible_multi_ex(), ED_armature_edit_select_op_from_tagged(), bArmature::edbo, EditBone::i, Object::id, ID_TAG_DOIT, Base::object, ViewContext::scene, SEL_OP_USE_PRE_DESELECT, GPUSelectBuffer::storage, ID::tag, EditBone::temp, ViewContext::v3d, view3d_gpu_select(), VIEW3D_SELECT_ALL, VIEW3D_SELECT_FILTER_NOP, and ViewContext::view_layer.
Referenced by view3d_box_select_exec().
|
static |
Definition at line 5247 of file view3d_select.cc.
References armature_circle_doSelectJoint(), blender::animrig::bone_is_visible(), BONE_ROOTSEL, BONE_SELECTED, BONE_TIPSEL, data, EBONE_SELECTABLE, edge_inside_circle(), EditBone::flag, EditBone::i, IS_CLIPPED, SET_FLAG_FROM_TEST, and EditBone::temp.
Referenced by armature_circle_select().
|
static |
Definition at line 5304 of file view3d_select.cc.
References blender::animrig::bone_is_visible(), BONE_ROOTSEL, BONE_SELECTED, BONE_TIPSEL, data, EBONE_SELECTABLE, edge_inside_circle(), EditBone::flag, EditBone::i, SET_FLAG_FROM_TEST, and EditBone::temp.
Referenced by armature_circle_select().
|
static |
Definition at line 5365 of file view3d_select.cc.
References data, MetaElem::flag, len_squared_v2v2(), and SELECT.
Referenced by mball_circle_select().
|
static |
Definition at line 5136 of file view3d_select.cc.
References blender::animrig::bone_is_selectable(), data, edge_inside_circle(), bPoseChannel::flag, IS_CLIPPED, pchan_circle_doSelectJoint(), and POSE_SELECTED.
Referenced by pose_circle_select().
|
static |
Definition at line 4480 of file view3d_select.cc.
References DEG_get_evaluated(), ViewContext::depsgraph, blender::ed::greasepencil::MutableDrawingInfo::drawing, ED_grease_pencil_selection_domain_get(), ED_view3d_ob_project_mat_get_from_obmat(), blender::bke::crazyspace::get_evaluated_grease_pencil_drawing_deformation(), View3DOverlay::handle_display, blender::ed::greasepencil::MutableDrawingInfo::layer_index, mask(), ViewContext::obact, ViewContext::obedit, View3D::overlay, blender::ed::greasepencil::retrieve_visible_bezier_handle_elements(), ViewContext::rv3d, ViewContext::scene, blender::ed::curves::select_box_mask(), blender::ed::greasepencil::selection_update(), blender::bke::greasepencil::Drawing::strokes_for_write(), blender::bke::greasepencil::Layer::to_world_space(), Scene::toolsettings, and ViewContext::v3d.
Referenced by view3d_box_select_exec().
|
static |
Definition at line 1120 of file view3d_select.cc.
References armature_foreachScreenBone(), BLI_lasso_boundbox(), data, Object::data, do_lasso_select_armature__doSelectBone(), do_lasso_select_armature__doSelectBone_clip_content(), ED_armature_ebone_listbase_temp_clear(), ED_armature_edit_deselect_all_visible(), ED_armature_edit_select_op_from_tagged(), ED_view3d_init_mats_rv3d(), bArmature::edbo, NC_OBJECT, ND_BONE_SELECT, ViewContext::obedit, ViewContext::rv3d, SEL_OP_USE_PRE_DESELECT, V3D_PROJ_TEST_CLIP_CONTENT_DEFAULT, V3D_PROJ_TEST_CLIP_DEFAULT, view3d_userdata_lassoselect_init(), and WM_main_add_notifier().
Referenced by view3d_lasso_select().
|
static |
Definition at line 1044 of file view3d_select.cc.
References BLI_lasso_is_edge_inside(), BLI_lasso_is_point_inside(), BLI_rcti_isect_pt(), blender::animrig::bone_is_visible(), BONE_ROOTSEL, BONE_TIPSEL, BONESEL_BONE, BONESEL_ROOT, BONESEL_TIP, data, EditBone::i, IS_CLIPPED, EditBone::temp, and UNPACK2.
Referenced by do_lasso_select_armature().
|
static |
Definition at line 1091 of file view3d_select.cc.
References BLI_lasso_is_edge_inside(), blender::animrig::bone_is_visible(), BONE_ROOTSEL, BONE_TIPSEL, BONESEL_BONE, data, EditBone::i, EditBone::temp, and UNPACK2.
Referenced by do_lasso_select_armature().
|
static |
Definition at line 973 of file view3d_select.cc.
References BEZT_FLAG_TEMP_TAG, BKE_curve_editNurbs_get(), BKE_curve_nurb_vert_active_validate(), BKE_nurbList_flag_set(), BKE_nurbList_flag_set_from_flag(), BLI_lasso_boundbox(), data, Object::data, do_lasso_select_curve__doSelect(), ED_view3d_init_mats_rv3d(), nurbs_foreachScreenVert(), ViewContext::obedit, ViewContext::rv3d, SEL_OP_SET, SELECT, V3D_PROJ_TEST_CLIP_DEFAULT, and view3d_userdata_lassoselect_init().
Referenced by view3d_lasso_select().
|
static |
Definition at line 930 of file view3d_select.cc.
References BLI_lasso_is_point_inside(), data, ED_select_op_action_deselected(), BezTriple::f1, BPoint::f1, BezTriple::f2, BezTriple::f3, handles_visible(), IS_CLIPPED, is_inside(), SELECT, and SET_FLAG_FROM_TEST.
Referenced by do_lasso_select_curve().
|
static |
Definition at line 1201 of file view3d_select.cc.
References DEG_get_evaluated(), ViewContext::depsgraph, blender::ed::greasepencil::MutableDrawingInfo::drawing, ED_grease_pencil_selection_domain_get(), ED_view3d_ob_project_mat_get_from_obmat(), blender::bke::crazyspace::get_evaluated_grease_pencil_drawing_deformation(), View3DOverlay::handle_display, blender::ed::greasepencil::MutableDrawingInfo::layer_index, mask(), ViewContext::obact, ViewContext::obedit, View3D::overlay, blender::ed::greasepencil::retrieve_visible_bezier_handle_elements(), ViewContext::rv3d, ViewContext::scene, blender::ed::curves::select_lasso_mask(), blender::ed::greasepencil::selection_update(), blender::bke::greasepencil::Drawing::strokes_for_write(), blender::bke::greasepencil::Layer::to_world_space(), Scene::toolsettings, and ViewContext::v3d.
Referenced by view3d_lasso_select().
|
static |
Definition at line 1023 of file view3d_select.cc.
References BLI_lasso_boundbox(), data, do_lasso_select_lattice__doSelect(), ED_lattice_flags_set(), ED_view3d_init_mats_rv3d(), lattice_foreachScreenVert(), ViewContext::obedit, ViewContext::rv3d, SEL_OP_USE_PRE_DESELECT, V3D_PROJ_TEST_CLIP_DEFAULT, and view3d_userdata_lassoselect_init().
Referenced by view3d_lasso_select().
|
static |
Definition at line 1008 of file view3d_select.cc.
References BLI_lasso_is_point_inside(), BLI_rctf_isect_pt_v(), data, ED_select_op_action_deselected(), BPoint::f1, IS_CLIPPED, is_inside(), SELECT, and SET_FLAG_FROM_TEST.
Referenced by do_lasso_select_lattice().
|
static |
Definition at line 1161 of file view3d_select.cc.
References BLI_lasso_is_point_inside(), BLI_rctf_isect_pt_v(), data, ED_select_op_action_deselected(), MetaElem::flag, is_inside(), SELECT, and SET_FLAG_FROM_TEST.
Referenced by do_lasso_select_meta().
|
static |
Definition at line 831 of file view3d_select.cc.
References LassoSelectUserData_ForMeshEdge::backbuf_offset, BKE_editmesh_from_object(), BLI_assert, BLI_lasso_boundbox(), BMEditMesh::bm, BM_ELEM_SELECT, UVSyncSelectFromMesh::create_if_needed(), data, LassoSelectUserData_ForMeshEdge::data, wmGenericUserData::data, ViewContext::depsgraph, do_lasso_select_mesh__doSelectEdge_pass0(), do_lasso_select_mesh__doSelectEdge_pass1(), do_lasso_select_mesh__doSelectFace(), do_lasso_select_mesh__doSelectVert(), DRW_select_buffer_bitmap_from_poly(), DRW_select_buffer_context_offset_for_object_elem(), ED_view3d_init_mats_rv3d(), edbm_backbuf_check_and_select_faces(), edbm_backbuf_check_and_select_verts(), EDBM_flag_disable_all(), EDBM_selectmode_flush(), editselect_buf_cache_init_with_generic_userdata(), ViewContext::em, LassoSelectUserData_ForMeshEdge::esel, GPU_matrix_set, mesh_foreachScreenEdge_clip_bb_segment(), mesh_foreachScreenFace(), mesh_foreachScreenVert(), ViewContext::obedit, ViewContext::region, ViewContext::rv3d, SCE_SELECT_EDGE, SCE_SELECT_FACE, SCE_SELECT_VERTEX, ViewContext::scene, SEL_OP_USE_PRE_DESELECT, EditSelectBuf_Cache::select_bitmap, ToolSettings::selectmode, Scene::toolsettings, BMesh::totvertsel, ViewContext::v3d, V3D_PROJ_TEST_CLIP_BB, V3D_PROJ_TEST_CLIP_CONTENT_DEFAULT, V3D_PROJ_TEST_CLIP_DEFAULT, V3D_PROJ_TEST_CLIP_NEAR, view3d_userdata_lassoselect_init(), RegionView3D::viewmat, and XRAY_FLAG_ENABLED.
Referenced by view3d_lasso_select().
|
static |
Definition at line 748 of file view3d_select.cc.
References LassoSelectUserData_ForMeshEdge::backbuf_offset, BLI_BITMAP_TEST_BOOL, BLI_lasso_is_point_inside(), BM_edge_select_set(), BM_elem_flag_test, BM_ELEM_SELECT, data, LassoSelectUserData_ForMeshEdge::data, ED_select_op_action_deselected(), edge_fully_inside_rect(), LassoSelectUserData_ForMeshEdge::esel, IS_CLIPPED, is_inside(), EditSelectBuf_Cache::select_bitmap, and UNPACK2.
Referenced by do_lasso_select_mesh().
|
static |
Definition at line 779 of file view3d_select.cc.
References LassoSelectUserData_ForMeshEdge::backbuf_offset, BLI_BITMAP_TEST_BOOL, BLI_lasso_is_edge_inside(), BM_edge_select_set(), BM_elem_flag_test, BM_ELEM_SELECT, data, LassoSelectUserData_ForMeshEdge::data, ED_select_op_action_deselected(), LassoSelectUserData_ForMeshEdge::esel, IS_CLIPPED, is_inside(), EditSelectBuf_Cache::select_bitmap, and UNPACK2.
Referenced by do_lasso_select_mesh().
|
static |
Definition at line 810 of file view3d_select.cc.
References BLI_lasso_is_point_inside(), BLI_rctf_isect_pt_v(), BM_elem_flag_test, BM_ELEM_SELECT, BM_face_select_set(), data, ED_select_op_action_deselected(), IS_CLIPPED, and is_inside().
Referenced by do_lasso_select_mesh().
|
static |
Definition at line 723 of file view3d_select.cc.
References BLI_lasso_is_point_inside(), BLI_rctf_isect_pt_v(), BM_elem_flag_test, BM_ELEM_SELECT, BM_vert_select_set(), data, ED_select_op_action_deselected(), IS_CLIPPED, and is_inside().
Referenced by do_lasso_select_mesh().
|
static |
Definition at line 1253 of file view3d_select.cc.
References BLI_lasso_is_point_inside(), BLI_rctf_isect_pt_v(), data, ED_select_op_action_deselected(), IS_CLIPPED, is_inside(), LassoSelectUserData_ForMeshObjectVert::lasso_data, and LassoSelectUserData_ForMeshObjectVert::select_vert.
Referenced by do_lasso_select_paintvert().
|
static |
Definition at line 1176 of file view3d_select.cc.
References BKE_mball_deselect_all(), BLI_lasso_boundbox(), data, Object::data, do_lasso_select_mball__doSelectElem(), ED_view3d_init_mats_rv3d(), mball_foreachScreenElem(), ViewContext::obedit, ViewContext::rv3d, SEL_OP_USE_PRE_DESELECT, V3D_PROJ_TEST_CLIP_DEFAULT, and view3d_userdata_lassoselect_init().
Referenced by view3d_lasso_select().
|
static |
Definition at line 576 of file view3d_select.cc.
References blender::ed::object::BA_DESELECT, blender::ed::object::BA_SELECT, blender::ed::object::base_select(), BASE_SELECTABLE, BASE_SELECTED, BKE_view_layer_object_bases_get(), BKE_view_layer_synced_ensure(), BLI_lasso_is_point_inside(), DEG_id_tag_update(), ED_select_op_action_deselected(), ED_view3d_project_base(), Scene::id, ID_RECALC_SELECT, is_inside(), LISTBASE_FOREACH, NC_SCENE, ND_OB_SELECT, object_deselect_all_visible(), ViewContext::region, ViewContext::scene, SEL_OP_USE_PRE_DESELECT, ViewContext::v3d, V3D_PROJ_RET_OK, ViewContext::view_layer, and WM_main_add_notifier().
Referenced by view3d_lasso_select().
|
static |
Definition at line 1338 of file view3d_select.cc.
References BLI_lasso_boundbox(), ViewContext::C, Object::data, wmGenericUserData::data, ViewContext::depsgraph, DRW_select_buffer_bitmap_from_poly(), edbm_backbuf_check_and_select_faces_obmode(), editselect_buf_cache_init_with_generic_userdata(), Mesh::faces_num, ViewContext::obact, paintface_deselect_all_visible(), paintface_flush_flags(), ViewContext::region, SCE_SELECT_FACE, SEL_DESELECT, SEL_OP_USE_PRE_DESELECT, EditSelectBuf_Cache::select_bitmap, and ViewContext::v3d.
Referenced by view3d_lasso_select().
|
static |
Definition at line 1271 of file view3d_select.cc.
References BKE_mesh_mselect_validate(), BLI_lasso_boundbox(), ViewContext::C, data, Object::data, wmGenericUserData::data, ViewContext::depsgraph, do_lasso_select_meshobject__doSelectVert(), DRW_select_buffer_bitmap_from_poly(), ED_view3d_init_mats_rv3d(), edbm_backbuf_check_and_select_verts_obmode(), editselect_buf_cache_init_with_generic_userdata(), blender::bke::SpanAttributeWriter< T >::finish(), blender::bke::MutableAttributeAccessor::lookup_or_add_for_write_span(), meshobject_foreachScreenVert(), ViewContext::obact, paintvert_deselect_all_visible(), paintvert_flush_flags(), paintvert_tag_select_update(), blender::bke::Point, ViewContext::region, ViewContext::rv3d, SCE_SELECT_VERTEX, SEL_DESELECT, SEL_OP_CAN_DESELECT, SEL_OP_USE_PRE_DESELECT, EditSelectBuf_Cache::select_bitmap, blender::bke::SpanAttributeWriter< T >::span, ViewContext::v3d, V3D_PROJ_TEST_CLIP_DEFAULT, Mesh::verts_num, view3d_userdata_lassoselect_init(), and XRAY_ENABLED.
Referenced by view3d_lasso_select().
|
static |
Definition at line 699 of file view3d_select.cc.
References DEG_id_tag_update(), do_lasso_tag_pose(), do_pose_tag_select_op_exec(), do_pose_tag_select_op_prepare(), ED_view3d_viewcontext_init_object(), i, Scene::id, ID_RECALC_SELECT, blender::Vector< T, InlineBufferCapacity, Allocator >::index_range(), NC_SCENE, ND_OB_SELECT, Base::object, ViewContext::scene, and WM_main_add_notifier().
Referenced by view3d_lasso_select().
|
static |
Definition at line 536 of file view3d_select.cc.
References BLI_lasso_is_edge_inside(), BLI_rctf_isect_segment(), blender::animrig::bone_is_selectable(), data, bPoseChannel_Runtime::flag, POSE_RUNTIME_IN_SELECTION_AREA, bPoseChannel::runtime, and UNPACK2.
Referenced by do_lasso_tag_pose().
|
static |
Definition at line 554 of file view3d_select.cc.
References BLI_lasso_boundbox(), data, do_lasso_select_pose__do_tag(), ED_view3d_init_mats_rv3d(), OB_ARMATURE, ViewContext::obact, Object::pose, pose_foreachScreenBone(), ViewContext::rv3d, Object::type, V3D_PROJ_TEST_CLIP_CONTENT_DEFAULT, V3D_PROJ_TEST_CLIP_DEFAULT, and view3d_userdata_lassoselect_init().
Referenced by do_lasso_select_pose().
|
static |
Definition at line 3968 of file view3d_select.cc.
References data, do_lattice_box_select__doSelect(), ED_lattice_flags_set(), ED_view3d_init_mats_rv3d(), lattice_foreachScreenVert(), ViewContext::obedit, ViewContext::rv3d, SEL_OP_USE_PRE_DESELECT, V3D_PROJ_TEST_CLIP_DEFAULT, and view3d_userdata_boxselect_init().
Referenced by view3d_box_select_exec().
|
static |
Definition at line 3957 of file view3d_select.cc.
References BLI_rctf_isect_pt_v(), data, ED_select_op_action_deselected(), BPoint::f1, is_inside(), SELECT, and SET_FLAG_FROM_TEST.
Referenced by do_lattice_box_select().
|
static |
Definition at line 4088 of file view3d_select.cc.
References BoxSelectUserData_ForMeshEdge::backbuf_offset, BMEditMesh::bm, BM_ELEM_SELECT, UVSyncSelectFromMesh::create_if_needed(), BoxSelectUserData_ForMeshEdge::data, data, wmGenericUserData::data, ViewContext::depsgraph, do_mesh_box_select__doSelectEdge_pass0(), do_mesh_box_select__doSelectEdge_pass1(), do_mesh_box_select__doSelectFace(), do_mesh_box_select__doSelectVert(), DRW_select_buffer_bitmap_from_rect(), DRW_select_buffer_context_offset_for_object_elem(), ED_view3d_init_mats_rv3d(), edbm_backbuf_check_and_select_faces(), edbm_backbuf_check_and_select_verts(), EDBM_flag_disable_all(), EDBM_selectmode_flush(), editselect_buf_cache_init_with_generic_userdata(), ViewContext::em, BoxSelectUserData_ForMeshEdge::esel, GPU_matrix_set, mesh_foreachScreenEdge_clip_bb_segment(), mesh_foreachScreenFace(), mesh_foreachScreenVert(), ViewContext::obedit, ViewContext::region, ViewContext::rv3d, SCE_SELECT_EDGE, SCE_SELECT_FACE, SCE_SELECT_VERTEX, ViewContext::scene, SEL_OP_USE_PRE_DESELECT, EditSelectBuf_Cache::select_bitmap, ToolSettings::selectmode, Scene::toolsettings, BMesh::totvertsel, ViewContext::v3d, V3D_PROJ_TEST_CLIP_BB, V3D_PROJ_TEST_CLIP_CONTENT_DEFAULT, V3D_PROJ_TEST_CLIP_DEFAULT, V3D_PROJ_TEST_CLIP_NEAR, view3d_userdata_boxselect_init(), RegionView3D::viewmat, and XRAY_FLAG_ENABLED.
Referenced by view3d_box_select_exec().
|
static |
Pass 0 operates on edges when fully inside.
Definition at line 4011 of file view3d_select.cc.
References BoxSelectUserData_ForMeshEdge::backbuf_offset, BLI_BITMAP_TEST_BOOL, BM_edge_select_set(), BM_elem_flag_test, BM_ELEM_SELECT, BoxSelectUserData_ForMeshEdge::data, data, ED_select_op_action_deselected(), edge_fully_inside_rect(), BoxSelectUserData_ForMeshEdge::esel, is_inside(), and EditSelectBuf_Cache::select_bitmap.
Referenced by do_mesh_box_select().
|
static |
Pass 1 operates on edges when partially inside.
Definition at line 4043 of file view3d_select.cc.
References BoxSelectUserData_ForMeshEdge::backbuf_offset, BLI_BITMAP_TEST_BOOL, BM_edge_select_set(), BM_elem_flag_test, BM_ELEM_SELECT, BoxSelectUserData_ForMeshEdge::data, data, ED_select_op_action_deselected(), edge_inside_rect(), BoxSelectUserData_ForMeshEdge::esel, is_inside(), and EditSelectBuf_Cache::select_bitmap.
Referenced by do_mesh_box_select().
|
static |
Definition at line 4070 of file view3d_select.cc.
References BLI_rctf_isect_pt_v(), BM_elem_flag_test, BM_ELEM_SELECT, BM_face_select_set(), data, ED_select_op_action_deselected(), and is_inside().
Referenced by do_mesh_box_select().
|
static |
Definition at line 3985 of file view3d_select.cc.
References BLI_rctf_isect_pt_v(), BM_elem_flag_test, BM_ELEM_SELECT, BM_vert_select_set(), data, ED_select_op_action_deselected(), and is_inside().
Referenced by do_mesh_box_select().
|
static |
Definition at line 4182 of file view3d_select.cc.
References BKE_mball_deselect_all(), Object::data, ED_select_op_action_deselected(), MetaBall::editelems, ListBase::first, MetaElem::flag, is_inside(), MB_SCALE_RAD, MBALLSEL_ANY, MBALLSEL_RADIUS, MBALLSEL_STIFF, MetaElem::next, ViewContext::obedit, Object::runtime, SEL_OP_USE_PRE_DESELECT, SELECT, SET_FLAG_FROM_TEST, GPUSelectBuffer::storage, view3d_gpu_select(), VIEW3D_SELECT_ALL, and VIEW3D_SELECT_FILTER_NOP.
Referenced by view3d_box_select_exec().
|
static |
Definition at line 3928 of file view3d_select.cc.
References BEZT_FLAG_TEMP_TAG, BKE_curve_editNurbs_get(), BKE_curve_nurb_vert_active_validate(), BKE_nurbList_flag_set(), BKE_nurbList_flag_set_from_flag(), data, Object::data, do_nurbs_box_select__doSelect(), ED_view3d_init_mats_rv3d(), nurbs_foreachScreenVert(), ViewContext::obedit, ViewContext::rv3d, SEL_OP_SET, SELECT, V3D_PROJ_TEST_CLIP_DEFAULT, and view3d_userdata_boxselect_init().
Referenced by view3d_box_select_exec().
|
static |
Definition at line 3887 of file view3d_select.cc.
References BLI_rctf_isect_pt_v(), data, ED_select_op_action_deselected(), BezTriple::f1, BPoint::f1, BezTriple::f2, BezTriple::f3, handles_visible(), is_inside(), SELECT, and SET_FLAG_FROM_TEST.
Referenced by do_nurbs_box_select().
|
static |
Definition at line 4331 of file view3d_select.cc.
References blender::Map< Key, Value, InlineBufferCapacity, ProbingStrategy, Hash, IsEqual, Slot, Allocator >::add(), blender::Set< Key, InlineBufferCapacity, ProbingStrategy, Hash, IsEqual, Slot, Allocator >::add(), blender::ed::object::BA_DESELECT, blender::ed::object::BA_SELECT, blender::ed::object::base_select(), BASE_SELECTABLE, BASE_SELECTED, BKE_view_layer_object_bases_get(), BKE_view_layer_synced_ensure(), C, blender::Set< Key, InlineBufferCapacity, ProbingStrategy, Hash, IsEqual, Slot, Allocator >::contains(), blender::Vector< T, InlineBufferCapacity, Allocator >::data(), ED_select_op_action_deselected(), ED_view3d_select_filter_from_mode(), ListBase::first, gpu_bone_select_buffer_cmp(), ID_TAG_DOIT, is_inside(), LISTBASE_FOREACH, blender::Map< Key, Value, InlineBufferCapacity, ProbingStrategy, Hash, IsEqual, Slot, Allocator >::lookup_default(), Base::next, ViewContext::obact, object_deselect_all_visible(), object_select_tag_updates(), ViewContext::scene, SEL_OP_USE_OUTSIDE, SEL_OP_USE_PRE_DESELECT, GPUSelectBuffer::storage, ViewContext::v3d, view3d_gpu_select(), VIEW3D_SELECT_ALL, and ViewContext::view_layer.
Referenced by view3d_box_select_exec().
|
static |
Definition at line 3847 of file view3d_select.cc.
References BKE_mesh_from_object(), BLI_rcti_is_empty(), ViewContext::C, wmGenericUserData::data, ViewContext::depsgraph, DRW_select_buffer_bitmap_from_rect(), edbm_backbuf_check_and_select_faces_obmode(), editselect_buf_cache_init_with_generic_userdata(), ViewContext::obact, paintface_deselect_all_visible(), paintface_flush_flags(), ViewContext::region, SCE_SELECT_FACE, SEL_DESELECT, SEL_OP_USE_PRE_DESELECT, EditSelectBuf_Cache::select_bitmap, and ViewContext::v3d.
Referenced by view3d_box_select_exec().
|
static |
Definition at line 3786 of file view3d_select.cc.
References BKE_mesh_mselect_validate(), BLI_rcti_is_empty(), ViewContext::C, data, Object::data, wmGenericUserData::data, ViewContext::depsgraph, do_paintvert_box_select__doSelectVert(), DRW_select_buffer_bitmap_from_rect(), ED_view3d_init_mats_rv3d(), edbm_backbuf_check_and_select_verts_obmode(), editselect_buf_cache_init_with_generic_userdata(), blender::bke::SpanAttributeWriter< T >::finish(), blender::bke::MutableAttributeAccessor::lookup_or_add_for_write_span(), meshobject_foreachScreenVert(), ViewContext::obact, paintvert_deselect_all_visible(), paintvert_flush_flags(), paintvert_tag_select_update(), blender::bke::Point, ViewContext::region, ViewContext::rv3d, SCE_SELECT_VERTEX, SEL_DESELECT, SEL_OP_CAN_DESELECT, SEL_OP_USE_PRE_DESELECT, EditSelectBuf_Cache::select_bitmap, blender::bke::SpanAttributeWriter< T >::span, ViewContext::v3d, V3D_PROJ_TEST_CLIP_DEFAULT, view3d_userdata_boxselect_init(), and XRAY_ENABLED.
Referenced by view3d_box_select_exec().
|
static |
Definition at line 3771 of file view3d_select.cc.
References BLI_rctf_isect_pt_v(), BoxSelectUserData_ForMeshObjectVert::box_data, data, ED_select_op_action_deselected(), is_inside(), and BoxSelectUserData_ForMeshObjectVert::select_vert.
Referenced by do_paintvert_box_select().
|
static |
Definition at line 4406 of file view3d_select.cc.
References BLI_findlink(), BONESEL_ANY, C, bPose::chanbase, blender::Vector< T, InlineBufferCapacity, Allocator >::data(), DEG_id_tag_update(), do_pose_tag_select_op_exec(), do_pose_tag_select_op_prepare(), ED_armature_base_and_pchan_from_select_buffer(), ED_view3d_select_filter_from_mode(), bPoseChannel_Runtime::flag, gpu_bone_select_buffer_cmp(), GPUSelectResult::id, Object::id, Scene::id, ID_RECALC_SELECT, ID_TAG_DOIT, NC_SCENE, ND_OB_SELECT, next, ViewContext::obact, Base::object, Object::pose, POSE_RUNTIME_IN_SELECTION_AREA, bPoseChannel::runtime, Object::runtime, ViewContext::scene, GPUSelectBuffer::storage, ID::tag, view3d_gpu_select(), VIEW3D_SELECT_ALL, and WM_event_add_notifier().
Referenced by view3d_box_select_exec().
|
static |
Definition at line 653 of file view3d_select.cc.
References bArmature::act_bone, BONE_UNSELECTABLE, bPose::chanbase, Object::data, ED_pose_bone_select_tag_update(), ED_pose_deselect_all(), ED_select_op_action_deselected(), Bone::flag, i, blender::MutableSpan< T >::index_range(), is_inside(), LISTBASE_FOREACH, Base::object, Object::pose, POSE_RUNTIME_IN_SELECTION_AREA, POSE_SELECTED, SEL_DESELECT, SEL_OP_USE_PRE_DESELECT, and SET_FLAG_FROM_TEST.
Referenced by do_lasso_select_pose(), and do_pose_box_select().
|
static |
Use for lasso & box select.
Definition at line 618 of file view3d_select.cc.
References blender::Vector< T, InlineBufferCapacity, Allocator >::append(), BKE_object_pose_armature_get_with_wpaint_check(), BKE_view_layer_base_find(), BLI_assert, bPose::chanbase, Object::data, FOREACH_BASE_IN_MODE_BEGIN, FOREACH_BASE_IN_MODE_END, bArmature::id, Object::id, ID_TAG_DOIT, LISTBASE_FOREACH, Object::mode, OB_ARMATURE, OB_MODE_POSE, OB_MODE_WEIGHT_PAINT, ViewContext::obact, Object::pose, POSE_RUNTIME_IN_SELECTION_AREA, bArmature::runtime, ViewContext::scene, ID::tag, ViewContext::v3d, and ViewContext::view_layer.
Referenced by do_lasso_select_pose(), and do_pose_box_select().
|
static |
Cursor selection for all Curves objects in edit mode.
Definition at line 3236 of file view3d_select.cc.
References blender::Vector< T, InlineBufferCapacity, Allocator >::as_span(), b, BKE_view_layer_array_from_bases_in_edit_mode_unique_data(), C, closest(), blender::ed::curves::closest_elem_find_screen_space(), CTX_data_ensure_evaluated_depsgraph(), blender::bke::Curve, ClosestCurveDataBlock::curves_id, blender::Vector< T, InlineBufferCapacity, Allocator >::data(), Object::data, DEG_id_tag_update(), depsgraph, ViewContext::depsgraph, blender::ed::curves::FindClosestData::distance_sq, ED_view3d_ob_project_mat_get(), ED_view3d_viewcontext_init(), ClosestCurveDataBlock::elem, blender::ed::curves::foreach_selectable_curve_range(), blender::ed::curves::foreach_selectable_point_range(), Curves::geometry, blender::bke::crazyspace::get_evaluated_curves_deformation(), View3DOverlay::handle_display, i, Curves::id, ID_RECALC_GEOMETRY, blender::Vector< T, InlineBufferCapacity, Allocator >::index_range(), init(), mask(), NC_GEOM, ND_DATA, ViewContext::obedit, View3D::overlay, blender::threading::parallel_for(), blender::threading::parallel_reduce(), params, blender::bke::Point, ViewContext::rv3d, ViewContext::scene, SEL_OP_SET, ClosestCurveDataBlock::selection_attribute_name, Curves::selection_domain, blender::Vector< T, InlineBufferCapacity, Allocator >::size(), IndexMask::slice_content(), ViewContext::v3d, ViewContext::view_layer, and WM_event_add_notifier().
Referenced by view3d_select_exec().
|
static |
Cursor selection for all Grease Pencil curves in edit mode.
Definition at line 3379 of file view3d_select.cc.
References b, C, closest(), blender::ed::curves::closest_elem_find_screen_space(), CTX_data_ensure_evaluated_depsgraph(), blender::bke::Curve, DEG_get_evaluated(), depsgraph, ViewContext::depsgraph, blender::ed::curves::FindClosestData::distance_sq, blender::ed::greasepencil::MutableDrawingInfo::drawing, ClosestGreasePencilDrawing::drawing, ED_grease_pencil_selection_domain_get(), ED_view3d_ob_project_mat_get_from_obmat(), ED_view3d_viewcontext_init(), ClosestGreasePencilDrawing::elem, blender::ed::curves::foreach_selectable_curve_range(), blender::ed::curves::foreach_selectable_point_range(), blender::bke::crazyspace::get_evaluated_grease_pencil_drawing_deformation(), View3DOverlay::handle_display, i, blender::Vector< T, InlineBufferCapacity, Allocator >::index_range(), ClosestGreasePencilDrawing::info_index, init(), IndexMask::is_empty(), blender::ed::greasepencil::MutableDrawingInfo::layer_index, mask(), ViewContext::obact, ViewContext::obedit, View3D::overlay, blender::threading::parallel_for(), blender::threading::parallel_reduce(), params, blender::bke::Point, blender::ed::greasepencil::retrieve_editable_drawings(), blender::ed::greasepencil::retrieve_editable_elements(), blender::ed::greasepencil::retrieve_visible_bezier_handle_elements(), ViewContext::rv3d, ViewContext::scene, SEL_OP_SET, ClosestGreasePencilDrawing::selection_attribute_name, blender::bke::greasepencil::Drawing::strokes(), blender::bke::greasepencil::Layer::to_world_space(), Scene::toolsettings, and ViewContext::v3d.
Referenced by view3d_select_exec().
|
static |
Cursor selection picking for object & pose-mode.
| mval | Region relative cursor coordinates. |
| params | Selection parameters. |
| center | Select by the cursors on-screen distances to the center/origin instead of the geometry any other contents of the item being selected. This could be used to select by bones by their origin too, currently it's only used for objects. |
| enumerate | Show a menu for objects at the cursor location. Otherwise fall-through to non-menu selection. |
| object_only | Only select objects (not bones / track markers). |
Definition at line 2632 of file view3d_select.cc.
References blender::ed::object::BA_DESELECT, blender::ed::object::BA_SELECT, blender::ed::object::base_activate(), blender::ed::object::base_select(), BASE_SELECTABLE, BASE_SELECTED, BKE_object_is_mode_compat(), BKE_object_movieclip_get(), BKE_object_pose_armature_get_with_wpaint_check(), BKE_view_layer_active_base_get(), BKE_view_layer_object_bases_get(), BKE_view_layer_synced_ensure(), BLI_assert, BLI_assert_unreachable, ViewContext::bmain, bone_mouse_select_menu(), C, CTX_data_ensure_evaluated_depsgraph(), DEG_id_tag_update(), depsgraph, ViewContext::depsgraph, ED_armature_pose_select_in_wpaint_mode(), ED_armature_pose_select_pick_with_buffer(), ed_object_select_pick_camera_track(), ED_outliner_select_sync_from_object_tag(), ED_outliner_select_sync_from_pose_bone_tag(), ED_view3d_select_filter_from_mode(), ED_view3d_viewcontext_init(), ListBase::first, Base::flag, Scene::id, ID_RECALC_SELECT, mixed_bones_object_selectbuffer_extended(), Object::mode, blender::ed::object::mode_generic_exit(), mouse_select_eval_buffer(), mouse_select_object_center(), NC_OBJECT, NC_SCENE, ND_BONE_ACTIVE, ND_BONE_SELECT, ND_OB_SELECT, Base::next, OB_CAMERA, OB_MODE_ALL_WEIGHT_PAINT, OB_MODE_OBJECT, ViewContext::obact, ViewContext::obedit, Base::object, object_deselect_all_except(), ToolSettings::object_flag, object_mouse_select_menu(), params, SCE_OBJECT_MODE_LOCK, ViewContext::scene, SEL_OP_ADD, SEL_OP_AND, SEL_OP_SET, SEL_OP_SUB, SEL_OP_XOR, selectbuffer_has_bones(), Scene::toolsettings, Object::type, ViewContext::v3d, VIEW3D_SELECT_FILTER_NOP, ViewContext::view_layer, WM_event_add_notifier(), and WM_toolsystem_update_from_context_view3d().
Referenced by view3d_select_exec().
|
static |
Definition at line 2532 of file view3d_select.cc.
References BKE_tracking_track_deselect(), BKE_tracking_track_get_for_selection_index(), BKE_tracking_track_select(), BLI_assert_unreachable, C, DEG_id_tag_update(), deselect_all_tracks(), i, MovieClip::id, Scene::id, ID_RECALC_SELECT, NC_MOVIECLIP, NC_SCENE, ND_OB_SELECT, ND_SELECT, Base::object, params, Object::runtime, SEL_OP_ADD, SEL_OP_AND, SEL_OP_SET, SEL_OP_SUB, SEL_OP_XOR, GPUSelectBuffer::storage, TRACK_AREA_ALL, TRACK_SELECTED, MovieClip::tracking, and WM_event_add_notifier().
Referenced by ed_object_select_pick().
mval comes from event->mval, only use within region handlers.
Definition at line 2493 of file view3d_select.cc.
References C, and ed_view3d_give_base_under_cursor_ex().
Referenced by datadropper_id_sample_pt(), ED_view3d_give_object_under_cursor(), and blender::ed::object::object_transfer_mode_invoke().
|
static |
Definition at line 2464 of file view3d_select.cc.
References blender::Vector< T, InlineBufferCapacity, Allocator >::as_span(), BKE_object_update_select_id(), C, CTX_data_ensure_evaluated_depsgraph(), CTX_data_main(), depsgraph, ED_view3d_viewcontext_init(), mixed_bones_object_selectbuffer(), mouse_select_eval_buffer(), selectbuffer_has_bones(), GPUSelectBuffer::storage, ViewContext::v3d, view3d_operator_needs_gpu(), VIEW3D_SELECT_FILTER_NOP, and XRAY_ACTIVE.
Referenced by ED_view3d_give_base_under_cursor(), and ED_view3d_give_material_slot_under_cursor().
| Object * ED_view3d_give_material_slot_under_cursor | ( | bContext * | C, |
| const int | mval[2], | ||
| int * | r_material_slot ) |
Definition at line 2507 of file view3d_select.cc.
References C, ed_view3d_give_base_under_cursor_ex(), and Base::object.
Referenced by blender::ed::object::drop_named_material_invoke(), blender::ed::object::drop_named_material_tooltip(), and eyedropper_cryptomatte_sample_view3d_fl().
Definition at line 2498 of file view3d_select.cc.
References C, ED_view3d_give_base_under_cursor(), and Base::object.
Referenced by blender::ed::object::drop_geometry_nodes_invoke(), blender::ed::object::drop_geometry_nodes_tooltip(), ED_view3d_is_object_under_cursor(), blender::ed::object::object_image_add_invoke(), view3d_ima_empty_drop_poll(), and view3d_mat_drop_poll().
| bool ED_view3d_is_object_under_cursor | ( | bContext * | C, |
| const int | mval[2] ) |
Definition at line 2518 of file view3d_select.cc.
References C, and ED_view3d_give_object_under_cursor().
Referenced by view3d_ima_bg_drop_poll().
| float ED_view3d_select_dist_px | ( | ) |
Definition at line 115 of file view3d_select.cc.
References U.
Referenced by blender::ed::curves::closest_elem_find_screen_space(), curve_pen_invoke(), curve_pen_modal(), ED_curve_editfont_select_pick(), ED_curve_pick_vert(), edbm_elem_find_nearest(), findnearestLattvert(), get_closest_vertex_to_point_in_nurbs(), gizmo_preselect_edgering_test_select(), gizmo_preselect_elem_test_select(), insert_point_to_segment(), blender::ed::curves::pen_tool::PenToolOperation::invoke(), loopcut_mouse_move(), mouse_select_object_center(), pe_deflect_emitter(), pe_nearest_point_and_key(), pointcloud_select_pick(), unified_findnearest(), and view3d_select_exec().
| ViewContext ED_view3d_viewcontext_init | ( | bContext * | C, |
| Depsgraph * | depsgraph ) |
Definition at line 120 of file view3d_select.cc.
References ViewContext::bmain, C, ViewContext::C, CTX_data_active_object(), CTX_data_edit_object(), CTX_data_main(), CTX_data_scene(), CTX_data_view_layer(), CTX_wm_region(), CTX_wm_region_view3d(), CTX_wm_view3d(), CTX_wm_window(), depsgraph, ViewContext::depsgraph, ViewContext::obact, ViewContext::obedit, ViewContext::region, ViewContext::rv3d, ViewContext::scene, ViewContext::v3d, ViewContext::view_layer, and ViewContext::win.
Referenced by add_vertex_invoke(), blender::ed::sculpt_paint::filter::cache_init(), blender::ed::sculpt_paint::cursor_geometry_info_update(), blender::ed::curves::curve_draw_init(), curve_draw_init(), curve_pen_invoke(), curve_pen_modal(), blender::ed::sculpt_paint::dyntopo::dyntopo_detail_size_edit_invoke(), ED_armature_edit_deselect_all_visible_multi(), ED_armature_edit_select_pick(), ed_armature_pick_bone_impl(), ED_curve_deselect_all_multi(), ED_curve_editfont_select_pick(), ED_curve_editnurb_select_pick(), ed_curves_select_pick(), ed_grease_pencil_select_pick(), ED_lattice_deselect_all_multi(), ED_lattice_select_pick(), ED_mball_deselect_all_multi(), ed_mball_findnearest_metaelem(), ED_mesh_pick_edge(), ED_mesh_pick_face(), ED_mesh_pick_vert(), ed_object_select_pick(), ED_pose_deselect_all_multi(), ed_view3d_give_base_under_cursor_ex(), EDBM_mesh_deselect_all_multi(), EDBM_selectmode_disable_multi(), edcu_shortest_path_pick_invoke(), em_setup_viewcontext(), blender::ed::sculpt_paint::grease_pencil_apply_fill(), blender::ed::greasepencil::grease_pencil_primitive_invoke(), blender::ed::sculpt_paint::gesture::init_common(), blender::ed::curves::pen_tool::PenToolOperation::invoke(), blender::ed::object::object_transform_axis_target_invoke(), blender::ed::sculpt_paint::paint_cursor_context_init(), paint_sample_color(), blender::ed::sculpt_paint::paint_stroke_new(), paintface_select_loop(), PE_set_view3d_data(), pointcloud_select_pick(), blender::ed::sculpt_paint::dyntopo::sample_detail(), blender::ed::greasepencil::select_ends_exec(), blender::ed::greasepencil::select_less_exec(), blender::ed::curves::select_linked_pick(), select_linked_pick_invoke(), blender::ed::greasepencil::select_more_exec(), blender::ed::greasepencil::select_random_exec(), blender::ed::sculpt_paint::stroke_get_location_bvh_ex(), blender::ed::sculpt_paint::image::ops::paint::texture_paint_init(), blender::ed::sculpt_paint::update_modal_transform(), view3d_box_select_exec(), view3d_circle_select_exec(), view3d_lasso_select_exec(), view3d_select_exec(), vpaint_init_vpaint(), weight_sample_group_invoke(), blender::ed::greasepencil::weight_sample_invoke(), weight_sample_invoke(), and wpaint_stroke_test_start().
| void ED_view3d_viewcontext_init_object | ( | ViewContext * | vc, |
| Object * | obact ) |
Re-initialize vc with obact as if it's active object (with some differences).
This is often used when operating on multiple objects in modes (edit, pose mode etc) where the vc is passed in as an argument which then references its object data.
Definition at line 138 of file view3d_select.cc.
References BKE_editmesh_from_object(), BKE_object_is_in_editmode(), BLI_assert, ViewContext::em, ViewContext::obact, and ViewContext::obedit.
Referenced by do_lasso_select_pose(), ED_curve_pick_vert_ex(), ED_lattice_select_pick(), edbm_dupli_extrude_cursor_invoke(), EDBM_edge_find_nearest_ex(), EDBM_face_find_nearest_ex(), edbm_preselect_or_active_init_viewcontext(), edbm_select_linked_pick_invoke(), EDBM_select_pick(), edbm_shortest_path_pick_invoke(), EDBM_unified_findnearest_from_raycast(), EDBM_vert_find_nearest_ex(), edcu_shortest_path_pick_invoke(), findnearestLattvert(), knifeproject_exec(), loopcut_init(), loopcut_mouse_move(), mouse_mesh_loop(), view3d_box_select_exec(), view3d_circle_select_exec(), view3d_circle_select_recalc(), and view3d_lasso_select().
|
static |
Mouse selection in weight paint. Called via generic mouse select operator.
Definition at line 3049 of file view3d_select.cc.
References BKE_mesh_mselect_active_set(), BKE_mesh_mselect_validate(), BLI_assert_unreachable, C, CTX_wm_view3d(), Object::data, ED_MESH_PICK_DEFAULT_VERT_DIST, ED_mesh_pick_vert(), blender::bke::AttributeWriter< T >::finish(), blender::bke::MutableAttributeAccessor::lookup_or_add_for_write(), ME_VSEL, paintface_deselect_all_visible(), paintvert_deselect_all_visible(), paintvert_flush_flags(), paintvert_tag_select_update(), params, blender::bke::Point, SEL_DESELECT, SEL_OP_ADD, SEL_OP_AND, SEL_OP_SET, SEL_OP_SUB, SEL_OP_XOR, blender::bke::AttributeWriter< T >::varray, and XRAY_ENABLED.
Referenced by view3d_select_exec().
|
static |
Definition at line 288 of file view3d_select.cc.
References BLI_BITMAP_TEST_BOOL, BMEditMesh::bm, BM_edge_select_set(), BM_EDGES_OF_MESH, BM_elem_flag_test, BM_ELEM_HIDDEN, BM_ELEM_SELECT, BM_ITER_MESH, depsgraph, DRW_select_buffer_context_offset_for_object_elem(), ED_select_op_action_deselected(), blender::ed::uv::UVSyncSelectFromMesh::edge_select_set(), is_inside(), SCE_SELECT_EDGE, and EditSelectBuf_Cache::select_bitmap.
Referenced by mesh_circle_select().
|
static |
Definition at line 325 of file view3d_select.cc.
References BLI_BITMAP_TEST_BOOL, BMEditMesh::bm, BM_elem_flag_test, BM_ELEM_HIDDEN, BM_ELEM_SELECT, BM_face_select_set(), BM_FACES_OF_MESH, BM_ITER_MESH, depsgraph, DRW_select_buffer_context_offset_for_object_elem(), ED_select_op_action_deselected(), blender::ed::uv::UVSyncSelectFromMesh::face_select_set(), is_inside(), SCE_SELECT_FACE, and EditSelectBuf_Cache::select_bitmap.
Referenced by do_lasso_select_mesh(), do_mesh_box_select(), and mesh_circle_select().
|
static |
Definition at line 394 of file view3d_select.cc.
References BLI_BITMAP_TEST_BOOL, ED_select_op_action_deselected(), blender::bke::Face, Mesh::faces_num, blender::bke::SpanAttributeWriter< T >::finish(), is_inside(), blender::bke::MutableAttributeAccessor::lookup_or_add_for_write_span(), blender::bke::AttributeAccessor::lookup_or_default(), EditSelectBuf_Cache::select_bitmap, and blender::bke::SpanAttributeWriter< T >::span.
Referenced by do_lasso_select_paintface(), do_paintface_box_select(), and paint_facesel_circle_select().
|
static |
Definition at line 251 of file view3d_select.cc.
References BLI_BITMAP_TEST_BOOL, BMEditMesh::bm, BM_elem_flag_test, BM_ELEM_HIDDEN, BM_ELEM_SELECT, BM_ITER_MESH, BM_vert_select_set(), BM_VERTS_OF_MESH, depsgraph, DRW_select_buffer_context_offset_for_object_elem(), ED_select_op_action_deselected(), is_inside(), SCE_SELECT_VERTEX, EditSelectBuf_Cache::select_bitmap, and blender::ed::uv::UVSyncSelectFromMesh::vert_select_set().
Referenced by do_lasso_select_mesh(), do_mesh_box_select(), and mesh_circle_select().
|
static |
Definition at line 363 of file view3d_select.cc.
References BLI_BITMAP_TEST_BOOL, ED_select_op_action_deselected(), blender::bke::SpanAttributeWriter< T >::finish(), is_inside(), blender::bke::MutableAttributeAccessor::lookup_or_add_for_write_span(), blender::bke::AttributeAccessor::lookup_or_default(), blender::bke::Point, EditSelectBuf_Cache::select_bitmap, blender::bke::SpanAttributeWriter< T >::span, and Mesh::verts_num.
Referenced by do_lasso_select_paintvert(), do_paintvert_box_select(), and paint_vertsel_circle_select().
Definition at line 492 of file view3d_select.cc.
References BLI_rctf_isect_pt_v(), and v2.
Referenced by do_lasso_select_mesh__doSelectEdge_pass0(), do_mesh_box_select__doSelectEdge_pass0(), and edge_inside_rect().
| bool edge_inside_circle | ( | const float | cent[2], |
| float | radius, | ||
| const float | screen_co_a[2], | ||
| const float | screen_co_b[2] ) |
XXX: should move to BLI_math
Definition at line 3758 of file view3d_select.cc.
References dist_squared_to_line_segment_v2().
Referenced by do_circle_select_armature__doSelectBone(), do_circle_select_armature__doSelectBone_clip_content(), do_circle_select_pose__doSelectBone(), gpencil_stroke_inside_circle(), and mesh_circle_doSelectEdge().
Definition at line 497 of file view3d_select.cc.
References edge_fully_inside_rect(), v2, rctf::xmax, rctf::xmin, rctf::ymax, and rctf::ymin.
Referenced by do_mesh_box_select__doSelectEdge_pass1().
|
static |
Definition at line 223 of file view3d_select.cc.
References MEM_SAFE_FREE, and EditSelectBuf_Cache::select_bitmap.
Referenced by editselect_buf_cache_free_voidp().
|
static |
Definition at line 228 of file view3d_select.cc.
References editselect_buf_cache_free(), and MEM_freeN().
Referenced by editselect_buf_cache_init_with_generic_userdata().
|
static |
Definition at line 205 of file view3d_select.cc.
References BKE_view_layer_array_from_bases_in_edit_mode(), BKE_view_layer_base_find(), BKE_view_layer_synced_ensure(), ViewContext::depsgraph, DRW_select_buffer_context_create(), ViewContext::obact, ViewContext::obedit, ViewContext::scene, ViewContext::v3d, and ViewContext::view_layer.
Referenced by editselect_buf_cache_init_with_generic_userdata().
|
static |
Definition at line 234 of file view3d_select.cc.
References wmGenericUserData::data, editselect_buf_cache_free_voidp(), editselect_buf_cache_init(), wmGenericUserData::free_fn, MEM_callocN(), and wmGenericUserData::use_free.
Referenced by do_lasso_select_mesh(), do_lasso_select_paintface(), do_lasso_select_paintvert(), do_mesh_box_select(), do_paintface_box_select(), do_paintvert_box_select(), mesh_circle_select(), paint_facesel_circle_select(), and paint_vertsel_circle_select().
|
static |
Compare result of 'GPU_select': 'GPUSelectResult', needed for when we need to align with object draw-order.
Definition at line 4309 of file view3d_select.cc.
Referenced by do_object_box_select(), and do_pose_box_select().
|
static |
Compare result of GPU_select: GPUSelectResult, Needed for stable sorting, so cycling through all items near the cursor behaves predictably.
Definition at line 2265 of file view3d_select.cc.
References b, GPUSelectResult::depth, and GPUSelectResult::id.
Referenced by mouse_select_eval_buffer().
|
static |
Definition at line 5403 of file view3d_select.cc.
References DEG_get_evaluated(), ViewContext::depsgraph, blender::ed::greasepencil::MutableDrawingInfo::drawing, ED_grease_pencil_selection_domain_get(), ED_view3d_ob_project_mat_get_from_obmat(), blender::bke::crazyspace::get_evaluated_grease_pencil_drawing_deformation(), View3DOverlay::handle_display, blender::ed::greasepencil::MutableDrawingInfo::layer_index, mask(), ViewContext::obact, ViewContext::obedit, View3D::overlay, blender::ed::greasepencil::retrieve_visible_bezier_handle_elements(), ViewContext::rv3d, ViewContext::scene, blender::ed::curves::select_circle_mask(), blender::ed::greasepencil::selection_update(), blender::bke::greasepencil::Drawing::strokes_for_write(), blender::bke::greasepencil::Layer::to_world_space(), Scene::toolsettings, and ViewContext::v3d.
Referenced by obedit_circle_select(), and view3d_circle_select_exec().
|
static |
Definition at line 5096 of file view3d_select.cc.
References data, ED_lattice_flags_set(), ED_view3d_init_mats_rv3d(), lattice_foreachScreenVert(), latticecurve_circle_doSelect(), ViewContext::obedit, ViewContext::rv3d, SEL_OP_SUB, SEL_OP_USE_PRE_DESELECT, select, V3D_PROJ_TEST_CLIP_DEFAULT, and view3d_userdata_circleselect_init().
Referenced by obedit_circle_select().
|
static |
Definition at line 5087 of file view3d_select.cc.
References data, BPoint::f1, len_squared_v2v2(), and SELECT.
Referenced by lattice_circle_select().
|
static |
Definition at line 5381 of file view3d_select.cc.
References BKE_mball_deselect_all(), data, Object::data, do_circle_select_mball__doSelectElem(), ED_view3d_init_mats_rv3d(), mball_foreachScreenElem(), ViewContext::obedit, ViewContext::rv3d, SEL_OP_SUB, SEL_OP_USE_PRE_DESELECT, select, V3D_PROJ_TEST_CLIP_DEFAULT, and view3d_userdata_circleselect_init().
Referenced by obedit_circle_select().
|
static |
Definition at line 4762 of file view3d_select.cc.
References BM_edge_select_set(), data, and edge_inside_circle().
Referenced by mesh_circle_select().
|
static |
Definition at line 4779 of file view3d_select.cc.
References BM_face_select_set(), data, and len_squared_v2v2().
Referenced by mesh_circle_select().
|
static |
Definition at line 4746 of file view3d_select.cc.
References BM_vert_select_set(), data, and len_squared_v2v2().
Referenced by mesh_circle_select().
|
static |
Definition at line 4796 of file view3d_select.cc.
References BKE_editmesh_from_object(), BLI_assert, BMEditMesh::bm, BM_ELEM_SELECT, BM_mesh_select_mode_flush_ex(), UVSyncSelectFromMesh::create_if_needed(), data, wmGenericUserData::data, ViewContext::depsgraph, DRW_select_buffer_bitmap_from_circle(), ED_view3d_init_mats_rv3d(), edbm_backbuf_check_and_select_edges(), edbm_backbuf_check_and_select_faces(), edbm_backbuf_check_and_select_verts(), EDBM_flag_disable_all(), editselect_buf_cache_init_with_generic_userdata(), ViewContext::em, mesh_circle_doSelectEdge(), mesh_circle_doSelectFace(), mesh_circle_doSelectVert(), mesh_foreachScreenEdge_clip_bb_segment(), mesh_foreachScreenFace(), mesh_foreachScreenVert(), None, ViewContext::obedit, ViewContext::region, ViewContext::rv3d, SCE_SELECT_EDGE, SCE_SELECT_FACE, SCE_SELECT_VERTEX, ViewContext::scene, SEL_OP_ADD, SEL_OP_SUB, SEL_OP_USE_PRE_DESELECT, select, EditSelectBuf_Cache::select_bitmap, BMEditMesh::selectmode, ToolSettings::selectmode, Scene::toolsettings, BMesh::totedgesel, BMesh::totfacesel, BMesh::totvertsel, ViewContext::v3d, V3D_PROJ_TEST_CLIP_BB, V3D_PROJ_TEST_CLIP_CONTENT_DEFAULT, V3D_PROJ_TEST_CLIP_DEFAULT, V3D_PROJ_TEST_CLIP_NEAR, view3d_userdata_circleselect_init(), and XRAY_FLAG_ENABLED.
Referenced by obedit_circle_select().
|
static |
Populate a select buffer with objects and bones, if there are any. Checks three selection levels and compare.
| do_nearest_xray | When set, read in hits that don't stop at the nearest surface. The hits must still be ordered by depth. Needed so we can step to the next, non-active object when it's already selected, see: #76445. |
Definition at line 2136 of file view3d_select.cc.
References blender::Vector< T, InlineBufferCapacity, Allocator >::as_mutable_span(), blender::Vector< T, InlineBufferCapacity, Allocator >::as_span(), BLI_rcti_init_pt_radius(), selectbuffer_has_bones(), selectbuffer_ret_hits_15(), selectbuffer_ret_hits_5(), selectbuffer_ret_hits_9(), GPUSelectBuffer::storage, view3d_gpu_select(), view3d_gpu_select_cache_begin(), view3d_gpu_select_cache_end(), view3d_gpu_select_ex(), VIEW3D_SELECT_PICK_ALL, and VIEW3D_SELECT_PICK_NEAREST.
Referenced by ed_view3d_give_base_under_cursor_ex(), mixed_bones_object_selectbuffer_extended(), and view3d_select_exec().
|
static |
Definition at line 2224 of file view3d_select.cc.
References mixed_bones_object_selectbuffer(), ViewContext::v3d, WM_cursor_test_motion_and_update(), and XRAY_ACTIVE.
Referenced by ed_object_select_pick().
|
static |
| has_bones | When true, skip non-bone hits, also allow bases to be used that are visible but not select-able, since you may be in pose mode with an un-selectable object. |
Definition at line 2299 of file view3d_select.cc.
References BASE_SELECTABLE, BASE_SELECTED, BASE_VISIBLE, BKE_view_layer_active_base_get(), BKE_view_layer_object_bases_get(), BKE_view_layer_synced_ensure(), blender::Vector< T, InlineBufferCapacity, Allocator >::data(), Base::flag, gpu_select_buffer_depth_id_cmp(), LISTBASE_FOREACH, min, Base::object, blender::Vector< T, InlineBufferCapacity, Allocator >::resize(), Object::runtime, ViewContext::scene, GPUSelectBuffer::storage, ViewContext::v3d, and ViewContext::view_layer.
Referenced by ed_object_select_pick(), and ed_view3d_give_base_under_cursor_ex().
|
static |
Definition at line 2417 of file view3d_select.cc.
References BASE_SELECTABLE, BKE_view_layer_active_base_get(), BKE_view_layer_object_bases_get(), BKE_view_layer_synced_ensure(), ED_view3d_project_float_global(), ED_view3d_select_dist_px(), ListBase::first, float, len_manhattan_v2v2(), Base::next, Base::object, ViewContext::region, ViewContext::scene, UI_SCALE_FAC, ViewContext::v3d, V3D_PROJ_RET_OK, V3D_PROJ_TEST_CLIP_DEFAULT, and ViewContext::view_layer.
Referenced by ed_object_select_pick().
|
static |
Definition at line 5026 of file view3d_select.cc.
References data, BezTriple::f1, BPoint::f1, BezTriple::f2, BezTriple::f3, len_squared_v2v2(), and SET_FLAG_FROM_TEST.
Referenced by nurbscurve_circle_select().
|
static |
Definition at line 5054 of file view3d_select.cc.
References BEZT_FLAG_TEMP_TAG, BKE_curve_editNurbs_get(), BKE_curve_nurb_vert_active_validate(), BKE_nurbList_flag_set(), BKE_nurbList_flag_set_from_flag(), data, Object::data, ED_view3d_init_mats_rv3d(), nurbs_foreachScreenVert(), nurbscurve_circle_doSelect(), ViewContext::obedit, ViewContext::rv3d, SEL_OP_SET, SEL_OP_SUB, SELECT, select, V3D_PROJ_TEST_CLIP_DEFAULT, and view3d_userdata_circleselect_init().
Referenced by obedit_circle_select().
|
static |
Callbacks for circle selection in Editmode
Definition at line 5456 of file view3d_select.cc.
References armature_circle_select(), BLI_assert, C, Object::data, DEG_id_tag_update(), ViewContext::depsgraph, ED_outliner_select_sync_from_edit_bone_tag(), ED_view3d_ob_project_mat_get(), ELEM, Curves::geometry, blender::bke::crazyspace::get_evaluated_curves_deformation(), grease_pencil_circle_select(), ID_RECALC_GEOMETRY, ID_RECALC_SELECT, lattice_circle_select(), mball_circle_select(), mesh_circle_select(), NC_GEOM, ND_DATA, ND_SELECT, nurbscurve_circle_select(), OB_ARMATURE, OB_CURVES, OB_CURVES_LEGACY, OB_GREASE_PENCIL, OB_LATTICE, OB_MBALL, OB_MESH, OB_POINTCLOUD, OB_SURF, ViewContext::obact, ViewContext::obedit, ViewContext::region, ViewContext::rv3d, SEL_OP_ADD, SEL_OP_SET, SEL_OP_SUB, blender::ed::curves::select_circle(), blender::ed::pointcloud::select_circle(), Curves::selection_domain, Object::type, WM_event_add_notifier(), and WM_main_add_notifier().
Referenced by view3d_circle_select_exec().
|
static |
Definition at line 5541 of file view3d_select.cc.
References blender::ed::object::BA_DESELECT, blender::ed::object::BA_SELECT, blender::ed::object::base_select(), BASE_SELECTABLE, BASE_SELECTED, BKE_view_layer_object_bases_get(), BKE_view_layer_synced_ensure(), BLI_assert, ED_view3d_project_float_global(), ELEM, float, len_squared_v2v2(), LISTBASE_FOREACH, object_deselect_all_visible(), ViewContext::region, ViewContext::scene, SEL_OP_ADD, SEL_OP_SET, SEL_OP_SUB, SEL_OP_USE_PRE_DESELECT, select, ViewContext::v3d, V3D_PROJ_RET_OK, V3D_PROJ_TEST_CLIP_DEFAULT, and ViewContext::view_layer.
Referenced by view3d_circle_select_exec().
Definition at line 173 of file view3d_select.cc.
References b, blender::ed::object::BA_DESELECT, blender::ed::object::base_select(), BASE_SELECTED, BKE_view_layer_object_bases_get(), BKE_view_layer_synced_ensure(), and LISTBASE_FOREACH.
Referenced by ed_object_select_pick(), and object_select_menu_exec().
|
static |
Definition at line 157 of file view3d_select.cc.
References blender::ed::object::BA_DESELECT, blender::ed::object::base_select(), BASE_SELECTABLE, BASE_SELECTED, BKE_view_layer_object_bases_get(), BKE_view_layer_synced_ensure(), and LISTBASE_FOREACH.
Referenced by do_lasso_select_objects(), do_object_box_select(), and object_circle_select().
|
static |
The scale isn't defined, simply use for sorting.
Definition at line 1731 of file view3d_select.cc.
References b, BLI_addtail(), BLI_freelinkN(), BLI_freelistN(), BLI_listbase_sort(), BLI_strncpy_utf8(), C, CTX_DATA_BEGIN, CTX_DATA_END, ED_view3d_project_base(), ListBase::first, float, float_as_uint(), i, Object::id, blender::wm::InvokeDefault, blender::Span< T >::is_empty(), ListBase::last, len_squared_v2v2(), LISTBASE_FOREACH_INDEX, MAX_ID_NAME, MEM_callocN(), ID::name, name, next, Base::object, object_mouse_select_menu_data, ot, params, ptr, ViewContext::region, RNA_boolean_set(), SEL_MENU_SIZE, SEL_OP_ADD, SEL_OP_SUB, SEL_OP_XOR, square_f(), U, UI_icon_from_id(), V3D_PROJ_RET_OK, WM_operator_name_call_ptr(), WM_operator_properties_create_ptr(), WM_operator_properties_free(), and WM_operatortype_find().
Referenced by ed_object_select_pick().
|
static |
Definition at line 1580 of file view3d_select.cc.
References C, i, object_mouse_select_menu_data, rna_enum_dummy_NULL_items, RNA_enum_item_add(), RNA_enum_item_end(), and SEL_MENU_SIZE.
Referenced by VIEW3D_OT_bone_select_menu(), and VIEW3D_OT_select_menu().
|
static |
Definition at line 1608 of file view3d_select.cc.
References blender::ed::object::BA_DESELECT, blender::ed::object::BA_SELECT, blender::ed::object::base_activate(), blender::ed::object::base_select(), BASE_SELECTABLE, BASE_SELECTED, BKE_view_layer_active_base_get(), BKE_view_layer_synced_ensure(), BLI_assert, C, CTX_DATA_BEGIN, CTX_DATA_END, CTX_data_scene(), CTX_data_view_layer(), CTX_wm_view3d(), DEG_id_tag_update(), ED_outliner_select_sync_from_object_tag(), Base::flag, Scene::id, ID_RECALC_SELECT, name, NC_SCENE, ND_OB_SELECT, object_deselect_all_except(), object_mouse_select_menu_data, OPERATOR_CANCELLED, OPERATOR_FINISHED, wmOperator::ptr, RNA_boolean_get(), RNA_enum_get(), STREQ, UNUSED_VARS_NDEBUG, and WM_event_add_notifier().
Referenced by VIEW3D_OT_select_menu().
|
static |
Definition at line 1686 of file view3d_select.cc.
References BLT_I18NCONTEXT_OPERATOR_DEFAULT, CTX_IFACE_, ptr, and RNA_boolean_get().
Referenced by VIEW3D_OT_select_menu().
Definition at line 4325 of file view3d_select.cc.
References C, DEG_id_tag_update(), Scene::id, ID_RECALC_SELECT, NC_SCENE, ND_OB_SELECT, and WM_event_add_notifier().
Referenced by do_object_box_select().
|
static |
Definition at line 4908 of file view3d_select.cc.
References BLI_assert, ViewContext::C, Object::data, wmGenericUserData::data, ViewContext::depsgraph, DRW_select_buffer_bitmap_from_circle(), edbm_backbuf_check_and_select_faces_obmode(), editselect_buf_cache_init_with_generic_userdata(), ELEM, MEM_freeN(), ViewContext::obact, paintface_deselect_all_visible(), paintface_flush_flags(), ViewContext::region, SCE_SELECT_FACE, SEL_DESELECT, SEL_OP_ADD, SEL_OP_SET, SEL_OP_SUB, SEL_OP_USE_PRE_DESELECT, EditSelectBuf_Cache::select_bitmap, and ViewContext::v3d.
Referenced by view3d_circle_select_exec().
|
static |
Definition at line 4962 of file view3d_select.cc.
References BKE_mesh_mselect_validate(), BLI_assert, ViewContext::C, data, Object::data, wmGenericUserData::data, ViewContext::depsgraph, DRW_select_buffer_bitmap_from_circle(), ED_view3d_init_mats_rv3d(), edbm_backbuf_check_and_select_verts_obmode(), editselect_buf_cache_init_with_generic_userdata(), ELEM, blender::bke::SpanAttributeWriter< T >::finish(), blender::bke::MutableAttributeAccessor::lookup_or_add_for_write_span(), MEM_freeN(), meshobject_foreachScreenVert(), ViewContext::obact, paint_vertsel_circle_select_doSelectVert(), paintvert_deselect_all_visible(), paintvert_flush_flags(), paintvert_tag_select_update(), blender::bke::Point, ViewContext::region, ViewContext::rv3d, SCE_SELECT_VERTEX, SEL_DESELECT, SEL_OP_ADD, SEL_OP_SET, SEL_OP_SUB, SEL_OP_USE_PRE_DESELECT, select, EditSelectBuf_Cache::select_bitmap, blender::bke::SpanAttributeWriter< T >::span, ViewContext::v3d, V3D_PROJ_TEST_CLIP_DEFAULT, view3d_userdata_circleselect_init(), and XRAY_ENABLED.
Referenced by view3d_circle_select_exec().
|
static |
Definition at line 4949 of file view3d_select.cc.
References CircleSelectUserData_ForMeshObjectVert::circle_data, data, len_squared_v2v2(), and CircleSelectUserData_ForMeshObjectVert::select_vert.
Referenced by paint_vertsel_circle_select().
|
static |
Definition at line 5119 of file view3d_select.cc.
References data, bPoseChannel::flag, len_squared_v2v2(), and POSE_SELECTED.
Referenced by do_circle_select_pose__doSelectBone().
|
static |
Cursor selection for all point cloud objects in edit mode.
Definition at line 3138 of file view3d_select.cc.
References blender::Vector< T, InlineBufferCapacity, Allocator >::as_span(), b, BKE_view_layer_array_from_bases_in_edit_mode_unique_data(), C, closest(), CTX_data_ensure_evaluated_depsgraph(), blender::Vector< T, InlineBufferCapacity, Allocator >::data(), DEG_id_tag_update(), depsgraph, blender::ed::pointcloud::FindClosestData::distance_sq, ED_view3d_ob_project_mat_get(), ED_view3d_select_dist_px(), ED_view3d_viewcontext_init(), ClosestPointCloud::elem, blender::ed::pointcloud::find_closest_point_to_screen_co(), i, ID_RECALC_GEOMETRY, blender::Vector< T, InlineBufferCapacity, Allocator >::index_range(), init(), NC_GEOM, ND_DATA, blender::threading::parallel_for(), blender::threading::parallel_reduce(), params, ClosestPointCloud::pointcloud, ViewContext::region, ViewContext::rv3d, ViewContext::scene, SEL_OP_SET, blender::Vector< T, InlineBufferCapacity, Allocator >::size(), ViewContext::v3d, ViewContext::view_layer, and WM_event_add_notifier().
Referenced by view3d_select_exec().
|
static |
Definition at line 5187 of file view3d_select.cc.
References BLI_assert, data, do_circle_select_pose__doSelectBone(), ED_pose_bone_select_tag_update(), ED_pose_deselect_all(), ED_view3d_init_mats_rv3d(), ELEM, ViewContext::obact, pose_foreachScreenBone(), ViewContext::rv3d, SEL_DESELECT, SEL_OP_ADD, SEL_OP_SET, SEL_OP_SUB, SEL_OP_USE_PRE_DESELECT, select, V3D_PROJ_TEST_CLIP_CONTENT_DEFAULT, V3D_PROJ_TEST_CLIP_DEFAULT, and view3d_userdata_circleselect_init().
Referenced by view3d_circle_select_exec().
|
static |
Definition at line 2090 of file view3d_select.cc.
Referenced by ed_object_select_pick(), ed_view3d_give_base_under_cursor_ex(), and mixed_bones_object_selectbuffer().
|
static |
Definition at line 2101 of file view3d_select.cc.
Referenced by mixed_bones_object_selectbuffer().
|
static |
Definition at line 2117 of file view3d_select.cc.
References blender::MutableSpan< T >::copy_from(), and blender::MutableSpan< T >::slice().
Referenced by mixed_bones_object_selectbuffer().
|
static |
Definition at line 2107 of file view3d_select.cc.
References blender::MutableSpan< T >::copy_from(), and blender::MutableSpan< T >::slice().
Referenced by mixed_bones_object_selectbuffer().
|
static |
Definition at line 4528 of file view3d_select.cc.
References BKE_editmesh_from_object(), BKE_object_pose_armature_get_with_wpaint_check(), BKE_object_update_select_id(), BKE_paint_select_face_test(), BKE_paint_select_grease_pencil_test(), BKE_paint_select_vert_test(), BLI_assert_msg, C, CTX_data_ensure_evaluated_depsgraph(), CTX_data_main(), Object::data, DEG_id_tag_update(), depsgraph, ViewContext::depsgraph, do_armature_box_select(), do_grease_pencil_box_select(), do_lattice_box_select(), do_mesh_box_select(), do_meta_box_select(), do_nurbs_box_select(), do_object_box_select(), do_paintface_box_select(), do_paintvert_box_select(), do_pose_box_select(), ED_outliner_select_sync_from_edit_bone_tag(), ED_outliner_select_sync_from_object_tag(), ED_outliner_select_sync_from_pose_bone_tag(), ED_view3d_ob_project_mat_get(), ED_view3d_viewcontext_init(), ED_view3d_viewcontext_init_object(), ViewContext::em, FOREACH_OBJECT_IN_MODE_BEGIN, FOREACH_OBJECT_IN_MODE_END, Curves::geometry, blender::bke::crazyspace::get_evaluated_curves_deformation(), Object::id, ID_RECALC_GEOMETRY, ID_RECALC_SELECT, Object::mode, NC_GEOM, NC_OBJECT, ND_BONE_SELECT, ND_DATA, ND_SELECT, OB_ARMATURE, OB_CURVES, OB_CURVES_LEGACY, OB_GREASE_PENCIL, OB_LATTICE, OB_MBALL, OB_MESH, OB_MODE_PARTICLE_EDIT, OB_MODE_POSE, OB_MODE_WEIGHT_PAINT, OB_POINTCLOUD, OB_SURF, ViewContext::obact, ViewContext::obedit, OPERATOR_CANCELLED, OPERATOR_FINISHED, PE_box_select(), wmOperator::ptr, ViewContext::region, RNA_enum_get(), ViewContext::rv3d, ViewContext::scene, blender::ed::curves::select_box(), blender::ed::pointcloud::select_box(), Curves::selection_domain, Object::type, ViewContext::v3d, view3d_operator_needs_gpu(), ViewContext::view_layer, WM_event_add_notifier(), WM_generic_user_data_free(), and WM_operator_properties_border_to_rcti().
Referenced by VIEW3D_OT_select_box().
|
static |
Definition at line 5621 of file view3d_select.cc.
References C, view3d_circle_select_recalc(), and WM_gesture_circle_cancel().
Referenced by VIEW3D_OT_select_circle().
|
static |
Definition at line 5627 of file view3d_select.cc.
References BKE_editmesh_from_object(), BKE_object_pose_armature_get_with_wpaint_check(), BKE_object_update_select_id(), BKE_paint_select_elem_test(), BKE_paint_select_face_test(), BKE_paint_select_grease_pencil_test(), BKE_paint_select_vert_test(), BLI_assert, C, CTX_data_ensure_evaluated_depsgraph(), CTX_data_main(), wmOperator::customdata, wmGenericUserData::data, DEG_id_tag_update(), depsgraph, ED_outliner_select_sync_from_object_tag(), ED_outliner_select_sync_from_pose_bone_tag(), ED_select_op_modal(), ED_view3d_viewcontext_init(), ED_view3d_viewcontext_init_object(), ViewContext::em, FOREACH_OBJECT_IN_MODE_BEGIN, FOREACH_OBJECT_IN_MODE_END, grease_pencil_circle_select(), Scene::id, ID_RECALC_SELECT, MEM_freeN(), Object::mode, NC_SCENE, ND_OB_SELECT, OB_MESH, OB_MODE_PARTICLE_EDIT, OB_MODE_POSE, OB_MODE_SCULPT, OB_MODE_WEIGHT_PAINT, ViewContext::obact, ViewContext::obedit, obedit_circle_select(), object_circle_select(), OPERATOR_CANCELLED, OPERATOR_FINISHED, paint_facesel_circle_select(), paint_vertsel_circle_select(), PE_circle_select(), pose_circle_select(), wmOperator::ptr, RNA_enum_get(), RNA_int_get(), ViewContext::scene, EditSelectBuf_Cache::select_bitmap, Object::type, wmGesture::user_data, ViewContext::v3d, view3d_operator_needs_gpu(), ViewContext::view_layer, WM_event_add_notifier(), WM_generic_user_data_free(), and WM_gesture_is_modal_first().
Referenced by VIEW3D_OT_select_circle().
|
static |
Definition at line 5610 of file view3d_select.cc.
References C, OPERATOR_FINISHED, result, view3d_circle_select_recalc(), and WM_gesture_circle_modal().
Referenced by VIEW3D_OT_select_circle().
|
static |
Definition at line 5582 of file view3d_select.cc.
References BMEditMesh::bm, BM_mesh_select_mode_flush_ex(), BMSelectFlushFlag_All, C, CTX_data_edit_object(), CTX_data_ensure_evaluated_depsgraph(), ED_view3d_viewcontext_init_object(), ViewContext::em, em_setup_viewcontext(), FOREACH_OBJECT_IN_MODE_BEGIN, FOREACH_OBJECT_IN_MODE_END, Object::mode, OB_MESH, ViewContext::obact, ViewContext::scene, BMEditMesh::selectmode, Object::type, ViewContext::v3d, and ViewContext::view_layer.
Referenced by view3d_circle_select_cancel(), and view3d_circle_select_modal().
|
static |
Definition at line 1377 of file view3d_select.cc.
References blender::bke::CurvesGeometry::attributes(), BKE_editmesh_from_object(), BKE_object_pose_armature_get_with_wpaint_check(), BKE_paint_select_face_test(), BKE_paint_select_grease_pencil_test(), BKE_paint_select_vert_test(), BLI_assert_msg, C, CTX_data_active_object(), blender::Span< T >::data(), Object::data, DEG_id_tag_update(), ViewContext::depsgraph, do_lasso_select_armature(), do_lasso_select_curve(), do_lasso_select_grease_pencil(), do_lasso_select_lattice(), do_lasso_select_mesh(), do_lasso_select_meta(), do_lasso_select_objects(), do_lasso_select_paintface(), do_lasso_select_paintvert(), do_lasso_select_pose(), blender::bke::AttributeAccessor::domain_size(), ED_outliner_select_sync_from_edit_bone_tag(), ED_outliner_select_sync_from_object_tag(), ED_outliner_select_sync_from_pose_bone_tag(), ED_view3d_ob_project_mat_get(), ED_view3d_viewcontext_init_object(), ViewContext::em, FOREACH_OBJECT_IN_MODE_BEGIN, FOREACH_OBJECT_IN_MODE_END, Curves::geometry, blender::bke::crazyspace::get_evaluated_curves_deformation(), ID_RECALC_GEOMETRY, ID_RECALC_SELECT, Object::mode, NC_GEOM, ND_DATA, ND_SELECT, OB_ARMATURE, OB_CURVES, OB_CURVES_LEGACY, OB_GREASE_PENCIL, OB_LATTICE, OB_MBALL, OB_MESH, OB_MODE_PARTICLE_EDIT, OB_MODE_POSE, OB_MODE_TEXTURE_PAINT, OB_MODE_VERTEX_PAINT, OB_MODE_WEIGHT_PAINT, OB_POINTCLOUD, OB_SURF, ViewContext::obedit, OPERATOR_CANCELLED, PE_lasso_select(), ViewContext::region, ViewContext::rv3d, ViewContext::scene, blender::ed::curves::select_lasso(), blender::ed::pointcloud::select_lasso(), Curves::selection_domain, blender::Span< T >::size(), Object::type, ViewContext::v3d, ViewContext::view_layer, WM_event_add_notifier(), and WM_generic_user_data_free().
Referenced by view3d_lasso_select_exec().
|
static |
Definition at line 1519 of file view3d_select.cc.
References BKE_object_update_select_id(), C, CTX_data_ensure_evaluated_depsgraph(), CTX_data_main(), depsgraph, ED_view3d_viewcontext_init(), blender::Array< T, InlineBufferCapacity, Allocator >::is_empty(), OPERATOR_CANCELLED, OPERATOR_FINISHED, OPERATOR_PASS_THROUGH, wmOperator::ptr, RNA_enum_get(), view3d_lasso_select(), view3d_operator_needs_gpu(), and WM_gesture_lasso_path_to_array().
Referenced by VIEW3D_OT_select_lasso().
| void VIEW3D_OT_bone_select_menu | ( | wmOperatorType * | ot | ) |
Definition at line 1911 of file view3d_select.cc.
References bone_select_menu_exec(), object_select_menu_enum_itemf(), OPTYPE_REGISTER, OPTYPE_UNDO, ot, PROP_ENUM_NO_TRANSLATE, PROP_HIDDEN, PROP_SKIP_SAVE, RNA_def_boolean(), RNA_def_enum(), RNA_def_enum_funcs(), RNA_def_property_flag(), rna_enum_dummy_NULL_items, and WM_menu_invoke().
Referenced by view3d_operatortypes().
| void VIEW3D_OT_select | ( | wmOperatorType * | ot | ) |
Definition at line 3665 of file view3d_select.cc.
References ED_operator_view3d_active(), ED_select_pick_get_name(), OPTYPE_UNDO, ot, PROP_HIDDEN, PROP_SKIP_SAVE, RNA_def_boolean(), RNA_def_int_vector(), RNA_def_property_flag(), view3d_select_exec(), view3d_select_invoke(), and WM_operator_properties_mouse_select().
Referenced by view3d_operatortypes().
| void VIEW3D_OT_select_box | ( | wmOperatorType * | ot | ) |
Definition at line 4680 of file view3d_select.cc.
References OPTYPE_UNDO, ot, view3d_box_select_exec(), view3d_selectable_data(), WM_gesture_box_cancel(), WM_gesture_box_invoke(), WM_gesture_box_modal(), WM_operator_properties_gesture_box(), and WM_operator_properties_select_operation().
Referenced by view3d_operatortypes().
| void VIEW3D_OT_select_circle | ( | wmOperatorType * | ot | ) |
Definition at line 5728 of file view3d_select.cc.
References ED_select_circle_get_name(), OPTYPE_UNDO, ot, view3d_circle_select_cancel(), view3d_circle_select_exec(), view3d_circle_select_modal(), view3d_selectable_data(), WM_gesture_circle_invoke(), WM_operator_properties_gesture_circle(), and WM_operator_properties_select_operation_simple().
Referenced by view3d_operatortypes().
| void VIEW3D_OT_select_lasso | ( | wmOperatorType * | ot | ) |
Definition at line 1542 of file view3d_select.cc.
References OPTYPE_DEPENDS_ON_CURSOR, OPTYPE_UNDO, ot, view3d_lasso_select_exec(), view3d_selectable_data(), WM_gesture_lasso_cancel(), WM_gesture_lasso_invoke(), WM_gesture_lasso_modal(), WM_operator_properties_gesture_lasso(), and WM_operator_properties_select_operation().
Referenced by view3d_operatortypes().
| void VIEW3D_OT_select_menu | ( | wmOperatorType * | ot | ) |
Definition at line 1697 of file view3d_select.cc.
References object_select_menu_enum_itemf(), object_select_menu_exec(), object_select_menu_get_name(), OPTYPE_REGISTER, OPTYPE_UNDO, ot, PROP_ENUM_NO_TRANSLATE, PROP_HIDDEN, PROP_SKIP_SAVE, RNA_def_boolean(), RNA_def_enum(), RNA_def_enum_funcs(), RNA_def_property_flag(), rna_enum_dummy_NULL_items, and WM_menu_invoke().
Referenced by view3d_operatortypes().
|
static |
Definition at line 3539 of file view3d_select.cc.
References blender::Vector< T, InlineBufferCapacity, Allocator >::as_span(), BKE_object_pose_armature_get(), BKE_object_update_select_id(), BKE_paint_select_elem_test(), BKE_paint_select_face_test(), BKE_paint_select_grease_pencil_test(), BKE_paint_select_vert_test(), bone_mouse_select_menu(), C, CTX_data_active_object(), CTX_data_edit_object(), CTX_data_ensure_evaluated_depsgraph(), CTX_data_main(), CTX_data_scene(), depsgraph, ED_armature_edit_select_pick(), ED_curve_editfont_select_pick(), ED_curve_editnurb_select_pick(), ed_curves_select_pick(), ed_grease_pencil_select_pick(), ED_lattice_select_pick(), ED_mball_select_pick(), ed_object_select_pick(), ED_select_pick_params_from_operator(), ED_view3d_select_dist_px(), ED_view3d_viewcontext_init(), ed_wpaint_vertex_select_pick(), EDBM_select_pick(), ELEM, mixed_bones_object_selectbuffer(), Object::mode, NC_SCENE, ND_OB_SELECT, OB_ARMATURE, OB_CURVES, OB_CURVES_LEGACY, OB_FONT, OB_GREASE_PENCIL, OB_LATTICE, OB_MBALL, OB_MESH, OB_MODE_ALL_WEIGHT_PAINT, OB_MODE_PARTICLE_EDIT, OB_POINTCLOUD, OB_SURF, OPERATOR_CANCELLED, OPERATOR_FINISHED, OPERATOR_PASS_THROUGH, paintface_mouse_select(), params, PE_mouse_particles(), pointcloud_select_pick(), wmOperator::ptr, RNA_boolean_get(), RNA_int_get_array(), GPUSelectBuffer::storage, Object::type, view3d_operator_needs_gpu(), VIEW3D_SELECT_FILTER_NOP, and WM_event_add_notifier().
Referenced by VIEW3D_OT_select(), and view3d_select_invoke().
|
static |
Definition at line 3656 of file view3d_select.cc.
References C, wmEvent::mval, wmOperator::ptr, RNA_int_set_array(), view3d_select_exec(), and WM_operator_flag_only_pass_through_on_press().
Referenced by VIEW3D_OT_select().
|
static |
Definition at line 471 of file view3d_select.cc.
References BKE_object_pose_armature_get_with_wpaint_check(), BKE_paint_select_elem_test(), C, CTX_data_active_object(), ED_operator_region_view3d_active(), OB_FONT, OB_MODE_EDIT, OB_MODE_SCULPT_GREASE_PENCIL, OB_MODE_TEXTURE_PAINT, OB_MODE_VERTEX_PAINT, and OB_MODE_WEIGHT_PAINT.
Referenced by VIEW3D_OT_select_box(), VIEW3D_OT_select_circle(), and VIEW3D_OT_select_lasso().
|
static |
Definition at line 3738 of file view3d_select.cc.
References BoxSelectUserData::_rect_fl, BLI_rctf_rcti_copy(), BoxSelectUserData::is_changed, BoxSelectUserData::is_done, BoxSelectUserData::rect, BoxSelectUserData::rect_fl, BoxSelectUserData::sel_op, SELECT, BoxSelectUserData::select_flag, and BoxSelectUserData::vc.
Referenced by do_lattice_box_select(), do_mesh_box_select(), do_nurbs_box_select(), and do_paintvert_box_select().
|
static |
Definition at line 4724 of file view3d_select.cc.
References copy_v2_v2_int(), CircleSelectUserData::is_changed, CircleSelectUserData::mval, CircleSelectUserData::mval_fl, CircleSelectUserData::radius, CircleSelectUserData::radius_squared, SELECT, CircleSelectUserData::select, select, CircleSelectUserData::select_flag, and CircleSelectUserData::vc.
Referenced by armature_circle_select(), lattice_circle_select(), mball_circle_select(), mesh_circle_select(), nurbscurve_circle_select(), paint_vertsel_circle_select(), and pose_circle_select().
|
static |
Definition at line 448 of file view3d_select.cc.
References LassoSelectUserData::_rect_fl, BLI_rctf_rcti_copy(), LassoSelectUserData::is_changed, LassoSelectUserData::is_done, LassoSelectUserData::mcoords, LassoSelectUserData::pass, LassoSelectUserData::rect, LassoSelectUserData::rect_fl, LassoSelectUserData::sel_op, SELECT, LassoSelectUserData::select_flag, and LassoSelectUserData::vc.
Referenced by do_lasso_select_armature(), do_lasso_select_curve(), do_lasso_select_lattice(), do_lasso_select_mesh(), do_lasso_select_meta(), do_lasso_select_paintvert(), and do_lasso_tag_pose().
|
static |
Definition at line 1577 of file view3d_select.cc.
Referenced by bone_mouse_select_menu(), bone_select_menu_exec(), object_mouse_select_menu(), object_select_menu_enum_itemf(), and object_select_menu_exec().