|
Blender V5.0
|
#include <cstddef>#include <fmt/format.h>#include "MEM_guardedalloc.h"#include "DNA_key_types.h"#include "DNA_material_types.h"#include "DNA_mesh_types.h"#include "DNA_meshdata_types.h"#include "DNA_modifier_types.h"#include "DNA_object_types.h"#include "DNA_scene_types.h"#include "BLI_array.hh"#include "BLI_bitmap.h"#include "BLI_heap_simple.h"#include "BLI_linklist.h"#include "BLI_linklist_stack.h"#include "BLI_listbase.h"#include "BLI_math_bits.h"#include "BLI_math_geom.h"#include "BLI_math_matrix.h"#include "BLI_math_rotation.h"#include "BLI_math_vector.h"#include "BLI_rand.h"#include "BLI_sort_utils.h"#include "BKE_attribute.h"#include "BKE_context.hh"#include "BKE_customdata.hh"#include "BKE_deform.hh"#include "BKE_editmesh.hh"#include "BKE_key.hh"#include "BKE_layer.hh"#include "BKE_lib_id.hh"#include "BKE_material.hh"#include "BKE_mesh.hh"#include "BKE_mesh_types.hh"#include "BKE_object.hh"#include "BKE_object_types.hh"#include "BKE_report.hh"#include "DEG_depsgraph.hh"#include "DEG_depsgraph_build.hh"#include "BLT_translation.hh"#include "RNA_access.hh"#include "RNA_define.hh"#include "RNA_enum_types.hh"#include "RNA_prototypes.hh"#include "WM_api.hh"#include "WM_types.hh"#include "ED_mesh.hh"#include "ED_object.hh"#include "ED_outliner.hh"#include "ED_screen.hh"#include "ED_select_utils.hh"#include "ED_transform.hh"#include "ED_uvedit.hh"#include "ED_view3d.hh"#include "UI_interface.hh"#include "UI_interface_layout.hh"#include "UI_resources.hh"#include "mesh_intern.hh"#include "bmesh_tools.hh"Go to the source code of this file.
Classes | |
| struct | EdgeRingOpSubdProps |
| struct | FillGridSplitJoin |
| struct | BMElemSort |
Macros | |
| #define | USE_FACE_CREATE_SEL_EXTEND |
Loop Normals Editing Tools Modal Map | |
| #define | CLNORS_VALID_VEC_LEN (1e-4f) |
| enum | { EDBM_CLNOR_MODAL_CANCEL = 1 , EDBM_CLNOR_MODAL_CONFIRM = 2 , EDBM_CLNOR_MODAL_POINTTO_RESET = 101 , EDBM_CLNOR_MODAL_POINTTO_INVERT = 102 , EDBM_CLNOR_MODAL_POINTTO_SPHERIZE = 103 , EDBM_CLNOR_MODAL_POINTTO_ALIGN = 104 , EDBM_CLNOR_MODAL_POINTTO_USE_MOUSE = 110 , EDBM_CLNOR_MODAL_POINTTO_USE_PIVOT = 111 , EDBM_CLNOR_MODAL_POINTTO_USE_OBJECT = 112 , EDBM_CLNOR_MODAL_POINTTO_SET_USE_3DCURSOR = 113 , EDBM_CLNOR_MODAL_POINTTO_SET_USE_SELECTED = 114 } |
| wmKeyMap * | point_normals_modal_keymap (wmKeyConfig *keyconf) |
Delete Operator | |
| enum | { MESH_DELETE_VERT = 0 , MESH_DELETE_EDGE = 1 , MESH_DELETE_FACE = 2 , MESH_DELETE_EDGE_FACE = 3 , MESH_DELETE_ONLY_FACE = 4 } |
| static void | edbm_report_delete_info (ReportList *reports, const int totelem_old[3], const int totelem_new[3]) |
| static wmOperatorStatus | edbm_delete_exec (bContext *C, wmOperator *op) |
| void | MESH_OT_delete (wmOperatorType *ot) |
Merge Vertices Operator | |
| enum | { MESH_MERGE_LAST = 1 , MESH_MERGE_CENTER = 3 , MESH_MERGE_CURSOR = 4 , MESH_MERGE_COLLAPSE = 5 , MESH_MERGE_FIRST = 6 } |
| static const EnumPropertyItem | merge_type_items [] |
| static bool | merge_firstlast (BMEditMesh *em, const bool use_first, const bool use_uvmerge, wmOperator *wmop) |
| static bool | merge_target (BMEditMesh *em, Scene *scene, Object *ob, const bool use_cursor, const bool use_uvmerge, wmOperator *wmop) |
| static wmOperatorStatus | edbm_merge_exec (bContext *C, wmOperator *op) |
| static const EnumPropertyItem * | merge_type_itemf (bContext *C, PointerRNA *, PropertyRNA *, bool *r_free) |
| void | MESH_OT_merge (wmOperatorType *ot) |
Separate Parts Operator | |
| enum | { MESH_SEPARATE_SELECTED = 0 , MESH_SEPARATE_MATERIAL = 1 , MESH_SEPARATE_LOOSE = 2 } |
| static Base * | mesh_separate_tagged (Main *bmain, Scene *scene, ViewLayer *view_layer, Base *base_old, BMesh *bm_old) |
| static Base * | mesh_separate_arrays (Main *bmain, Scene *scene, ViewLayer *view_layer, Base *base_old, BMesh *bm_old, BMVert **verts, uint verts_len, BMEdge **edges, uint edges_len, BMFace **faces, uint faces_len) |
| static bool | mesh_separate_selected (Main *bmain, Scene *scene, ViewLayer *view_layer, Base *base_old, BMesh *bm_old) |
| static void | mesh_separate_material_assign_mat_nr (Main *bmain, Object *ob, const short mat_nr) |
| static bool | mesh_separate_material (Main *bmain, Scene *scene, ViewLayer *view_layer, Base *base_old, BMesh *bm_old) |
| static bool | mesh_separate_loose (Main *bmain, Scene *scene, ViewLayer *view_layer, Base *base_old, BMesh *bm_old) |
| static wmOperatorStatus | edbm_separate_exec (bContext *C, wmOperator *op) |
| void | MESH_OT_separate (wmOperatorType *ot) |
Sort Geometry Elements Operator | |
Unified for vertices/edges/faces. | |
| enum | { SRT_VIEW_ZAXIS = 1 , SRT_VIEW_XAXIS , SRT_CURSOR_DISTANCE , SRT_MATERIAL , SRT_SELECTED , SRT_RANDOMIZE , SRT_REVERSE } |
| static int | bmelemsort_comp (const void *v1, const void *v2) |
| static void | sort_bmelem_flag (bContext *C, Scene *scene, Object *ob, RegionView3D *rv3d, const int types, const int flag, const int action, const int reverse, const uint seed) |
| static wmOperatorStatus | edbm_sort_elements_exec (bContext *C, wmOperator *op) |
| static bool | edbm_sort_elements_poll_property (const bContext *, wmOperator *op, const PropertyRNA *prop) |
| void | MESH_OT_sort_elements (wmOperatorType *ot) |
Bridge Operator | |
| enum | { MESH_BRIDGELOOP_SINGLE = 0 , MESH_BRIDGELOOP_CLOSED = 1 , MESH_BRIDGELOOP_PAIRS = 2 } |
| static int | edbm_bridge_tag_boundary_edges (BMesh *bm) |
| static int | edbm_bridge_edge_loops_for_single_editmesh (wmOperator *op, BMEditMesh *em, Mesh *mesh, const bool use_pairs, const bool use_cyclic, const bool use_merge, const float merge_factor, const int twist_offset) |
| static wmOperatorStatus | edbm_bridge_edge_loops_exec (bContext *C, wmOperator *op) |
| void | MESH_OT_bridge_edge_loops (wmOperatorType *ot) |
Average Loop Normals Operator | |
| enum | { EDBM_CLNOR_AVERAGE_LOOP = 1 , EDBM_CLNOR_AVERAGE_FACE_AREA = 2 , EDBM_CLNOR_AVERAGE_ANGLE = 3 } |
| static EnumPropertyItem | average_method_items [] |
| static wmOperatorStatus | edbm_average_normals_exec (bContext *C, wmOperator *op) |
| static bool | average_normals_draw_check_prop (PointerRNA *ptr, PropertyRNA *prop, void *) |
| static void | edbm_average_normals_ui (bContext *C, wmOperator *op) |
| void | MESH_OT_average_normals (wmOperatorType *ot) |
Custom Normal Interface Tools Operator | |
| enum | { EDBM_CLNOR_TOOLS_COPY = 1 , EDBM_CLNOR_TOOLS_PASTE = 2 , EDBM_CLNOR_TOOLS_MULTIPLY = 3 , EDBM_CLNOR_TOOLS_ADD = 4 , EDBM_CLNOR_TOOLS_RESET = 5 } |
| static EnumPropertyItem | normal_vector_tool_items [] |
| static wmOperatorStatus | edbm_normals_tools_exec (bContext *C, wmOperator *op) |
| static bool | normals_tools_draw_check_prop (PointerRNA *ptr, PropertyRNA *prop, void *) |
| static void | edbm_normals_tools_ui (bContext *C, wmOperator *op) |
| void | MESH_OT_normals_tools (wmOperatorType *ot) |
Subdivide Operator | |
| static const EnumPropertyItem | prop_mesh_cornervert_types [] |
| static wmOperatorStatus | edbm_subdivide_exec (bContext *C, wmOperator *op) |
| void | MESH_OT_subdivide (wmOperatorType *ot) |
Weighted Normal Modifier Face Strength | |
| static const EnumPropertyItem | prop_mesh_face_strength_types [] |
| static wmOperatorStatus | edbm_mod_weighted_strength_exec (bContext *C, wmOperator *op) |
| void | MESH_OT_mod_weighted_strength (wmOperatorType *ot) |
| void | MESH_OT_flip_quad_tessellation (wmOperatorType *ot) |
| #define CLNORS_VALID_VEC_LEN (1e-4f) |
Definition at line 8301 of file editmesh_tools.cc.
Referenced by apply_weights_vertex_normal(), edbm_average_normals_exec(), edbm_normals_tools_exec(), edbm_smooth_normals_exec(), normals_merge(), normals_split(), and point_normals_apply().
| #define USE_FACE_CREATE_SEL_EXTEND |
Definition at line 83 of file editmesh_tools.cc.
| anonymous enum |
| Enumerator | |
|---|---|
| MESH_DELETE_VERT | |
| MESH_DELETE_EDGE | |
| MESH_DELETE_FACE | |
| MESH_DELETE_EDGE_FACE | |
| MESH_DELETE_ONLY_FACE | |
Definition at line 422 of file editmesh_tools.cc.
| anonymous enum |
| Enumerator | |
|---|---|
| MESH_MERGE_LAST | |
| MESH_MERGE_CENTER | |
| MESH_MERGE_CURSOR | |
| MESH_MERGE_COLLAPSE | |
| MESH_MERGE_FIRST | |
Definition at line 3298 of file editmesh_tools.cc.
| anonymous enum |
| Enumerator | |
|---|---|
| EDBM_CLNOR_TOOLS_COPY | |
| EDBM_CLNOR_TOOLS_PASTE | |
| EDBM_CLNOR_TOOLS_MULTIPLY | |
| EDBM_CLNOR_TOOLS_ADD | |
| EDBM_CLNOR_TOOLS_RESET | |
Definition at line 9292 of file editmesh_tools.cc.
| anonymous enum |
| Enumerator | |
|---|---|
| MESH_BRIDGELOOP_SINGLE | |
| MESH_BRIDGELOOP_CLOSED | |
| MESH_BRIDGELOOP_PAIRS | |
Definition at line 7192 of file editmesh_tools.cc.
| anonymous enum |
| Enumerator | |
|---|---|
| EDBM_CLNOR_POINTTO_MODE_COORDINATES | |
| EDBM_CLNOR_POINTTO_MODE_MOUSE | |
Definition at line 8309 of file editmesh_tools.cc.
| anonymous enum |
Definition at line 6529 of file editmesh_tools.cc.
| anonymous enum |
| Enumerator | |
|---|---|
| MESH_SEPARATE_SELECTED | |
| MESH_SEPARATE_MATERIAL | |
| MESH_SEPARATE_LOOSE | |
Definition at line 4108 of file editmesh_tools.cc.
| anonymous enum |
Definition at line 8220 of file editmesh_tools.cc.
| anonymous enum |
| Enumerator | |
|---|---|
| EDBM_CLNOR_AVERAGE_LOOP | |
| EDBM_CLNOR_AVERAGE_FACE_AREA | |
| EDBM_CLNOR_AVERAGE_ANGLE | |
Definition at line 9040 of file editmesh_tools.cc.
|
static |
Definition at line 9212 of file editmesh_tools.cc.
References EDBM_CLNOR_AVERAGE_LOOP, ptr, RNA_enum_get(), RNA_property_identifier(), and STREQ.
Referenced by edbm_average_normals_ui().
|
static |
Definition at line 4656 of file editmesh_tools.cc.
References BM_elem_flag_test_bool, BM_ELEM_SELECT, and e.
Referenced by edbm_fill_grid_prepare().
|
static |
Definition at line 567 of file editmesh_tools.cc.
References BM_edge_is_boundary(), BM_FACE_FIRST_LOOP, BMLoop::e, and BMLoop::next.
Referenced by edbm_delete_loose_exec().
Definition at line 1352 of file editmesh_tools.cc.
References bm, BM_EDGE, BM_ELEM_SELECT, BM_vert_normal_update(), BMO_FLAG_DEFAULTS, BMO_op_exec(), BMO_op_finish(), BMO_op_init(), BMO_slot_buffer_alloc(), BMO_slot_buffer_hflag_enable(), BMOperator::slots_in, BMOperator::slots_out, and verts.
Referenced by bm_vert_connect_select_history().
|
static |
Definition at line 1373 of file editmesh_tools.cc.
References BLI_listbase_count_at_most(), bm, BM_edge_create(), BM_edge_exists(), BM_edge_select_set(), BM_VERT, bm_vert_connect_pair(), bm_vert_is_select_history_open(), BM_vert_is_wire(), e, BMEditSelection::ele, BMEditSelection::htype, BMEditSelection::next, and v.
Referenced by edbm_vert_connect_path_exec().
Convert an edge selection to a temp vertex selection (which must be cleared after use as a path to connect).
Definition at line 1479 of file editmesh_tools.cc.
References bm, BM_EDGE, BM_edge_pair_share_face_by_len(), BM_select_history_store_head_notest, BM_select_history_store_notest, BMVert::co, is_quad_flip_v3(), LISTBASE_FOREACH, BMLoop::v, v, BMEdge::v1, and BMEdge::v2.
Referenced by edbm_vert_connect_path_exec().
|
static |
check that endpoints are verts and only have a single selected edge connected.
Definition at line 1335 of file editmesh_tools.cc.
References bm, BM_EDGES_OF_VERT, BM_ELEM_SELECT, BM_iter_elem_count_flag(), BM_VERT, BMEditSelection::ele, and BMEditSelection::htype.
Referenced by bm_vert_connect_select_history().
|
static |
Definition at line 6554 of file editmesh_tools.cc.
References BMElemSort::srt, and v2.
Referenced by sort_bmelem_flag().
Definition at line 8397 of file editmesh_tools.cc.
References add_v3_v3(), bm, BM_elem_flag_test, BM_ELEM_SELECT, BM_ITER_MESH, BM_VERTS_OF_MESH, i, mul_v3_fl(), v, and zero_v3().
Referenced by edbm_point_normals_modal(), and point_normals_apply().
|
static |
Definition at line 6127 of file editmesh_tools.cc.
References BKE_editmesh_from_object(), C, CTX_data_edit_object(), RNA_property_identifier(), SCE_SELECT_EDGE, SCE_SELECT_VERTEX, BMEditMesh::selectmode, STREQ, and UNUSED_VARS.
Referenced by MESH_OT_dissolve_mode().
|
static |
Definition at line 735 of file editmesh_tools.cc.
References bm, BM_EDGES_OF_MESH, BM_elem_flag_test, BM_elem_flag_test_bool, BM_ELEM_SELECT, BM_ELEM_SMOOTH, BM_ITER_MESH, and e.
Referenced by edbm_add_edge_face_exec(), and edbm_fill_grid_exec().
|
static |
Definition at line 915 of file editmesh_tools.cc.
References BKE_editmesh_from_object(), BKE_view_layer_array_from_objects_in_edit_mode_unique_data(), BMEditMesh::bm, BM_EDGE, BM_ELEM_HIDDEN, BM_ELEM_SELECT, BM_FACE, BMO_op_exec(), BMO_slot_buffer_get_first(), BMO_slot_buffer_hflag_disable(), BMO_slot_buffer_hflag_enable(), BMO_slot_buffer_len(), C, CTX_data_scene(), CTX_data_view_layer(), CTX_wm_view3d(), edbm_add_edge_face__smooth_get(), edbm_add_edge_face_exec__tricky_extend_sel(), edbm_add_edge_face_exec__tricky_finalize_sel(), EDBM_op_finish(), EDBM_op_init(), EDBM_update(), BMEditMesh::mat_nr, OPERATOR_CANCELLED, OPERATOR_FINISHED, params, BMOperator::slots_out, BMesh::totedge, BMesh::totedgesel, BMesh::totface, BMesh::totfacesel, and BMesh::totvertsel.
Referenced by MESH_OT_edge_face_add().
Definition at line 777 of file editmesh_tools.cc.
References bm, BM_edge_exists(), BM_edge_is_boundary(), BM_edge_is_wire(), BM_edge_other_vert(), BM_edge_select_set(), BM_edge_share_face_check(), BM_EDGES_OF_MESH, BM_elem_flag_test, BM_ELEM_SELECT, BM_ITER_MESH, BM_VERTS_OF_MESH, e, edbm_add_edge_face_exec__vert_edge_lookup(), and v.
Referenced by edbm_add_edge_face_exec().
|
static |
Definition at line 872 of file editmesh_tools.cc.
References BLI_assert, bm, BM_edge_select_set(), BM_elem_flag_disable, BM_ELEM_HIDDEN, BM_face_edge_share_loop(), BM_face_select_set(), BM_face_vert_share_loop(), BM_select_history_clear(), BM_select_history_store, BM_VERT, BM_vert_select_set(), ELEM, BMElem::head, BMHeader::htype, l, and BMFace::len.
Referenced by edbm_add_edge_face_exec().
|
static |
Function used to get a fixed number of edges linked to a vertex that passes a test function. This is used so we can request all boundary edges connected to a vertex for eg.
Definition at line 756 of file editmesh_tools.cc.
References BM_EDGES_OF_VERT, BM_elem_flag_test, BM_ELEM_HIDDEN, BM_ITER_ELEM, i, and v.
Referenced by edbm_add_edge_face_exec__tricky_extend_sel().
|
static |
Definition at line 9065 of file editmesh_tools.cc.
References add_v3_v3(), BKE_editmesh_from_object(), BKE_editmesh_lnorspace_update(), BKE_lnor_space_custom_data_to_normal(), BKE_lnor_space_custom_normal_to_data(), BKE_view_layer_array_from_objects_in_edit_mode_unique_data(), BLI_assert, BLI_heapsimple_free(), BLI_heapsimple_insert(), BLI_heapsimple_is_empty(), BLI_heapsimple_new(), BLI_heapsimple_pop_min(), BLI_heapsimple_top_value(), BLI_SMALLSTACK_DECLARE, BLI_SMALLSTACK_IS_EMPTY, BLI_SMALLSTACK_POP, BLI_SMALLSTACK_PUSH, bm, BMEditMesh::bm, BM_ELEM_CD_GET_VOID_P, BM_elem_flag_test, BM_elem_index_get, BM_ELEM_SELECT, BM_ELEM_TAG, BM_face_calc_area(), BM_FACE_FIRST_LOOP, BM_FACES_OF_MESH, BM_ITER_MESH, BM_loop_calc_face_angle(), BM_loop_check_cyclic_smooth_fan(), BM_normals_loops_edges_tag(), BM_SPACEARR_DIRTY_ALL, BM_vert_step_fan_loop(), C, CD_PROP_INT16_2D, CLNORS_VALID_VEC_LEN, compare_ff(), copy_v3_v3(), count, CTX_data_scene(), CTX_data_view_layer(), CTX_wm_view3d(), CustomData_get_offset_named(), Object::data, BMLoop::e, EDBM_CLNOR_AVERAGE_ANGLE, EDBM_CLNOR_AVERAGE_FACE_AREA, EDBM_CLNOR_AVERAGE_LOOP, EDBM_update(), BMLoop::f, float, l, mul_v3_fl(), BMLoop::next, BMFace::no, normalize_v3(), OPERATOR_FINISHED, params, pow, BMLoop::prev, wmOperator::ptr, RNA_enum_get(), RNA_float_get(), RNA_int_get(), blender::Vector< T, InlineBufferCapacity, Allocator >::size(), UNUSED_VARS_NDEBUG, BMLoop::v, and zero_v3().
Referenced by MESH_OT_average_normals().
|
static |
Definition at line 9232 of file editmesh_tools.cc.
References average_normals_draw_check_prop(), C, CTX_wm_manager(), wmWindowManager::id, wmOperator::layout, wmOperator::properties, ptr, RNA_pointer_create_discrete(), wmOperatorType::srna, wmOperator::type, UI_BUT_LABEL_ALIGN_NONE, uiDefAutoButsRNA(), and uiLayout::use_property_split_set().
Referenced by MESH_OT_average_normals().
|
static |
Definition at line 5162 of file editmesh_tools.cc.
References BKE_editmesh_from_object(), BKE_view_layer_array_from_objects_in_edit_mode_unique_data(), BMEditMesh::bm, BM_edge_calc_face_angle_ex(), BM_EDGES_OF_MESH, BM_elem_flag_set, BM_elem_flag_test, BM_ELEM_SELECT, BM_ELEM_TAG, BM_ITER_MESH, C, CTX_data_scene(), CTX_data_view_layer(), CTX_wm_view3d(), e, EDBM_op_call_and_selectf(), EDBM_update(), M_PI, OPERATOR_FINISHED, params, wmOperator::ptr, RNA_float_get(), and BMesh::totfacesel.
Referenced by MESH_OT_beautify_fill().
|
static |
Definition at line 3830 of file editmesh_tools.cc.
References BKE_keyblock_find_name(), BKE_report(), BKE_view_layer_array_from_objects_in_edit_mode_unique_data(), blend(), BLI_findindex(), BLI_findlink(), Key::block, BMEditMesh::bm, BM_elem_flag_test, BM_ELEM_HIDDEN, BM_ELEM_SELECT, BM_ITER_MESH, BM_VERTS_OF_MESH, C, CD_SHAPEKEY, BMVert::co, copy_v3_v3(), CTX_data_edit_object(), CTX_data_scene(), CTX_data_view_layer(), CTX_wm_view3d(), CustomData_bmesh_get_n(), CustomData_number_of_layers(), BMHeader::data, Object::data, EDBM_update(), EDBM_verts_mirror_apply(), EDBM_verts_mirror_cache_begin(), EDBM_verts_mirror_cache_end(), Mesh::editflag, BMVert::head, interp_v3_v3v3(), Mesh::key, madd_v3_v3fl(), ME_EDIT_MIRROR_TOPO, ME_SYMMETRY_X, KeyBlock::name, OPERATOR_CANCELLED, OPERATOR_FINISHED, params, wmOperator::ptr, KeyBlock::relative, wmOperator::reports, RNA_boolean_get(), RNA_enum_get(), RNA_float_get(), RPT_ERROR, Mesh::runtime, blender::ed::object::shape_key_report_if_locked(), sub_v3_v3v3(), Mesh::symmetry, BMesh::totvertsel, and BMesh::vdata.
Referenced by MESH_OT_blend_from_shape().
|
static |
Definition at line 3981 of file editmesh_tools.cc.
References C, CTX_data_edit_object(), Object::data, Mesh::key, wmOperator::layout, uiLayout::prop(), uiLayout::prop_search(), wmOperator::ptr, RNA_id_pointer_create(), UI_ITEM_NONE, uiLayout::use_property_decorate_set(), and uiLayout::use_property_split_set().
Referenced by MESH_OT_blend_from_shape().
|
static |
Definition at line 7375 of file editmesh_tools.cc.
References BKE_editmesh_from_object(), BKE_view_layer_array_from_objects_in_edit_mode_unique_data(), BMEditMesh::bm, C, CTX_data_scene(), CTX_data_view_layer(), CTX_wm_view3d(), edbm_bridge_edge_loops_for_single_editmesh(), MESH_BRIDGELOOP_CLOSED, MESH_BRIDGELOOP_PAIRS, OPERATOR_FINISHED, wmOperator::ptr, RNA_boolean_get(), RNA_enum_get(), RNA_float_get(), RNA_int_get(), and BMesh::totvertsel.
Referenced by MESH_OT_bridge_edge_loops().
|
static |
Definition at line 7240 of file editmesh_tools.cc.
References BMEditMesh::bm, BM_elem_flag_enable, BM_elem_flag_test, BM_ELEM_SELECT, BM_ELEM_TAG, BM_FACE, BM_FACES_OF_MESH, BM_ITER_MESH, BM_mesh_elem_hflag_disable_all(), BMO_ERROR_CANCEL, BMO_error_occurred_at_level(), BMO_FLAG_DEFAULTS, BMO_op_callf(), BMO_op_exec(), BMO_op_finish(), BMO_op_initf(), BMO_slot_buffer_hflag_enable(), EdgeRingOpSubdProps::cuts, DEL_FACES_KEEP_BOUNDARY, edbm_bridge_tag_boundary_edges(), EDBM_flag_disable_all(), EDBM_mesh_normals_update(), EDBM_op_finish(), EDBM_op_init(), EDBM_update(), i, EdgeRingOpSubdProps::interp_mode, MEM_freeN(), MEM_mallocN(), mesh_operator_edgering_props_get(), OPERATOR_FINISHED, params, EdgeRingOpSubdProps::profile_shape, EdgeRingOpSubdProps::profile_shape_factor, BMOperator::slots_out, EdgeRingOpSubdProps::smooth, and BMesh::totfacesel.
Referenced by edbm_bridge_edge_loops_exec().
|
static |
Definition at line 7198 of file editmesh_tools.cc.
References bm, BM_EDGE, BM_edge_is_boundary(), BM_edge_is_wire(), BM_EDGES_OF_MESH, BM_elem_flag_enable, BM_elem_flag_test, BM_ELEM_SELECT, BM_ELEM_TAG, BM_FACE, BM_FACES_OF_EDGE, BM_ITER_ELEM, BM_ITER_MESH, BM_mesh_elem_hflag_disable_all(), and e.
Referenced by edbm_bridge_edge_loops_for_single_editmesh().
|
static |
Definition at line 685 of file editmesh_tools.cc.
References BKE_editmesh_from_object(), BKE_view_layer_array_from_objects_in_edit_mode_unique_data(), BMEditMesh::bm, BM_ELEM_SELECT, C, CTX_data_scene(), CTX_data_view_layer(), CTX_wm_view3d(), EDBM_op_callf(), EDBM_update(), OPERATOR_FINISHED, params, and BMesh::totedgesel.
Referenced by MESH_OT_edge_collapse().
|
static |
Definition at line 1185 of file editmesh_tools.cc.
References bm, BMEditMesh::bm, BM_custom_loop_normals_from_vector_layer(), BM_custom_loop_normals_to_vector_layer(), BM_EDGE, BM_elem_cb_check_hflag_disabled_simple, BM_elem_flag_test, BM_ELEM_HIDDEN, BM_ELEM_SELECT, BM_ITER_MESH, BM_vert_pair_share_face_check_cb(), BM_VERTS_OF_MESH, BMO_ERROR_FATAL, BMO_error_occurred_at_level(), BMO_op_exec(), BMO_slot_buffer_hflag_enable(), BMO_slot_get(), EDBM_op_finish(), EDBM_op_init(), EDBM_redo_state_free(), EDBM_redo_state_restore_and_free(), EDBM_redo_state_store(), EDBM_selectmode_flush(), EDBM_update(), i, BMOpSlot::len, len, MEM_freeN(), MEM_malloc_arrayN(), params, BMOperator::slots_out, v, and verts.
Referenced by edbm_vert_connect_exec(), and edbm_vert_connect_path_exec().
|
static |
Definition at line 5786 of file editmesh_tools.cc.
Referenced by MESH_OT_decimate().
|
static |
Calculate a new ratio based on faces that could be removed during decimation. needed so 0..1 has a meaningful range when operating on the selection.
This doesn't have to be totally accurate, but needs to be greater than the number of selected faces
Definition at line 5661 of file editmesh_tools.cc.
References BKE_defvert_find_weight(), BKE_editmesh_from_object(), BKE_object_defgroup_active_index_get(), BKE_report(), BKE_view_layer_array_from_objects_in_edit_mode_unique_data(), bm, BMEditMesh::bm, BM_ELEM_CD_GET_VOID_P, BM_elem_flag_test, BM_elem_index_get, BM_elem_index_set, BM_ELEM_SELECT, BM_FACE_FIRST_LOOP, BM_FACES_OF_MESH, BM_ITER_MESH, BM_ITER_MESH_INDEX, BM_mesh_decimate_collapse(), BM_VERT, BM_VERTS_OF_MESH, C, CD_MDEFORMVERT, CTX_data_scene(), CTX_data_view_layer(), CTX_wm_view3d(), CustomData_get_offset(), EDBM_selectmode_flush_ex(), EDBM_update(), EDBM_uvselect_clear(), float, i, BMFace::len, MEM_freeN(), MEM_malloc_arrayN(), BMLoop::next, OPERATOR_FINISHED, params, wmOperator::ptr, wmOperator::reports, RNA_boolean_get(), RNA_enum_get(), RNA_float_get(), RPT_WARNING, SCE_SELECT_EDGE, SCE_SELECT_VERTEX, BMEditMesh::selectmode, BMLoop::v, and v.
Referenced by MESH_OT_decimate().
|
static |
Definition at line 5791 of file editmesh_tools.cc.
References col, uiLayout::column(), IFACE_, wmOperator::layout, uiLayout::prop(), wmOperator::ptr, RNA_boolean_get(), uiLayout::row(), UI_ITEM_NONE, UI_ITEM_R_EXPAND, and uiLayout::use_property_split_set().
Referenced by MESH_OT_decimate().
|
static |
Definition at line 6382 of file editmesh_tools.cc.
References BKE_editmesh_from_object(), BKE_view_layer_array_from_objects_in_edit_mode_unique_data(), BMEditMesh::bm, BM_EDGES_OF_MESH, BM_elem_flag_enable, BM_elem_flag_test, BM_ELEM_SELECT, BM_ELEM_TAG, BM_FACE, BM_ITER_MESH, BM_mesh_elem_hflag_disable_all(), BM_mesh_elem_hflag_enable_test(), C, CTX_data_scene(), CTX_data_view_layer(), CTX_wm_view3d(), e, EDBM_op_callf(), EDBM_selectmode_flush_ex(), EDBM_update(), EDBM_uvselect_clear(), BMLoop::f, M_PI, OPERATOR_FINISHED, params, wmOperator::ptr, BMLoop::radial_next, RNA_boolean_get(), SCE_SELECT_VERTEX, and BMesh::totedgesel.
Referenced by MESH_OT_delete_edgeloop().
|
static |
Definition at line 442 of file editmesh_tools.cc.
References BKE_editmesh_from_object(), BKE_view_layer_array_from_objects_in_edit_mode_unique_data(), BLI_assert, BMEditMesh::bm, BM_custom_loop_normals_from_vector_layer(), BM_custom_loop_normals_to_vector_layer(), BM_ELEM_SELECT, C, CTX_data_scene(), CTX_data_view_layer(), CTX_wm_view3d(), DEG_id_tag_update(), DEL_EDGES, DEL_EDGESFACES, DEL_FACES, DEL_ONLYFACES, DEL_VERTS, EDBM_flag_disable_all(), EDBM_op_callf(), EDBM_update(), ID_RECALC_SELECT, MESH_DELETE_EDGE, MESH_DELETE_EDGE_FACE, MESH_DELETE_FACE, MESH_DELETE_ONLY_FACE, MESH_DELETE_VERT, NC_GEOM, ND_SELECT, OPERATOR_CANCELLED, OPERATOR_FINISHED, params, wmOperator::ptr, RNA_enum_get(), BMesh::totedgesel, BMesh::totfacesel, BMesh::totvertsel, and WM_event_add_notifier().
Referenced by MESH_OT_delete().
|
static |
Definition at line 581 of file editmesh_tools.cc.
References BKE_editmesh_from_object(), BKE_view_layer_array_from_objects_in_edit_mode_unique_data(), bm, BMEditMesh::bm, BM_EDGE, BM_edge_is_wire(), BM_EDGES_OF_MESH, BM_elem_flag_set, BM_elem_flag_test, BM_ELEM_SELECT, BM_ELEM_TAG, BM_FACE, bm_face_is_loose(), BM_FACES_OF_MESH, BM_ITER_MESH, BM_mesh_delete_hflag_context(), BM_mesh_elem_hflag_disable_all(), BM_VERT, BM_VERTS_OF_MESH, C, CTX_data_scene(), CTX_data_view_layer(), CTX_wm_view3d(), DEL_EDGES, DEL_FACES, DEL_VERTS, e, EDBM_flag_disable_all(), EDBM_mesh_stats_multi(), edbm_report_delete_info(), EDBM_update(), OPERATOR_FINISHED, params, wmOperator::ptr, wmOperator::reports, RNA_boolean_get(), and v.
Referenced by MESH_OT_delete_loose().
|
static |
Definition at line 6303 of file editmesh_tools.cc.
References BKE_editmesh_from_object(), BKE_view_layer_array_from_objects_in_edit_mode_unique_data(), bm, BMEditMesh::bm, BM_ELEM_SELECT, C, CTX_data_scene(), CTX_data_view_layer(), CTX_wm_view3d(), EDBM_op_callf(), edbm_report_delete_info(), EDBM_select_flush_from_verts(), EDBM_update(), OPERATOR_FINISHED, params, wmOperator::ptr, wmOperator::reports, and RNA_float_get().
Referenced by MESH_OT_dissolve_degenerate().
|
static |
Definition at line 5974 of file editmesh_tools.cc.
References BKE_editmesh_from_object(), BKE_view_layer_array_from_objects_in_edit_mode_unique_data(), BMEditMesh::bm, BM_custom_loop_normals_from_vector_layer(), BM_custom_loop_normals_to_vector_layer(), BM_ELEM_SELECT, C, CTX_data_scene(), CTX_data_view_layer(), CTX_wm_view3d(), EDBM_op_callf(), EDBM_update(), OPERATOR_FINISHED, params, wmOperator::ptr, RNA_boolean_get(), RNA_float_get(), and BMesh::totedgesel.
Referenced by edbm_dissolve_mode_exec(), and MESH_OT_dissolve_edges().
|
static |
Definition at line 6042 of file editmesh_tools.cc.
References BKE_editmesh_from_object(), BKE_view_layer_array_from_objects_in_edit_mode_unique_data(), BMEditMesh::bm, BM_custom_loop_normals_from_vector_layer(), BM_custom_loop_normals_to_vector_layer(), BM_ELEM_SELECT, C, CTX_data_scene(), CTX_data_view_layer(), CTX_wm_view3d(), EDBM_op_call_and_selectf(), EDBM_update(), OPERATOR_FINISHED, params, wmOperator::ptr, RNA_boolean_get(), and BMesh::totfacesel.
Referenced by edbm_dissolve_mode_exec(), and MESH_OT_dissolve_faces().
|
static |
Definition at line 6180 of file editmesh_tools.cc.
References BKE_editmesh_from_object(), BKE_view_layer_array_from_objects_in_edit_mode_unique_data(), bm, BMEditMesh::bm, BM_custom_loop_normals_from_vector_layer(), BM_custom_loop_normals_to_vector_layer(), BM_EDGES_OF_MESH, BM_elem_flag_disable, BM_elem_flag_set, BM_elem_flag_test, BM_ELEM_SELECT, BM_ELEM_TAG, BM_FACES_OF_MESH, BM_ITER_ELEM, BM_ITER_MESH, BM_LOOPS_OF_FACE, BM_VERTS_OF_MESH, C, CTX_data_scene(), CTX_data_view_layer(), CTX_wm_view3d(), EDBM_op_call_and_selectf(), EDBM_update(), l, OPERATOR_FINISHED, params, wmOperator::ptr, RNA_boolean_get(), RNA_enum_get(), RNA_float_get(), SCE_SELECT_FACE, and BMEditMesh::selectmode.
Referenced by MESH_OT_dissolve_limited().
|
static |
Definition at line 6104 of file editmesh_tools.cc.
References BKE_editmesh_from_object(), C, CTX_data_edit_object(), edbm_dissolve_edges_exec(), edbm_dissolve_faces_exec(), edbm_dissolve_verts_exec(), wmOperator::ptr, RNA_property_boolean_set(), RNA_property_is_set(), RNA_struct_find_property(), SCE_SELECT_EDGE, SCE_SELECT_FACE, SCE_SELECT_VERTEX, and BMEditMesh::selectmode.
Referenced by MESH_OT_dissolve_mode().
|
static |
Definition at line 5889 of file editmesh_tools.cc.
References DEG2RADF, flag, ot, RNA_def_float_rotation(), RNA_def_property_flag(), and RNA_def_property_float_default().
Referenced by MESH_OT_dissolve_edges(), and MESH_OT_dissolve_mode().
|
static |
Definition at line 5881 of file editmesh_tools.cc.
References ot, and RNA_def_boolean().
Referenced by MESH_OT_dissolve_mode(), and MESH_OT_dissolve_verts().
|
static |
Definition at line 5873 of file editmesh_tools.cc.
References ot, and RNA_def_boolean().
Referenced by MESH_OT_dissolve_edges(), MESH_OT_dissolve_mode(), and MESH_OT_dissolve_verts().
|
static |
Definition at line 5859 of file editmesh_tools.cc.
References flag, ot, RNA_def_boolean(), and RNA_def_property_flag().
Referenced by MESH_OT_dissolve_edges(), MESH_OT_dissolve_faces(), and MESH_OT_dissolve_mode().
|
static |
Definition at line 5909 of file editmesh_tools.cc.
References BKE_editmesh_from_object(), BKE_view_layer_array_from_objects_in_edit_mode_unique_data(), BMEditMesh::bm, BM_custom_loop_normals_from_vector_layer(), BM_custom_loop_normals_to_vector_layer(), BM_ELEM_SELECT, C, CTX_data_scene(), CTX_data_view_layer(), CTX_wm_view3d(), EDBM_op_callf(), EDBM_update(), OPERATOR_FINISHED, params, wmOperator::ptr, RNA_boolean_get(), and BMesh::totvertsel.
Referenced by edbm_dissolve_mode_exec(), and MESH_OT_dissolve_verts().
|
static |
Definition at line 2812 of file editmesh_tools.cc.
References BKE_editmesh_from_object(), BKE_report(), BKE_view_layer_array_from_objects_in_edit_mode_unique_data(), BMEditMesh::bm, BM_ELEM_SELECT, C, CTX_data_scene(), CTX_data_view_layer(), CTX_wm_view3d(), EDBM_op_callf(), EDBM_update(), EDBM_verts_mirror_apply(), EDBM_verts_mirror_cache_begin(), EDBM_verts_mirror_cache_end(), Mesh::editflag, i, ME_EDIT_MIRROR_TOPO, ME_SYMMETRY_X, OPERATOR_CANCELLED, OPERATOR_FINISHED, params, wmOperator::ptr, wmOperator::reports, RNA_boolean_get(), RNA_float_get(), RNA_int_get(), RPT_WARNING, blender::ed::object::shape_key_report_if_locked(), and BMesh::totvertsel.
Referenced by MESH_OT_vertices_smooth_laplacian().
|
static |
Definition at line 2669 of file editmesh_tools.cc.
References BKE_editmesh_from_object(), BKE_report(), BKE_view_layer_array_from_objects_in_edit_mode_unique_data(), BMEditMesh::bm, BM_ELEM_SELECT, C, CTX_data_scene(), CTX_data_view_layer(), CTX_wm_view3d(), EDBM_op_callf(), EDBM_update(), EDBM_verts_mirror_apply(), EDBM_verts_mirror_cache_begin(), EDBM_verts_mirror_cache_end(), Mesh::editflag, eModifierMode_Realtime, eModifierType_Mirror, MirrorModifierData::flag, i, LISTBASE_FOREACH, ME_EDIT_MIRROR_TOPO, ME_SYMMETRY_X, MOD_MIR_AXIS_X, MOD_MIR_AXIS_Y, MOD_MIR_AXIS_Z, MOD_MIR_CLIPPING, OPERATOR_CANCELLED, OPERATOR_FINISHED, params, wmOperator::ptr, wmOperator::reports, RNA_boolean_get(), RNA_float_get(), RNA_int_get(), RPT_WARNING, blender::ed::object::shape_key_report_if_locked(), MirrorModifierData::tolerance, and BMesh::totvertsel.
Referenced by MESH_OT_vertices_smooth().
|
static |
Definition at line 2010 of file editmesh_tools.cc.
References BKE_editmesh_from_object(), BKE_view_layer_array_from_objects_in_edit_mode_unique_data(), bm, BMEditMesh::bm, BM_ALL_NOLOOP, BM_ELEM_SELECT, BM_SELECT_HISTORY_BACKUP, BM_SELECT_HISTORY_RESTORE, BMO_op_exec(), BMO_slot_buffer_hflag_enable(), C, CTX_data_scene(), CTX_data_view_layer(), CTX_wm_view3d(), EDBM_flag_disable_all(), EDBM_op_finish(), EDBM_op_init(), EDBM_update(), OPERATOR_CANCELLED, OPERATOR_FINISHED, params, BMOperator::slots_out, and BMesh::totvertsel.
Referenced by edbm_duplicate_invoke(), and MESH_OT_duplicate().
|
static |
Definition at line 2062 of file editmesh_tools.cc.
References C, edbm_duplicate_exec(), and WM_cursor_wait().
Referenced by MESH_OT_duplicate().
|
static |
Rotate the edges between selected faces, otherwise rotate the selected edges.
Definition at line 2341 of file editmesh_tools.cc.
References BKE_editmesh_from_object(), BKE_report(), BKE_reportf(), BKE_view_layer_array_from_objects_in_edit_mode_unique_data(), BMEditMesh::bm, BM_EDGE, BM_edge_face_pair(), BM_EDGES_OF_MESH, BM_elem_flag_disable, BM_elem_flag_enable, BM_elem_flag_test, BM_ELEM_HIDDEN, BM_ELEM_SELECT, BM_ELEM_TAG, BM_ITER_MESH, BM_mesh_elem_hflag_enable_test(), BMO_op_exec(), BMO_slot_buffer_hflag_disable(), BMO_slot_buffer_hflag_enable(), BMO_slot_buffer_len(), C, CTX_data_scene(), CTX_data_view_layer(), CTX_wm_view3d(), EDBM_op_finish(), EDBM_op_init(), EDBM_selectmode_flush(), EDBM_update(), fb(), OPERATOR_CANCELLED, OPERATOR_FINISHED, params, wmOperator::ptr, wmOperator::reports, RNA_boolean_get(), RPT_ERROR, RPT_WARNING, BMOperator::slots_in, BMOperator::slots_out, and BMesh::totedgesel.
Referenced by MESH_OT_edge_rotate().
|
static |
Definition at line 1945 of file editmesh_tools.cc.
References BKE_editmesh_from_object(), BKE_view_layer_array_from_objects_in_edit_mode_unique_data(), BLI_assert, BM_EDGE, BM_VERT, C, CTX_data_scene(), CTX_data_view_layer(), CTX_wm_view3d(), edbm_edge_split_selected_edges(), edbm_edge_split_selected_verts(), OPERATOR_FINISHED, wmOperator::ptr, and RNA_enum_get().
Referenced by MESH_OT_edge_split().
|
static |
Definition at line 1843 of file editmesh_tools.cc.
References bm, BMEditMesh::bm, BM_custom_loop_normals_from_vector_layer(), BM_custom_loop_normals_to_vector_layer(), BM_ELEM_SELECT, Object::data, EDBM_op_call_and_selectf(), EDBM_select_flush_from_verts(), EDBM_update(), and params.
Referenced by edbm_edge_split_exec().
|
static |
Definition at line 1870 of file editmesh_tools.cc.
References bm, BMEditMesh::bm, BM_custom_loop_normals_from_vector_layer(), BM_custom_loop_normals_to_vector_layer(), BM_DISK_EDGE_NEXT, BM_EDGES_OF_MESH, BM_elem_flag_disable, BM_elem_flag_enable, BM_elem_flag_set, BM_elem_flag_test, BM_ELEM_HIDDEN, BM_ELEM_SELECT, BM_ELEM_TAG, BM_ITER_MESH, BM_vert_select_set(), BM_vert_separate(), Object::data, EDBM_op_callf(), EDBM_select_flush_from_verts(), EDBM_update(), i, BMEdge::l, params, BMLoop::radial_next, BMLoop::v, v, BMEdge::v1, and BMEdge::v2.
Referenced by edbm_edge_split_exec().
|
static |
Definition at line 1777 of file editmesh_tools.cc.
References BKE_editmesh_from_object(), BKE_view_layer_array_from_objects_in_edit_mode_unique_data(), BMEditMesh::bm, BM_ELEM_SELECT, C, CTX_data_scene(), CTX_data_view_layer(), CTX_wm_view3d(), EDBM_op_callf(), EDBM_update(), OPERATOR_CANCELLED, OPERATOR_FINISHED, params, wmOperator::ptr, wmOperator::reports, RNA_float_get(), RNA_int_get(), blender::ed::object::shape_key_report_if_locked(), and BMesh::totfacesel.
Referenced by MESH_OT_face_make_planar().
|
static |
Definition at line 3006 of file editmesh_tools.cc.
References BKE_editmesh_from_object(), BKE_view_layer_array_from_objects_in_edit_mode_unique_data(), BMEditMesh::bm, C, CTX_data_scene(), CTX_data_view_layer(), CTX_wm_view3d(), EDBM_update(), mesh_set_smooth_faces(), OPERATOR_FINISHED, params, and BMesh::totfacesel.
Referenced by MESH_OT_faces_shade_flat().
|
static |
Definition at line 2961 of file editmesh_tools.cc.
References BKE_editmesh_from_object(), BKE_view_layer_array_from_objects_in_edit_mode_unique_data(), BMEditMesh::bm, C, CTX_data_scene(), CTX_data_view_layer(), CTX_wm_view3d(), EDBM_update(), mesh_set_smooth_faces(), OPERATOR_FINISHED, params, and BMesh::totfacesel.
Referenced by MESH_OT_faces_shade_smooth().
|
static |
Definition at line 4568 of file editmesh_tools.cc.
References BKE_editmesh_from_object(), BKE_report(), BKE_view_layer_array_from_objects_in_edit_mode_unique_data(), BMEditMesh::bm, BM_EDGE, BM_ELEM_SELECT, BM_FACE, BMO_op_exec(), BMO_slot_buffer_hflag_enable(), C, CTX_data_scene(), CTX_data_view_layer(), CTX_wm_view3d(), EDBM_op_finish(), EDBM_op_init(), EDBM_update(), OPERATOR_CANCELLED, OPERATOR_FINISHED, params, wmOperator::ptr, wmOperator::reports, RNA_boolean_get(), RPT_ERROR, RPT_WARNING, BMOperator::slots_out, BMesh::totedgesel, and BMesh::totface.
Referenced by MESH_OT_fill().
|
static |
Definition at line 4957 of file editmesh_tools.cc.
References BKE_editmesh_from_object(), BKE_view_layer_array_from_objects_in_edit_mode_unique_data(), BLI_assert, BMEditMesh::bm, BM_ELEM_SELECT, BM_ELEM_TAG, C, CTX_data_scene(), CTX_data_view_layer(), CTX_wm_view3d(), Object::data, DEG_id_tag_update(), edbm_add_edge_face__smooth_get(), edbm_fill_grid_prepare(), edbm_fill_grid_split_join_finish(), edbm_fill_grid_split_join_init(), EDBM_op_call_and_selectf(), EDBM_update(), wmOperator::flag, Object::id, BMEditMesh::mat_nr, OP_IS_INVOKE, OP_IS_REPEAT_LAST, OPERATOR_FINISHED, params, wmOperator::ptr, RNA_boolean_get(), RNA_property_int_get(), RNA_property_int_set(), RNA_property_is_set(), RNA_struct_find_property(), blender::Vector< T, InlineBufferCapacity, Allocator >::size(), BMesh::totedge, BMesh::totedgesel, BMesh::totface, BMesh::totfacesel, and UNUSED_VARS_NDEBUG.
Referenced by MESH_OT_fill_grid().
|
static |
non-essential utility function to select 2 open edge loops from a closed loop.
Definition at line 4680 of file editmesh_tools.cc.
References angle(), BLI_findindex(), BLI_findlink(), BLI_findptr(), BLI_listbase_rotate_first(), BLI_sortutil_cmp_float_reverse(), bm, bm_edge_test_fill_grid_cb(), BM_edgeloop_edges_get(), BM_edgeloop_is_closed(), BM_edgeloop_length_get(), BM_edgeloop_verts_get(), BM_EDGES_OF_MESH, BM_elem_flag_disable, BM_elem_flag_enable, BM_ELEM_TAG, BM_ITER_MESH, BM_mesh_active_vert_get(), BM_mesh_edgeloops_find(), BM_mesh_edgeloops_free(), count, data, LinkData::data, SortPtrByFloat::data, e, edbm_fill_grid_vert_tag_angle(), ELEM, ListBase::first, i, LISTBASE_FOREACH, MEM_freeN(), MEM_malloc_arrayN(), min_ii(), mod_i(), LinkData::next, offsetof, SortPtrByFloat::sort_value, v, and verts.
Referenced by edbm_fill_grid_exec().
|
static |
Restore the mesh after split and fill_grid.
| em | The editmesh to work on |
| op | the wmOperator being run |
| split_join | the saved split join state. |
| changed | true, if the fill_grid that was run worked. |
Definition at line 4920 of file editmesh_tools.cc.
References BMEditMesh::bm, BM_ALL_NOLOOP, BM_ELEM_SELECT, BM_loop_normal_editdata_array_free(), BMO_op_exec(), BMO_op_finish(), BMO_slot_buffer_hflag_enable(), FillGridSplitJoin::delete_op, EDBM_op_callf(), flip_custom_normals(), flip_custom_normals_init_data(), MEM_freeN(), BMOperator::slots_in, and FillGridSplitJoin::weld_op.
Referenced by edbm_fill_grid_exec().
|
static |
Split the current selection into a separate island and prepare to rejoin it.
This is done only when there are faces selected. Once split this way, fill_grid will interpolate using only the data from the selected faces, not the data from the surrounding faces. This matters for UV edges and face corner colors - the data from the faces being replaced is the right data to use for the interpolation. This relies on the fact that the "exterior" edge of an island is topologically the same as the "interior" edge around a hole.
| em | The edit-mesh to operate on. |
Definition at line 4846 of file editmesh_tools.cc.
References BLI_assert, BMEditMesh::bm, BM_EDGE, BM_elem_flag_disable, BM_elem_flag_enable, BM_elem_flag_test, BM_ELEM_SELECT, BM_FACE, BM_VERT, BMO_ITER, BMO_iter_map_value_ptr(), BMO_op_exec(), BMO_op_finish(), BMO_op_init(), BMO_slot_buffer_from_enabled_hflag(), BMO_slot_buffer_hflag_enable(), BMO_slot_get(), BMO_slot_int_set(), BMO_slot_map_elem_insert(), DEL_FACES, FillGridSplitJoin::delete_op, e, MEM_callocN(), BMOperator::slots_in, BMOperator::slots_out, BMEdge::v1, BMEdge::v2, and FillGridSplitJoin::weld_op.
Referenced by edbm_fill_grid_exec().
Definition at line 4661 of file editmesh_tools.cc.
References angle_v3v3v3(), BLI_assert, BM_edge_other_vert(), BM_EDGES_OF_VERT, BM_elem_flag_test, BM_ELEM_TAG, BM_ITER_ELEM, BMVert::co, fabsf, i, M_PI, and v.
Referenced by edbm_fill_grid_prepare().
|
static |
Definition at line 5099 of file editmesh_tools.cc.
References BKE_editmesh_from_object(), BKE_view_layer_array_from_objects_in_edit_mode_unique_data(), BMEditMesh::bm, BM_ELEM_SELECT, C, CTX_data_scene(), CTX_data_view_layer(), CTX_wm_view3d(), EDBM_op_call_and_selectf(), EDBM_update(), OPERATOR_FINISHED, params, wmOperator::ptr, RNA_int_get(), and BMesh::totedgesel.
Referenced by MESH_OT_fill_holes().
|
static |
Definition at line 2201 of file editmesh_tools.cc.
References BKE_lnor_space_custom_normal_to_data(), bm, BMEditMesh::bm, BM_lnorspace_update(), BM_loop_normal_editdata_array_free(), BM_loop_normal_editdata_array_init(), CD_PROP_INT16_2D, BMLoopNorEditData::clnors_data, CustomData_has_layer_named(), Object::data, EDBM_update(), i, BMesh::ldata, BMLoopNorEditDataArray::lnor_editdata, BMLoopNorEditData::loop_index, negate_v3(), BMLoopNorEditData::nloc, params, and BMLoopNorEditDataArray::totloop.
Referenced by edbm_flip_normals_exec().
|
static |
Definition at line 2282 of file editmesh_tools.cc.
References BKE_editmesh_from_object(), BKE_view_layer_array_from_objects_in_edit_mode_unique_data(), BMEditMesh::bm, C, CTX_data_scene(), CTX_data_view_layer(), CTX_wm_view3d(), edbm_flip_normals_custom_loop_normals(), edbm_flip_normals_face_winding(), OPERATOR_FINISHED, wmOperator::ptr, RNA_boolean_get(), BMesh::totedgesel, BMesh::totfacesel, and BMesh::totvertsel.
Referenced by MESH_OT_flip_normals().
|
static |
Definition at line 2239 of file editmesh_tools.cc.
References BMEditMesh::bm, BM_ELEM_SELECT, BM_loop_normal_editdata_array_free(), Object::data, EDBM_op_callf(), EDBM_update(), flip_custom_normals(), flip_custom_normals_init_data(), and params.
Referenced by edbm_flip_normals_exec().
|
static |
Definition at line 2228 of file editmesh_tools.cc.
References BM_ELEM_SELECT, Object::data, EDBM_op_callf(), EDBM_update(), and params.
Referenced by edbm_flip_quad_tessellation_exec().
|
static |
Definition at line 2264 of file editmesh_tools.cc.
References BKE_editmesh_from_object(), BKE_view_layer_array_from_objects_in_edit_mode_unique_data(), BMEditMesh::bm, C, CTX_data_scene(), CTX_data_view_layer(), CTX_wm_view3d(), edbm_flip_quad_tessellation(), OPERATOR_FINISHED, and BMesh::totfacesel.
Referenced by MESH_OT_flip_quad_tessellation().
|
static |
Definition at line 2470 of file editmesh_tools.cc.
References BKE_editmesh_from_object(), BKE_view_layer_array_from_objects_in_edit_mode_unique_data(), bm, BMEditMesh::bm, C, CTX_data_scene(), CTX_data_view_layer(), CTX_wm_view3d(), EDBM_mesh_hide(), EDBM_select_mirrored_extend_all(), EDBM_update(), OPERATOR_CANCELLED, OPERATOR_FINISHED, params, wmOperator::ptr, RNA_boolean_get(), SCE_SELECT_EDGE, SCE_SELECT_FACE, SCE_SELECT_VERTEX, and BMEditMesh::selectmode.
Referenced by MESH_OT_hide().
|
static |
Definition at line 1030 of file editmesh_tools.cc.
References BKE_editmesh_from_object(), BKE_view_layer_array_from_objects_in_edit_mode_unique_data(), bm, BMEditMesh::bm, BM_EDGES_OF_MESH, BM_elem_flag_disable, BM_elem_flag_enable, BM_elem_flag_test, BM_ELEM_HIDDEN, BM_ELEM_SEAM, BM_ELEM_SELECT, BM_ITER_MESH, C, clear(), CTX_data_scene(), CTX_data_view_layer(), CTX_wm_view3d(), ED_uvedit_live_unwrap(), EDBM_update(), OPERATOR_FINISHED, params, wmOperator::ptr, and RNA_boolean_get().
Referenced by MESH_OT_mark_seam().
|
static |
Definition at line 1108 of file editmesh_tools.cc.
References BKE_editmesh_from_object(), BKE_view_layer_array_from_objects_in_edit_mode_unique_data(), bm, BMEditMesh::bm, BM_EDGES_OF_MESH, BM_elem_flag_set, BM_elem_flag_test, BM_ELEM_SELECT, BM_ELEM_SMOOTH, BM_ITER_MESH, C, clear(), CTX_data_scene(), CTX_data_view_layer(), CTX_wm_view3d(), EDBM_update(), OPERATOR_FINISHED, params, wmOperator::ptr, RNA_boolean_get(), BMEdge::v1, and BMEdge::v2.
Referenced by MESH_OT_mark_sharp().
|
static |
Definition at line 3413 of file editmesh_tools.cc.
References BKE_editmesh_from_object(), BKE_view_layer_array_from_objects_in_edit_mode_unique_data(), BLI_assert, BMEditMesh::bm, BM_custom_loop_normals_from_vector_layer(), BM_custom_loop_normals_to_vector_layer(), BM_ELEM_SELECT, C, CTX_data_scene(), CTX_data_view_layer(), CTX_wm_view3d(), EDBM_flag_disable_all(), EDBM_op_callf(), EDBM_update(), ELEM, merge_firstlast(), merge_target(), MESH_MERGE_CENTER, MESH_MERGE_COLLAPSE, MESH_MERGE_CURSOR, MESH_MERGE_FIRST, MESH_MERGE_LAST, OPERATOR_FINISHED, params, wmOperator::ptr, RNA_boolean_get(), RNA_enum_get(), SCE_SELECT_VERTEX, BMEditMesh::selectmode, and BMesh::totvertsel.
Referenced by MESH_OT_merge().
|
static |
Definition at line 8994 of file editmesh_tools.cc.
References C, and normals_split_merge().
Referenced by MESH_OT_merge_normals().
|
static |
Definition at line 9772 of file editmesh_tools.cc.
References BKE_editmesh_from_object(), BKE_view_layer_array_from_objects_in_edit_mode_unique_data(), bm, BMEditMesh::bm, BM_data_layer_add_named(), BM_ELEM_CD_GET_VOID_P, BM_elem_flag_test, BM_ELEM_SELECT, BM_FACE, BM_face_select_set(), BM_FACES_OF_MESH, BM_ITER_MESH, BM_mesh_elem_index_ensure(), BM_select_history_clear(), BM_select_history_store, C, CD_PROP_INT32, CTX_data_scene(), CTX_data_view_layer(), CTX_wm_view3d(), CustomData_get_layer_index(), CustomData_get_n_offset(), CustomData_get_named_layer_index(), EDBM_update(), MOD_WEIGHTEDNORMALS_FACEWEIGHT_CDLAYER_ID, OPERATOR_FINISHED, params, wmOperator::ptr, RNA_boolean_get(), and RNA_enum_get().
Referenced by MESH_OT_mod_weighted_strength().
|
static |
Definition at line 2602 of file editmesh_tools.cc.
References BKE_editmesh_from_object(), BKE_view_layer_array_from_objects_in_edit_mode_unique_data(), BMEditMesh::bm, BM_ELEM_SELECT, BM_loop_normal_editdata_array_free(), C, CTX_data_scene(), CTX_data_view_layer(), CTX_wm_view3d(), EDBM_op_callf(), EDBM_update(), flip_custom_normals(), flip_custom_normals_init_data(), OPERATOR_FINISHED, params, wmOperator::ptr, RNA_boolean_get(), and BMesh::totfacesel.
Referenced by MESH_OT_normals_make_consistent().
|
static |
Definition at line 9321 of file editmesh_tools.cc.
References absolute(), add_v3_v3(), BKE_editmesh_from_object(), BKE_editmesh_lnorspace_update(), BKE_lnor_space_custom_normal_to_data(), BKE_report(), BKE_view_layer_array_from_objects_in_edit_mode_unique_data(), BLI_assert, bm, BMEditMesh::bm, BM_elem_flag_test, BM_ELEM_SELECT, BM_FACES_OF_MESH, BM_ITER_MESH, BM_loop_normal_editdata_array_free(), BM_loop_normal_editdata_array_init(), C, BMLoopNorEditData::clnors_data, CLNORS_VALID_VEC_LEN, compare_v3v3(), copy_v3_v3(), CTX_data_scene(), CTX_data_view_layer(), CTX_wm_view3d(), EDBM_CLNOR_TOOLS_ADD, EDBM_CLNOR_TOOLS_COPY, EDBM_CLNOR_TOOLS_MULTIPLY, EDBM_CLNOR_TOOLS_PASTE, EDBM_CLNOR_TOOLS_RESET, EDBM_update(), i, BMLoopNorEditDataArray::lnor_editdata, BMLoopNorEditData::loc, BMLoopNorEditData::loop_index, mul_v3_v3(), negate_v3(), BMLoopNorEditData::niloc, BMLoopNorEditData::nloc, BMFace::no, ToolSettings::normal_vector, normalize_v3(), OPERATOR_FINISHED, params, wmOperator::ptr, wmOperator::reports, RNA_boolean_get(), RNA_enum_get(), RPT_ERROR, Scene::toolsettings, BMLoopNorEditDataArray::totloop, and zero_v3().
Referenced by MESH_OT_normals_tools().
|
static |
Definition at line 9486 of file editmesh_tools.cc.
References C, CTX_wm_manager(), wmWindowManager::id, wmOperator::layout, normals_tools_draw_check_prop(), wmOperator::properties, ptr, RNA_pointer_create_discrete(), wmOperatorType::srna, wmOperator::type, UI_BUT_LABEL_ALIGN_NONE, and uiDefAutoButsRNA().
Referenced by MESH_OT_normals_tools().
|
static |
If in face-only select mode, switch to edge select mode so that an edge-only selection is not inconsistent state.
We need to run this for all objects, even when nothing is selected. This way we keep them in sync.
Definition at line 7566 of file editmesh_tools.cc.
References BKE_editmesh_from_object(), BKE_view_layer_array_from_bases_in_edit_mode_unique_data(), BMEditMesh::bm, BM_EDGE, BM_ELEM_SELECT, BM_FACE, BM_mesh_elem_hflag_disable_all(), BM_VERT, BMO_op_exec(), BMO_slot_buffer_hflag_enable(), C, CTX_data_scene(), CTX_data_view_layer(), CTX_wm_view3d(), Object::data, EDBM_op_finish(), EDBM_op_init(), EDBM_selectmode_disable_multi_ex(), EDBM_update(), OPERATOR_CANCELLED, OPERATOR_FINISHED, params, wmOperator::ptr, RNA_boolean_get(), SCE_SELECT_EDGE, SCE_SELECT_FACE, ToolSettings::selectmode, BMOperator::slots_out, Scene::toolsettings, and BMesh::totedgesel.
Referenced by MESH_OT_offset_edge_loops().
|
static |
Definition at line 8700 of file editmesh_tools.cc.
References C, CTX_data_edit_object(), Object::data, EDBM_update(), OPERATOR_CANCELLED, OPERATOR_FINISHED, params, point_normals_apply(), point_normals_cancel(), point_normals_init(), wmOperator::ptr, and RNA_float_get_array().
Referenced by MESH_OT_point_normals().
|
static |
Definition at line 8682 of file editmesh_tools.cc.
References C, wmOperator::flag, OP_IS_MODAL_GRAB_CURSOR, OPERATOR_CANCELLED, OPERATOR_RUNNING_MODAL, point_normals_cancel(), point_normals_init(), point_normals_update_statusbar(), and WM_event_add_modal_handler().
Referenced by MESH_OT_point_normals().
|
static |
Definition at line 8467 of file editmesh_tools.cc.
References add_v3_v3(), BKE_editmesh_from_object(), BKE_report(), bm, BMEditMesh::bm, BM_elem_flag_test, BM_ELEM_SELECT, BM_ITER_MESH, BM_VERTS_OF_MESH, bmesh_selected_verts_center_calc(), C, blender::ed::object::calc_active_center_for_editmode(), copy_v3_v3(), CTX_data_edit_object(), CTX_data_scene(), CTX_wm_region(), CTX_wm_view3d(), Scene::cursor, Object::data, ED_view3d_cursor3d_update(), ED_view3d_win_to_3d_int(), EDBM_CLNOR_MODAL_CANCEL, EDBM_CLNOR_MODAL_CONFIRM, EDBM_CLNOR_MODAL_POINTTO_ALIGN, EDBM_CLNOR_MODAL_POINTTO_INVERT, EDBM_CLNOR_MODAL_POINTTO_RESET, EDBM_CLNOR_MODAL_POINTTO_SET_USE_3DCURSOR, EDBM_CLNOR_MODAL_POINTTO_SET_USE_SELECTED, EDBM_CLNOR_MODAL_POINTTO_SPHERIZE, EDBM_CLNOR_MODAL_POINTTO_USE_MOUSE, EDBM_CLNOR_MODAL_POINTTO_USE_OBJECT, EDBM_CLNOR_MODAL_POINTTO_USE_PIVOT, EDBM_CLNOR_POINTTO_MODE_COORDINATES, EDBM_CLNOR_POINTTO_MODE_MOUSE, EDBM_select_pick(), EDBM_update(), ELEM, EVT_MODAL_MAP, i, ISMOUSE_MOTION, Object::loc, View3DCursor::location, max, mid_v3_v3v3(), min, minmax_v3v3_v3(), MOUSEMOVE, wmEvent::mval, OPERATOR_CANCELLED, OPERATOR_FINISHED, OPERATOR_PASS_THROUGH, OPERATOR_RUNNING_MODAL, params, point_normals_apply(), point_normals_cancel(), point_normals_ensure(), point_normals_free(), point_normals_update_statusbar(), wmOperator::ptr, wmOperator::reports, ret, RNA_enum_get(), RNA_enum_set(), RNA_property_boolean_get(), RNA_property_boolean_set(), RNA_property_float_get_array(), RNA_property_float_set_array(), RNA_struct_find_property(), RPT_WARNING, SEL_OP_SET, Scene::toolsettings, ToolSettings::transform_pivot_point, wmEvent::type, wmOperator::type, v, V3D_AROUND_ACTIVE, V3D_AROUND_CENTER_BOUNDS, V3D_AROUND_CENTER_MEDIAN, V3D_AROUND_CURSOR, V3D_CURSOR_ORIENT_NONE, wmEvent::val, view3d_operator_needs_gpu(), WM_operator_poll(), and zero_v3().
Referenced by MESH_OT_point_normals().
|
static |
Definition at line 8740 of file editmesh_tools.cc.
References C, CTX_wm_manager(), wmWindowManager::id, wmOperator::layout, point_normals_draw_check_prop(), wmOperator::properties, ptr, RNA_pointer_create_discrete(), wmOperatorType::srna, wmOperator::type, UI_BUT_LABEL_ALIGN_NONE, uiDefAutoButsRNA(), and uiLayout::use_property_split_set().
Referenced by MESH_OT_point_normals().
|
static |
Definition at line 5248 of file editmesh_tools.cc.
References BKE_editmesh_from_object(), BKE_view_layer_array_from_objects_in_edit_mode_unique_data(), BMEditMesh::bm, BM_ELEM_SELECT, BM_FACE, BM_VERT, BMO_op_exec(), BMO_slot_buffer_hflag_enable(), C, CTX_data_scene(), CTX_data_view_layer(), CTX_wm_view3d(), EDBM_flag_disable_all(), EDBM_op_finish(), EDBM_op_init(), EDBM_update(), OPERATOR_FINISHED, params, wmOperator::ptr, RNA_boolean_get(), RNA_enum_get(), RNA_float_get(), BMOperator::slots_out, and BMesh::totfacesel.
Referenced by MESH_OT_poke().
|
static |
Definition at line 5343 of file editmesh_tools.cc.
References BKE_editmesh_from_object(), BKE_view_layer_array_from_objects_in_edit_mode_unique_data(), BMEditMesh::bm, BM_custom_loop_normals_from_vector_layer(), BM_custom_loop_normals_to_vector_layer(), BM_ELEM_SELECT, BM_FACE, BM_face_kill(), BMO_ITER, BMO_op_exec(), BMO_slot_buffer_hflag_enable(), C, CTX_data_scene(), CTX_data_view_layer(), CTX_wm_view3d(), EDBM_op_finish(), EDBM_op_init(), EDBM_selectmode_flush(), EDBM_update(), OPERATOR_FINISHED, params, wmOperator::ptr, RNA_enum_get(), BMOperator::slots_out, and BMesh::totfacesel.
Referenced by MESH_OT_quads_convert_to_tris().
|
static |
Definition at line 3573 of file editmesh_tools.cc.
References BKE_editmesh_from_object(), BKE_reportf(), BKE_view_layer_array_from_objects_in_edit_mode_unique_data(), BMEditMesh::bm, BM_custom_loop_normals_from_vector_layer(), BM_custom_loop_normals_to_vector_layer(), BM_EDGE, BM_ELEM_SELECT, BM_ELEM_TAG, BM_FACE, BM_mesh_elem_hflag_enable_test(), BM_VERT, BMO_op_exec(), BMO_op_finish(), C, count, CTX_data_scene(), CTX_data_view_layer(), CTX_wm_view3d(), EDBM_automerge(), EDBM_op_callf(), EDBM_op_finish(), EDBM_op_init(), EDBM_selectmode_flush(), EDBM_update(), OPERATOR_FINISHED, params, wmOperator::ptr, wmOperator::reports, RNA_boolean_get(), RNA_float_get(), RPT_, RPT_INFO, SCE_SELECT_EDGE, SCE_SELECT_VERTEX, BMEditMesh::selectmode, BMesh::totvert, and BMesh::totvertsel.
Referenced by MESH_OT_remove_doubles().
|
static |
Definition at line 430 of file editmesh_tools.cc.
References BKE_reportf(), and RPT_INFO.
Referenced by edbm_delete_loose_exec(), and edbm_dissolve_degenerate_exec().
|
static |
Definition at line 2556 of file editmesh_tools.cc.
References BKE_editmesh_from_object(), BKE_view_layer_array_from_objects_in_edit_mode_unique_data(), C, CTX_data_scene(), CTX_data_view_layer(), CTX_wm_view3d(), EDBM_mesh_reveal(), EDBM_update(), OPERATOR_FINISHED, params, wmOperator::ptr, RNA_boolean_get(), and select.
Referenced by MESH_OT_reveal().
|
static |
Definition at line 3173 of file editmesh_tools.cc.
References Mesh::active_color_attribute, ATTR_DOMAIN_MASK_CORNER, BKE_attribute_search(), BKE_attribute_to_index(), BKE_editmesh_from_object(), BKE_object_get_original_mesh(), BKE_view_layer_array_from_objects_in_edit_mode_unique_data(), BMEditMesh::bm, BM_ELEM_SELECT, BMO_op_exec(), C, CD_MASK_COLOR_ALL, CTX_data_scene(), CTX_data_view_layer(), CTX_wm_view3d(), EDBM_op_finish(), EDBM_op_init(), EDBM_update(), AttributeOwner::from_id(), Mesh::id, OPERATOR_FINISHED, params, and BMesh::totfacesel.
Referenced by MESH_OT_colors_reverse().
|
static |
Definition at line 3087 of file editmesh_tools.cc.
References BKE_editmesh_from_object(), BKE_view_layer_array_from_objects_in_edit_mode_unique_data(), BMEditMesh::bm, BM_ELEM_SELECT, BMO_op_exec(), C, CTX_data_scene(), CTX_data_view_layer(), CTX_wm_view3d(), EDBM_op_finish(), EDBM_op_init(), EDBM_update(), OPERATOR_FINISHED, params, and BMesh::totfacesel.
Referenced by MESH_OT_uvs_reverse().
|
static |
Definition at line 3119 of file editmesh_tools.cc.
References Mesh::active_color_attribute, ATTR_DOMAIN_MASK_CORNER, BKE_attribute_search(), BKE_attribute_to_index(), BKE_editmesh_from_object(), BKE_object_get_original_mesh(), BKE_view_layer_array_from_objects_in_edit_mode_unique_data(), BMEditMesh::bm, BM_ELEM_SELECT, BMO_op_exec(), C, CD_MASK_COLOR_ALL, CTX_data_scene(), CTX_data_view_layer(), CTX_wm_view3d(), Object::data, EDBM_op_finish(), EDBM_op_init(), EDBM_update(), AttributeOwner::from_id(), Mesh::id, OPERATOR_FINISHED, params, wmOperator::ptr, RNA_boolean_get(), blender::Vector< T, InlineBufferCapacity, Allocator >::size(), and BMesh::totfacesel.
Referenced by MESH_OT_colors_rotate().
|
static |
Definition at line 3051 of file editmesh_tools.cc.
References BKE_editmesh_from_object(), BKE_view_layer_array_from_objects_in_edit_mode_unique_data(), BMEditMesh::bm, BM_ELEM_SELECT, BMO_op_exec(), C, CTX_data_scene(), CTX_data_view_layer(), CTX_wm_view3d(), EDBM_op_finish(), EDBM_op_init(), EDBM_update(), OPERATOR_FINISHED, params, wmOperator::ptr, RNA_boolean_get(), and BMesh::totfacesel.
Referenced by MESH_OT_uvs_rotate().
|
static |
Definition at line 4418 of file editmesh_tools.cc.
References BKE_editmesh_from_object(), BKE_id_is_editable(), BKE_report(), BKE_view_layer_array_from_bases_in_edit_mode_unique_data(), BLI_assert, BMEditMesh::bm, bm_mesh_allocsize_default, BM_mesh_bm_from_me(), BM_mesh_bm_to_me(), BM_mesh_create(), BM_mesh_free(), C, BMeshToMeshParams::calc_object_remap, CTX_DATA_BEGIN, CTX_DATA_END, CTX_data_main(), CTX_data_scene(), CTX_data_view_layer(), CTX_wm_view3d(), Object::data, DEG_id_tag_update(), DEG_relations_tag_update(), ED_operator_editmesh(), ED_outliner_select_sync_from_object_tag(), EDBM_update(), Mesh::id, ID_RECALC_GEOMETRY_ALL_MODES, blender::Vector< T, InlineBufferCapacity, Allocator >::index_range(), MESH_SEPARATE_LOOSE, mesh_separate_loose(), MESH_SEPARATE_MATERIAL, mesh_separate_material(), MESH_SEPARATE_SELECTED, mesh_separate_selected(), NC_GEOM, NC_OBJECT, ND_DATA, ND_DRAW, OB_MESH, Base::object, OPERATOR_CANCELLED, OPERATOR_FINISHED, params, wmOperator::ptr, wmOperator::reports, RNA_enum_get(), RPT_ERROR, blender::Vector< T, InlineBufferCapacity, Allocator >::size(), BMesh::totedgesel, BMesh::totfacesel, BMesh::totvertsel, Object::type, BMeshCreateParams::use_toolflags, and WM_event_add_notifier().
Referenced by MESH_OT_separate().
|
static |
Definition at line 9539 of file editmesh_tools.cc.
References BKE_editmesh_from_object(), BKE_editmesh_lnorspace_update(), BKE_lnor_space_custom_normal_to_data(), BKE_view_layer_array_from_objects_in_edit_mode_unique_data(), BLI_BITMAP_ENABLE, BLI_BITMAP_NEW, BLI_BITMAP_TEST, bm, BMEditMesh::bm, BM_EDGES_OF_FACE, BM_ELEM_CD_GET_VOID_P, BM_elem_flag_test, BM_elem_index_get, BM_ELEM_SELECT, BM_ELEM_SMOOTH, BM_face_vert_share_loop(), BM_FACES_OF_MESH, BM_ITER_ELEM, BM_ITER_MESH, BM_ITER_MESH_INDEX, BM_LOOPS_OF_VERT, BM_vert_calc_normal_ex(), BM_VERTS_OF_EDGE, BM_VERTS_OF_MESH, C, CD_PROP_INT16_2D, CTX_data_scene(), CTX_data_view_layer(), CTX_wm_view3d(), CustomData_get_offset_named(), e, EDBM_update(), float, is_zero_v3(), l, LinkNode::link, MEM_freeN(), MEM_mallocN(), MLNOR_SPACE_IS_SINGLE, LinkNode::next, OPERATOR_FINISHED, params, wmOperator::ptr, RNA_boolean_get(), and v.
Referenced by MESH_OT_set_normals_from_faces().
|
static |
Definition at line 3745 of file editmesh_tools.cc.
References BKE_report(), BKE_view_layer_array_from_objects_in_edit_mode_unique_data(), BMEditMesh::bm, C, CTX_data_scene(), CTX_data_view_layer(), CTX_wm_view3d(), EDBM_update(), EDBM_verts_mirror_cache_begin(), EDBM_verts_mirror_cache_end(), Mesh::editflag, ME_EDIT_MIRROR_TOPO, ME_SYMMETRY_X, OPERATOR_CANCELLED, OPERATOR_FINISHED, params, wmOperator::reports, RPT_ERROR, Mesh::runtime, blender::ed::object::shape_key_report_if_any_locked(), shape_propagate(), Mesh::symmetry, and BMesh::totvertsel.
Referenced by MESH_OT_shape_propagate_to_all().
|
static |
Definition at line 9654 of file editmesh_tools.cc.
References add_v3_v3(), BKE_editmesh_from_object(), BKE_editmesh_lnorspace_update(), BKE_lnor_space_custom_data_to_normal(), BKE_lnor_space_custom_normal_to_data(), BKE_view_layer_array_from_objects_in_edit_mode_unique_data(), bm, BMEditMesh::bm, BM_ELEM_CD_GET_VOID_P, BM_elem_index_get, BM_FACES_OF_VERT, BM_ITER_ELEM, BM_loop_normal_editdata_array_free(), BM_loop_normal_editdata_array_init(), BM_LOOPS_OF_FACE, C, BMLoopNorEditDataArray::cd_custom_normal_offset, BMLoopNorEditData::clnors_data, CLNORS_VALID_VEC_LEN, CTX_data_scene(), CTX_data_view_layer(), CTX_wm_view3d(), EDBM_update(), float, i, l, BMLoopNorEditDataArray::lnor_editdata, BMLoopNorEditData::loop, BMLoopNorEditData::loop_index, MEM_callocN(), MEM_freeN(), mul_v3_fl(), normalize_v3(), OPERATOR_FINISHED, params, wmOperator::ptr, RNA_float_get(), and BMLoopNorEditDataArray::totloop.
Referenced by MESH_OT_smooth_normals().
|
static |
Definition at line 4031 of file editmesh_tools.cc.
References BKE_editmesh_from_object(), BKE_view_layer_array_from_objects_in_edit_mode_unique_data(), bm, BMEditMesh::bm, BM_ELEM_SELECT, BM_FACE, BM_select_history_clear(), BMO_op_exec(), BMO_slot_buffer_hflag_disable(), BMO_slot_buffer_hflag_enable(), C, CTX_data_scene(), CTX_data_view_layer(), CTX_wm_view3d(), EDBM_op_finish(), EDBM_op_init(), EDBM_update(), OPERATOR_FINISHED, params, wmOperator::ptr, RNA_float_get(), BMOperator::slots_in, BMOperator::slots_out, and BMesh::totfacesel.
Referenced by MESH_OT_solidify().
|
static |
Definition at line 7019 of file editmesh_tools.cc.
References BKE_editmesh_from_object(), BKE_report(), BKE_view_layer_array_from_objects_in_edit_mode_unique_data(), BLI_ghashutil_strhash_p(), bm, BMEditMesh::bm, BM_EDGE, BM_ELEM_SELECT, BM_FACE, BM_VERT, C, CTX_data_edit_object(), CTX_data_scene(), CTX_data_view_layer(), CTX_wm_view3d(), ED_view3d_context_rv3d(), ELEM, Object::id, ID::name, OPERATOR_CANCELLED, OPERATOR_FINISHED, wmOperator::ptr, wmOperator::reports, RNA_boolean_get(), RNA_enum_get(), RNA_enum_set(), RNA_int_get(), RNA_property_enum_get(), RNA_property_is_set(), RNA_struct_find_property(), RPT_ERROR, SCE_SELECT_EDGE, SCE_SELECT_FACE, SCE_SELECT_VERTEX, seed, BMEditMesh::selectmode, blender::Vector< T, InlineBufferCapacity, Allocator >::size(), sort_bmelem_flag(), SRT_VIEW_XAXIS, and SRT_VIEW_ZAXIS.
Referenced by MESH_OT_sort_elements().
|
static |
Definition at line 7087 of file editmesh_tools.cc.
References ELEM, wmOperator::ptr, RNA_enum_get(), RNA_property_identifier(), SRT_RANDOMIZE, SRT_REVERSE, and STREQ.
Referenced by MESH_OT_sort_elements().
|
static |
Definition at line 6468 of file editmesh_tools.cc.
References BKE_editmesh_from_object(), BKE_view_layer_array_from_objects_in_edit_mode_unique_data(), BMEditMesh::bm, BM_ALL_NOLOOP, BM_custom_loop_normals_from_vector_layer(), BM_custom_loop_normals_to_vector_layer(), BM_EDGE, BM_ELEM_SELECT, BM_FACE, BM_mesh_elem_hflag_disable_all(), BM_VERT, BMO_op_exec(), BMO_slot_buffer_hflag_enable(), C, CTX_data_scene(), CTX_data_view_layer(), CTX_wm_view3d(), EDBM_op_finish(), EDBM_op_init(), EDBM_update(), OPERATOR_FINISHED, params, BMOperator::slots_out, BMesh::totedgesel, BMesh::totfacesel, and BMesh::totvertsel.
Referenced by MESH_OT_split().
|
static |
Definition at line 9014 of file editmesh_tools.cc.
References C, and normals_split_merge().
Referenced by MESH_OT_split_normals().
|
static |
Definition at line 293 of file editmesh_tools.cc.
References BKE_editmesh_from_object(), BKE_view_layer_array_from_objects_in_edit_mode_unique_data(), BMEditMesh::bm, BM_ELEM_SELECT, C, CTX_data_scene(), CTX_data_view_layer(), CTX_wm_view3d(), EdgeRingOpSubdProps::cuts, EDBM_op_callf(), EDBM_update(), EdgeRingOpSubdProps::interp_mode, mesh_operator_edgering_props_get(), OPERATOR_FINISHED, params, EdgeRingOpSubdProps::profile_shape, EdgeRingOpSubdProps::profile_shape_factor, EdgeRingOpSubdProps::smooth, and BMesh::totedgesel.
Referenced by MESH_OT_subdivide_edgering().
|
static |
Definition at line 89 of file editmesh_tools.cc.
References BKE_editmesh_from_object(), BKE_view_layer_array_from_objects_in_edit_mode_unique_data(), BMEditMesh::bm, BM_ELEM_SELECT, BM_mesh_esubdivide(), C, CTX_data_scene(), CTX_data_view_layer(), CTX_wm_view3d(), EDBM_update(), OPERATOR_FINISHED, params, wmOperator::ptr, RNA_boolean_get(), RNA_enum_get(), RNA_enum_set(), RNA_float_get(), RNA_int_get(), seed, SUBD_CORNER_INNERVERT, SUBD_CORNER_STRAIGHT_CUT, SUBD_FALLOFF_LIN, SUBDIV_SELECT_ORIG, BMesh::totedgesel, and BMesh::totfacesel.
Referenced by MESH_OT_subdivide().
|
static |
Definition at line 5439 of file editmesh_tools.cc.
References BKE_editmesh_from_object(), BKE_view_layer_array_from_objects_in_edit_mode_unique_data(), BMEditMesh::bm, BM_custom_loop_normals_from_vector_layer(), BM_custom_loop_normals_to_vector_layer(), BM_ELEM_SELECT, C, CTX_data_scene(), CTX_data_view_layer(), CTX_wm_view3d(), DEG2RADF, EDBM_mesh_stats_multi(), EDBM_op_call_and_selectf(), EDBM_selectmode_flush_ex(), EDBM_update(), EDBM_uvselect_clear(), OPERATOR_FINISHED, params, wmOperator::ptr, RNA_boolean_get(), RNA_float_get(), RNA_int_get(), RNA_property_float_get(), RNA_property_is_set(), RNA_struct_find_property(), SCE_SELECT_EDGE, SCE_SELECT_VERTEX, BMEditMesh::selectmode, and BMesh::totfacesel.
Referenced by MESH_OT_tris_convert_to_quads().
|
static |
Definition at line 358 of file editmesh_tools.cc.
References BKE_editmesh_from_object(), BKE_view_layer_array_from_objects_in_edit_mode(), BMEditMesh::bm, BM_ELEM_SELECT, BMO_op_exec(), C, CTX_data_scene(), CTX_data_view_layer(), CTX_wm_view3d(), EDBM_op_finish(), EDBM_op_init(), EDBM_selectmode_flush(), EDBM_selectmode_flush_ex(), EDBM_update(), OPERATOR_FINISHED, params, wmOperator::ptr, RNA_int_get(), SCE_SELECT_VERTEX, BMEditMesh::selectmode, BMesh::totedgesel, BMesh::totfacesel, and BMesh::totvertsel.
Referenced by MESH_OT_unsubdivide().
|
static |
Definition at line 1656 of file editmesh_tools.cc.
References BKE_editmesh_from_object(), BKE_view_layer_array_from_objects_in_edit_mode_unique_data(), BMEditMesh::bm, BM_ELEM_SELECT, C, CTX_data_scene(), CTX_data_view_layer(), CTX_wm_view3d(), EDBM_op_call_and_selectf(), EDBM_update(), OPERATOR_FINISHED, params, and BMesh::totfacesel.
Referenced by MESH_OT_vert_connect_concave().
|
static |
Definition at line 1293 of file editmesh_tools.cc.
References BKE_editmesh_from_object(), BKE_view_layer_array_from_objects_in_edit_mode_unique_data(), C, CTX_data_scene(), CTX_data_view_layer(), CTX_wm_view3d(), edbm_connect_vert_pair(), OPERATOR_CANCELLED, OPERATOR_FINISHED, and blender::Vector< T, InlineBufferCapacity, Allocator >::size().
Referenced by MESH_OT_vert_connect().
|
static |
Definition at line 1705 of file editmesh_tools.cc.
References BKE_editmesh_from_object(), BKE_view_layer_array_from_objects_in_edit_mode_unique_data(), BMEditMesh::bm, BM_ELEM_SELECT, C, CTX_data_scene(), CTX_data_view_layer(), CTX_wm_view3d(), EDBM_op_call_and_selectf(), EDBM_update(), OPERATOR_FINISHED, params, wmOperator::ptr, RNA_float_get(), and BMesh::totfacesel.
Referenced by MESH_OT_vert_connect_nonplanar().
|
static |
Definition at line 1540 of file editmesh_tools.cc.
References BKE_editmesh_from_object(), BKE_report(), BKE_view_layer_array_from_objects_in_edit_mode_unique_data(), BLI_listbase_is_empty(), bm, BMEditMesh::bm, BM_custom_loop_normals_from_vector_layer(), BM_custom_loop_normals_to_vector_layer(), BM_EDGE, BM_FACE, BM_select_history_clear(), BM_select_history_htype_all(), bm_vert_connect_select_history(), bm_vert_connect_select_history_edge_to_vert_path(), C, count_bits_i(), CTX_data_scene(), CTX_data_view_layer(), CTX_wm_view3d(), edbm_connect_vert_pair(), EDBM_selectmode_flush(), EDBM_update(), BMEditSelection::htype, OPERATOR_CANCELLED, OPERATOR_FINISHED, params, wmOperator::reports, RPT_ERROR, blender::Vector< T, InlineBufferCapacity, Allocator >::size(), and BMesh::totvertsel.
Referenced by MESH_OT_vert_connect_path().
|
static |
Definition at line 7456 of file editmesh_tools.cc.
References BKE_editmesh_from_object(), BKE_view_layer_array_from_objects_in_edit_mode_unique_data(), BMEditMesh::bm, BM_EDGE, BM_ELEM_SELECT, BM_FACE, BM_mesh_elem_hflag_disable_all(), BM_VERT, BMO_op_exec(), BMO_slot_buffer_hflag_enable(), C, CTX_data_scene(), CTX_data_view_layer(), CTX_wm_view3d(), EDBM_op_finish(), EDBM_op_init(), EDBM_update(), OPERATOR_FINISHED, params, wmOperator::ptr, RNA_boolean_get(), RNA_float_get(), BMOperator::slots_out, and BMesh::totfacesel.
Referenced by MESH_OT_wireframe().
|
static |
Definition at line 2117 of file editmesh_tools.cc.
References BKE_lnor_space_custom_normal_to_data(), BLI_assert, bm, BM_elem_flag_test, BM_elem_index_get, BM_ELEM_SELECT, BM_FACE, BM_FACE_FIRST_LOOP, BM_FACES_OF_MESH, BM_ITER_MESH, BM_lnorspace_update(), BM_loop_normal_editdata_array_free(), BM_loop_normal_editdata_array_init_with_htype(), BM_SPACEARR_DIRTY_ALL, BMLoopNorEditData::clnors_data, i, l, BMLoopNorEditDataArray::lidx_to_lnor_editdata, BMLoopNorEditDataArray::lnor_editdata, BMLoopNorEditData::loop_index, negate_v3(), BMLoopNorEditData::nloc, and BMLoopNorEditDataArray::totloop.
Referenced by edbm_fill_grid_split_join_finish(), edbm_flip_normals_face_winding(), and edbm_normals_make_consistent_exec().
|
static |
Definition at line 2099 of file editmesh_tools.cc.
References bm, BM_FACE, BM_lnorspace_update(), BM_loop_normal_editdata_array_init_with_htype(), CD_PROP_INT16_2D, and CustomData_has_layer_named().
Referenced by edbm_fill_grid_split_join_finish(), edbm_flip_normals_face_winding(), and edbm_normals_make_consistent_exec().
|
static |
Definition at line 5557 of file editmesh_tools.cc.
References DEG2RADF, ot, RNA_def_boolean(), RNA_def_float_factor(), RNA_def_float_rotation(), RNA_def_int(), RNA_def_property_float_default(), and RNA_def_property_int_default().
Referenced by MESH_OT_tris_convert_to_quads().
|
static |
Definition at line 3306 of file editmesh_tools.cc.
References BMEditMesh::bm, BM_elem_flag_test, BM_ELEM_SELECT, BM_VERT, BMVert::co, EDBM_op_callf(), BMEditSelection::ele, ListBase::first, ListBase::last, and BMesh::selected.
Referenced by edbm_merge_exec().
|
static |
Definition at line 3357 of file editmesh_tools.cc.
References add_v3_v3(), BMEditMesh::bm, BM_elem_flag_test, BM_ELEM_SELECT, BM_ITER_MESH, BM_VERTS_OF_MESH, copy_v3_v3(), Scene::cursor, EDBM_op_callf(), float, i, invert_m4_m4(), View3DCursor::location, mul_m4_v3(), mul_v3_fl(), Object::runtime, and v.
Referenced by edbm_merge_exec().
|
static |
Definition at line 3487 of file editmesh_tools.cc.
References BKE_editmesh_from_object(), BMEditMesh::bm, BM_VERT, C, CTX_data_edit_object(), ListBase::first, ListBase::last, merge_type_items, MESH_MERGE_CENTER, MESH_MERGE_COLLAPSE, MESH_MERGE_CURSOR, MESH_MERGE_FIRST, MESH_MERGE_LAST, OB_MESH, RNA_enum_item_end(), RNA_enum_items_add_value(), SCE_SELECT_VERTEX, BMesh::selected, BMEditMesh::selectmode, and Object::type.
Referenced by MESH_OT_merge().
|
static |
Definition at line 236 of file editmesh_tools.cc.
References BLT_I18NCONTEXT_ID_CURVE_LEGACY, ot, PROP_ENUM, PROP_NONE, PROP_SKIP_SAVE, PROP_SMOOTH, RNA_def_enum(), RNA_def_float(), RNA_def_int(), RNA_def_property(), RNA_def_property_enum_default(), RNA_def_property_enum_items(), RNA_def_property_flag(), RNA_def_property_translation_context(), RNA_def_property_ui_text(), rna_enum_proportional_falloff_curve_only_items, SUBD_RING_INTERP_LINEAR, SUBD_RING_INTERP_PATH, and SUBD_RING_INTERP_SURF.
Referenced by MESH_OT_bridge_edge_loops(), and MESH_OT_subdivide_edgering().
|
static |
Definition at line 283 of file editmesh_tools.cc.
References EdgeRingOpSubdProps::cuts, EdgeRingOpSubdProps::interp_mode, EdgeRingOpSubdProps::profile_shape, EdgeRingOpSubdProps::profile_shape_factor, wmOperator::ptr, RNA_enum_get(), RNA_float_get(), RNA_int_get(), and EdgeRingOpSubdProps::smooth.
Referenced by edbm_bridge_edge_loops_for_single_editmesh(), and edbm_subdivide_edge_ring_exec().
| void MESH_OT_average_normals | ( | wmOperatorType * | ot | ) |
Definition at line 9251 of file editmesh_tools.cc.
References average_method_items, ED_operator_editmesh(), edbm_average_normals_exec(), edbm_average_normals_ui(), EDBM_CLNOR_AVERAGE_LOOP, OPTYPE_REGISTER, OPTYPE_UNDO, ot, RNA_def_enum(), RNA_def_float(), and RNA_def_int().
Referenced by ED_operatortypes_mesh().
| void MESH_OT_beautify_fill | ( | wmOperatorType * | ot | ) |
Definition at line 5212 of file editmesh_tools.cc.
References DEG2RADF, ED_operator_editmesh(), edbm_beautify_fill_exec(), OPTYPE_REGISTER, OPTYPE_UNDO, ot, RNA_def_float_rotation(), and RNA_def_property_float_default().
Referenced by ED_operatortypes_mesh().
| void MESH_OT_blend_from_shape | ( | wmOperatorType * | ot | ) |
Definition at line 3997 of file editmesh_tools.cc.
References ED_operator_editmesh(), edbm_blend_from_shape_exec(), edbm_blend_from_shape_ui(), OPTYPE_REGISTER, OPTYPE_UNDO, ot, PROP_ENUM_NO_TRANSLATE, PROP_NEVER_UNLINK, RNA_def_boolean(), RNA_def_enum(), RNA_def_enum_funcs(), RNA_def_float(), RNA_def_property_flag(), rna_enum_dummy_NULL_items, and shape_itemf().
Referenced by ED_operatortypes_mesh().
| void MESH_OT_bridge_edge_loops | ( | wmOperatorType * | ot | ) |
Definition at line 7407 of file editmesh_tools.cc.
References ED_operator_editmesh(), edbm_bridge_edge_loops_exec(), MESH_BRIDGELOOP_CLOSED, MESH_BRIDGELOOP_PAIRS, MESH_BRIDGELOOP_SINGLE, mesh_operator_edgering_props(), OPTYPE_REGISTER, OPTYPE_UNDO, ot, RNA_def_boolean(), RNA_def_enum(), RNA_def_float(), and RNA_def_int().
Referenced by ED_operatortypes_mesh().
| void MESH_OT_colors_reverse | ( | wmOperatorType * | ot | ) |
Definition at line 3272 of file editmesh_tools.cc.
References ED_operator_editmesh(), edbm_reverse_colors_exec(), OPTYPE_REGISTER, OPTYPE_UNDO, ot, and RNA_def_enum().
Referenced by ED_operatortypes_mesh().
| void MESH_OT_colors_rotate | ( | wmOperatorType * | ot | ) |
Definition at line 3254 of file editmesh_tools.cc.
References ED_operator_editmesh(), edbm_rotate_colors_exec(), OPTYPE_REGISTER, OPTYPE_UNDO, ot, and RNA_def_boolean().
Referenced by ED_operatortypes_mesh().
| void MESH_OT_decimate | ( | wmOperatorType * | ot | ) |
Definition at line 5812 of file editmesh_tools.cc.
References ED_operator_editmesh(), edbm_decimate_check(), edbm_decimate_exec(), edbm_decimate_ui(), OPTYPE_REGISTER, OPTYPE_UNDO, ot, RNA_def_boolean(), RNA_def_enum(), RNA_def_float(), and rna_enum_axis_xyz_items.
Referenced by ED_operatortypes_mesh().
| void MESH_OT_delete | ( | wmOperatorType * | ot | ) |
Definition at line 526 of file editmesh_tools.cc.
References ED_operator_editmesh(), edbm_delete_exec(), MESH_DELETE_EDGE, MESH_DELETE_EDGE_FACE, MESH_DELETE_FACE, MESH_DELETE_ONLY_FACE, MESH_DELETE_VERT, OPTYPE_REGISTER, OPTYPE_UNDO, ot, PROP_HIDDEN, PROP_SKIP_SAVE, RNA_def_enum(), RNA_def_property_flag(), and WM_menu_invoke().
Referenced by ED_operatortypes_mesh().
| void MESH_OT_delete_edgeloop | ( | wmOperatorType * | ot | ) |
Definition at line 6441 of file editmesh_tools.cc.
References ED_operator_editmesh(), edbm_delete_edgeloop_exec(), OPTYPE_REGISTER, OPTYPE_UNDO, ot, and RNA_def_boolean().
Referenced by ED_operatortypes_mesh().
| void MESH_OT_delete_loose | ( | wmOperatorType * | ot | ) |
Definition at line 658 of file editmesh_tools.cc.
References ED_operator_editmesh(), edbm_delete_loose_exec(), OPTYPE_REGISTER, OPTYPE_UNDO, ot, and RNA_def_boolean().
Referenced by ED_operatortypes_mesh().
| void MESH_OT_dissolve_degenerate | ( | wmOperatorType * | ot | ) |
Definition at line 6350 of file editmesh_tools.cc.
References ED_operator_editmesh(), edbm_dissolve_degenerate_exec(), OPTYPE_REGISTER, OPTYPE_UNDO, ot, and RNA_def_float_distance().
Referenced by ED_operatortypes_mesh().
| void MESH_OT_dissolve_edges | ( | wmOperatorType * | ot | ) |
Definition at line 6017 of file editmesh_tools.cc.
References ED_operator_editmesh(), edbm_dissolve_edges_exec(), edbm_dissolve_prop__use_angle_threshold(), edbm_dissolve_prop__use_face_split(), edbm_dissolve_prop__use_verts(), OPTYPE_REGISTER, OPTYPE_UNDO, and ot.
Referenced by ED_operatortypes_mesh().
| void MESH_OT_dissolve_faces | ( | wmOperatorType * | ot | ) |
Definition at line 6081 of file editmesh_tools.cc.
References ED_operator_editmesh(), edbm_dissolve_faces_exec(), edbm_dissolve_prop__use_verts(), OPTYPE_REGISTER, OPTYPE_UNDO, and ot.
Referenced by ED_operatortypes_mesh().
| void MESH_OT_dissolve_limited | ( | wmOperatorType * | ot | ) |
Definition at line 6256 of file editmesh_tools.cc.
References BMO_DELIM_NORMAL, DEG2RADF, ED_operator_editmesh(), edbm_dissolve_limited_exec(), OPTYPE_REGISTER, OPTYPE_UNDO, ot, RNA_def_boolean(), RNA_def_enum_flag(), RNA_def_float_rotation(), RNA_def_property_float_default(), and rna_enum_mesh_delimit_mode_items.
Referenced by ED_operatortypes_mesh().
| void MESH_OT_dissolve_mode | ( | wmOperatorType * | ot | ) |
Definition at line 6153 of file editmesh_tools.cc.
References dissolve_mode_poll_property(), ED_operator_editmesh(), edbm_dissolve_mode_exec(), edbm_dissolve_prop__use_angle_threshold(), edbm_dissolve_prop__use_boundary_tear(), edbm_dissolve_prop__use_face_split(), edbm_dissolve_prop__use_verts(), OPTYPE_REGISTER, OPTYPE_UNDO, ot, and PROP_SKIP_SAVE.
Referenced by ED_operatortypes_mesh().
| void MESH_OT_dissolve_verts | ( | wmOperatorType * | ot | ) |
Definition at line 5950 of file editmesh_tools.cc.
References ED_operator_editmesh(), edbm_dissolve_prop__use_boundary_tear(), edbm_dissolve_prop__use_face_split(), edbm_dissolve_verts_exec(), OPTYPE_REGISTER, OPTYPE_UNDO, and ot.
Referenced by ED_operatortypes_mesh().
| void MESH_OT_duplicate | ( | wmOperatorType * | ot | ) |
Definition at line 2073 of file editmesh_tools.cc.
References ED_operator_editmesh(), edbm_duplicate_exec(), edbm_duplicate_invoke(), ot, PROP_HIDDEN, RNA_def_int(), RNA_def_property_flag(), and blender::ed::transform::TFM_TRANSLATION.
Referenced by ED_operatortypes_mesh().
| void MESH_OT_edge_collapse | ( | wmOperatorType * | ot | ) |
Definition at line 712 of file editmesh_tools.cc.
References ED_operator_editmesh(), edbm_collapse_edge_exec(), OPTYPE_REGISTER, OPTYPE_UNDO, and ot.
Referenced by ED_operatortypes_mesh().
| void MESH_OT_edge_face_add | ( | wmOperatorType * | ot | ) |
Definition at line 1009 of file editmesh_tools.cc.
References ED_operator_editmesh(), edbm_add_edge_face_exec(), OPTYPE_REGISTER, OPTYPE_UNDO, and ot.
Referenced by ED_operatortypes_mesh().
| void MESH_OT_edge_rotate | ( | wmOperatorType * | ot | ) |
Definition at line 2446 of file editmesh_tools.cc.
References ED_operator_editmesh(), edbm_edge_rotate_selected_exec(), OPTYPE_REGISTER, OPTYPE_UNDO, ot, and RNA_def_boolean().
Referenced by ED_operatortypes_mesh().
| void MESH_OT_edge_split | ( | wmOperatorType * | ot | ) |
Definition at line 1975 of file editmesh_tools.cc.
References BM_EDGE, BM_VERT, ED_operator_editmesh(), edbm_edge_split_exec(), OPTYPE_REGISTER, OPTYPE_UNDO, ot, and RNA_def_enum().
Referenced by ED_operatortypes_mesh().
| void MESH_OT_face_make_planar | ( | wmOperatorType * | ot | ) |
Definition at line 1818 of file editmesh_tools.cc.
References ED_operator_editmesh(), edbm_face_make_planar_exec(), OPTYPE_REGISTER, OPTYPE_UNDO, ot, RNA_def_float(), and RNA_def_int().
Referenced by ED_operatortypes_mesh().
| void MESH_OT_faces_shade_flat | ( | wmOperatorType * | ot | ) |
Definition at line 3030 of file editmesh_tools.cc.
References ED_operator_editmesh(), edbm_faces_shade_flat_exec(), OPTYPE_REGISTER, OPTYPE_UNDO, and ot.
Referenced by ED_operatortypes_mesh().
| void MESH_OT_faces_shade_smooth | ( | wmOperatorType * | ot | ) |
Definition at line 2985 of file editmesh_tools.cc.
References ED_operator_editmesh(), edbm_faces_shade_smooth_exec(), OPTYPE_REGISTER, OPTYPE_UNDO, and ot.
Referenced by ED_operatortypes_mesh().
| void MESH_OT_fill | ( | wmOperatorType * | ot | ) |
Definition at line 4632 of file editmesh_tools.cc.
References BLT_I18NCONTEXT_ID_MESH, ED_operator_editmesh(), edbm_fill_exec(), OPTYPE_REGISTER, OPTYPE_UNDO, ot, and RNA_def_boolean().
Referenced by ED_operatortypes_mesh().
| void MESH_OT_fill_grid | ( | wmOperatorType * | ot | ) |
Definition at line 5057 of file editmesh_tools.cc.
References ED_operator_editmesh(), edbm_fill_grid_exec(), OPTYPE_REGISTER, OPTYPE_UNDO, ot, PROP_SKIP_SAVE, RNA_def_boolean(), RNA_def_int(), and RNA_def_property_flag().
Referenced by ED_operatortypes_mesh().
| void MESH_OT_fill_holes | ( | wmOperatorType * | ot | ) |
Definition at line 5131 of file editmesh_tools.cc.
References ED_operator_editmesh(), edbm_fill_holes_exec(), OPTYPE_REGISTER, OPTYPE_UNDO, ot, and RNA_def_int().
Referenced by ED_operatortypes_mesh().
| void MESH_OT_flip_normals | ( | wmOperatorType * | ot | ) |
Definition at line 2311 of file editmesh_tools.cc.
References ED_operator_editmesh(), edbm_flip_normals_exec(), OPTYPE_REGISTER, OPTYPE_UNDO, ot, and RNA_def_boolean().
Referenced by ED_operatortypes_mesh().
| void MESH_OT_flip_quad_tessellation | ( | wmOperatorType * | ot | ) |
Definition at line 9864 of file editmesh_tools.cc.
References ED_operator_editmesh(), edbm_flip_quad_tessellation_exec(), OPTYPE_REGISTER, OPTYPE_UNDO, and ot.
Referenced by ED_operatortypes_mesh().
| void MESH_OT_hide | ( | wmOperatorType * | ot | ) |
Definition at line 2531 of file editmesh_tools.cc.
References ED_operator_editmesh(), edbm_hide_exec(), OPTYPE_REGISTER, OPTYPE_UNDO, ot, and RNA_def_boolean().
Referenced by ED_operatortypes_mesh().
| void MESH_OT_mark_seam | ( | wmOperatorType * | ot | ) |
Definition at line 1080 of file editmesh_tools.cc.
References ED_operator_editmesh(), edbm_mark_seam_exec(), OPTYPE_REGISTER, OPTYPE_UNDO, ot, PROP_HIDDEN, PROP_SKIP_SAVE, RNA_def_boolean(), RNA_def_property_flag(), and WM_operatortype_props_advanced_begin().
Referenced by ED_operatortypes_mesh().
| void MESH_OT_mark_sharp | ( | wmOperatorType * | ot | ) |
Definition at line 1152 of file editmesh_tools.cc.
References ED_operator_editmesh(), edbm_mark_sharp_exec(), OPTYPE_REGISTER, OPTYPE_UNDO, ot, PROP_HIDDEN, PROP_SKIP_SAVE, RNA_def_boolean(), and RNA_def_property_flag().
Referenced by ED_operatortypes_mesh().
| void MESH_OT_merge | ( | wmOperatorType * | ot | ) |
Definition at line 3542 of file editmesh_tools.cc.
References ED_operator_editmesh(), edbm_merge_exec(), merge_type_itemf(), merge_type_items, MESH_MERGE_CENTER, OPTYPE_REGISTER, OPTYPE_UNDO, ot, RNA_def_boolean(), RNA_def_enum(), RNA_def_enum_funcs(), WM_menu_invoke(), and WM_operatortype_props_advanced_begin().
Referenced by ED_operatortypes_mesh().
| void MESH_OT_merge_normals | ( | wmOperatorType * | ot | ) |
Definition at line 8999 of file editmesh_tools.cc.
References ED_operator_editmesh(), edbm_merge_normals_exec(), OPTYPE_REGISTER, OPTYPE_UNDO, and ot.
Referenced by ED_operatortypes_mesh().
| void MESH_OT_mod_weighted_strength | ( | wmOperatorType * | ot | ) |
Definition at line 9839 of file editmesh_tools.cc.
References ED_operator_editmesh(), edbm_mod_weighted_strength_exec(), FACE_STRENGTH_MEDIUM, OPTYPE_REGISTER, OPTYPE_UNDO, ot, prop_mesh_face_strength_types, RNA_def_boolean(), and RNA_def_enum().
Referenced by ED_operatortypes_mesh().
| void MESH_OT_normals_make_consistent | ( | wmOperatorType * | ot | ) |
Definition at line 2646 of file editmesh_tools.cc.
References ED_operator_editmesh(), edbm_normals_make_consistent_exec(), OPTYPE_REGISTER, OPTYPE_UNDO, ot, and RNA_def_boolean().
Referenced by ED_operatortypes_mesh().
| void MESH_OT_normals_tools | ( | wmOperatorType * | ot | ) |
Definition at line 9503 of file editmesh_tools.cc.
References ED_operator_editmesh(), EDBM_CLNOR_TOOLS_COPY, edbm_normals_tools_exec(), edbm_normals_tools_ui(), normal_vector_tool_items, OPTYPE_REGISTER, OPTYPE_UNDO, ot, PROP_HIDDEN, RNA_def_boolean(), RNA_def_enum(), and RNA_def_property_flag().
Referenced by ED_operatortypes_mesh().
| void MESH_OT_offset_edge_loops | ( | wmOperatorType * | ot | ) |
Definition at line 7621 of file editmesh_tools.cc.
References ED_operator_editmesh(), edbm_offset_edgeloop_exec(), OPTYPE_INTERNAL, OPTYPE_REGISTER, OPTYPE_UNDO, ot, and RNA_def_boolean().
Referenced by ED_operatortypes_mesh().
| void MESH_OT_point_normals | ( | wmOperatorType * | ot | ) |
Definition at line 8759 of file editmesh_tools.cc.
References clnors_pointto_mode_items, ED_operator_editmesh(), EDBM_CLNOR_POINTTO_MODE_COORDINATES, edbm_point_normals_exec(), edbm_point_normals_invoke(), edbm_point_normals_modal(), edbm_point_normals_ui(), FLT_MAX, OPTYPE_BLOCKING, OPTYPE_REGISTER, OPTYPE_UNDO, ot, point_normals_cancel(), PROP_HIDDEN, RNA_def_boolean(), RNA_def_enum(), RNA_def_float(), RNA_def_float_vector_xyz(), and RNA_def_property_flag().
Referenced by ED_operatortypes_mesh().
| void MESH_OT_poke | ( | wmOperatorType * | ot | ) |
Definition at line 5297 of file editmesh_tools.cc.
References BMOP_POKE_BOUNDS, BMOP_POKE_MEDIAN, BMOP_POKE_MEDIAN_WEIGHTED, ED_operator_editmesh(), edbm_poke_face_exec(), OPTYPE_REGISTER, OPTYPE_UNDO, ot, RNA_def_boolean(), RNA_def_enum(), and RNA_def_float_distance().
Referenced by ED_operatortypes_mesh().
| void MESH_OT_quads_convert_to_tris | ( | wmOperatorType * | ot | ) |
Definition at line 5401 of file editmesh_tools.cc.
References ED_operator_editmesh(), edbm_quads_convert_to_tris_exec(), MOD_TRIANGULATE_NGON_BEAUTY, MOD_TRIANGULATE_QUAD_BEAUTY, OPTYPE_REGISTER, OPTYPE_UNDO, ot, RNA_def_enum(), rna_enum_modifier_triangulate_ngon_method_items, and rna_enum_modifier_triangulate_quad_method_items.
Referenced by ED_operatortypes_mesh().
| void MESH_OT_remove_doubles | ( | wmOperatorType * | ot | ) |
Definition at line 3664 of file editmesh_tools.cc.
References ED_operator_editmesh(), edbm_remove_doubles_exec(), OPTYPE_REGISTER, OPTYPE_UNDO, ot, RNA_def_boolean(), and RNA_def_float_distance().
Referenced by ED_operatortypes_mesh().
| void MESH_OT_reveal | ( | wmOperatorType * | ot | ) |
Definition at line 2579 of file editmesh_tools.cc.
References ED_operator_editmesh(), edbm_reveal_exec(), OPTYPE_REGISTER, OPTYPE_UNDO, ot, and RNA_def_boolean().
Referenced by ED_operatortypes_mesh().
| void MESH_OT_separate | ( | wmOperatorType * | ot | ) |
Definition at line 4536 of file editmesh_tools.cc.
References ED_operator_scene_editable(), edbm_separate_exec(), MESH_SEPARATE_LOOSE, MESH_SEPARATE_MATERIAL, MESH_SEPARATE_SELECTED, OPTYPE_UNDO, ot, RNA_def_enum(), and WM_menu_invoke().
Referenced by ED_operatortypes_mesh().
| void MESH_OT_set_normals_from_faces | ( | wmOperatorType * | ot | ) |
Definition at line 9630 of file editmesh_tools.cc.
References ED_operator_editmesh(), edbm_set_normals_from_faces_exec(), OPTYPE_REGISTER, OPTYPE_UNDO, ot, and RNA_def_boolean().
Referenced by ED_operatortypes_mesh().
| void MESH_OT_shape_propagate_to_all | ( | wmOperatorType * | ot | ) |
Definition at line 3808 of file editmesh_tools.cc.
References ED_operator_editmesh(), edbm_shape_propagate_to_all_exec(), OPTYPE_REGISTER, OPTYPE_UNDO, and ot.
Referenced by ED_operatortypes_mesh().
| void MESH_OT_smooth_normals | ( | wmOperatorType * | ot | ) |
Definition at line 9741 of file editmesh_tools.cc.
References ED_operator_editmesh(), edbm_smooth_normals_exec(), OPTYPE_REGISTER, OPTYPE_UNDO, ot, and RNA_def_float().
Referenced by ED_operatortypes_mesh().
| void MESH_OT_solidify | ( | wmOperatorType * | ot | ) |
Definition at line 4082 of file editmesh_tools.cc.
References ED_operator_editmesh(), edbm_solidify_exec(), OPTYPE_REGISTER, OPTYPE_UNDO, ot, RNA_def_float_distance(), and RNA_def_property_ui_range().
Referenced by ED_operatortypes_mesh().
| void MESH_OT_sort_elements | ( | wmOperatorType * | ot | ) |
Definition at line 7113 of file editmesh_tools.cc.
References BM_EDGE, BM_FACE, BM_VERT, ED_operator_editmesh(), edbm_sort_elements_exec(), edbm_sort_elements_poll_property(), OPTYPE_REGISTER, OPTYPE_UNDO, ot, RNA_def_boolean(), RNA_def_enum(), RNA_def_enum_flag(), RNA_def_int(), SRT_CURSOR_DISTANCE, SRT_MATERIAL, SRT_RANDOMIZE, SRT_REVERSE, SRT_SELECTED, SRT_VIEW_XAXIS, SRT_VIEW_ZAXIS, and WM_menu_invoke().
Referenced by ED_operatortypes_mesh().
| void MESH_OT_split | ( | wmOperatorType * | ot | ) |
Definition at line 6505 of file editmesh_tools.cc.
References ED_operator_editmesh(), edbm_split_exec(), OPTYPE_REGISTER, OPTYPE_UNDO, and ot.
Referenced by ED_operatortypes_mesh().
| void MESH_OT_split_normals | ( | wmOperatorType * | ot | ) |
Definition at line 9019 of file editmesh_tools.cc.
References ED_operator_editmesh(), edbm_split_normals_exec(), OPTYPE_REGISTER, OPTYPE_UNDO, and ot.
Referenced by ED_operatortypes_mesh().
| void MESH_OT_subdivide | ( | wmOperatorType * | ot | ) |
Definition at line 149 of file editmesh_tools.cc.
References ED_operator_editmesh(), edbm_subdivide_exec(), OPTYPE_REGISTER, OPTYPE_UNDO, ot, prop_mesh_cornervert_types, PROP_SKIP_SAVE, RNA_def_boolean(), RNA_def_enum(), RNA_def_float(), RNA_def_int(), RNA_def_property_flag(), SUBD_CORNER_STRAIGHT_CUT, and WM_operatortype_props_advanced_begin().
Referenced by ED_operatortypes_mesh().
| void MESH_OT_subdivide_edgering | ( | wmOperatorType * | ot | ) |
Definition at line 334 of file editmesh_tools.cc.
References ED_operator_editmesh(), edbm_subdivide_edge_ring_exec(), mesh_operator_edgering_props(), OPTYPE_REGISTER, OPTYPE_UNDO, and ot.
Referenced by ED_operatortypes_mesh().
| void MESH_OT_symmetrize | ( | wmOperatorType * | ot | ) |
Definition at line 7844 of file editmesh_tools.cc.
References BMO_SYMMETRIZE_NEGATIVE_X, ED_operator_editmesh(), mesh_symmetrize_exec(), OPTYPE_REGISTER, OPTYPE_UNDO, ot, RNA_def_enum(), RNA_def_float(), and rna_enum_symmetrize_direction_items.
Referenced by ED_operatortypes_mesh().
| void MESH_OT_symmetry_snap | ( | wmOperatorType * | ot | ) |
Definition at line 8013 of file editmesh_tools.cc.
References BMO_SYMMETRIZE_NEGATIVE_X, ED_operator_editmesh(), mesh_symmetry_snap_exec(), OPTYPE_REGISTER, OPTYPE_UNDO, ot, RNA_def_boolean(), RNA_def_enum(), RNA_def_float(), RNA_def_float_distance(), and rna_enum_symmetrize_direction_items.
Referenced by ED_operatortypes_mesh().
| void MESH_OT_tris_convert_to_quads | ( | wmOperatorType * | ot | ) |
Definition at line 5633 of file editmesh_tools.cc.
References ED_operator_editmesh(), edbm_tris_convert_to_quads_exec(), join_triangle_props(), OPTYPE_REGISTER, OPTYPE_UNDO, and ot.
Referenced by ED_operatortypes_mesh().
| void MESH_OT_unsubdivide | ( | wmOperatorType * | ot | ) |
Definition at line 396 of file editmesh_tools.cc.
References ED_operator_editmesh(), edbm_unsubdivide_exec(), OPTYPE_REGISTER, OPTYPE_UNDO, ot, and RNA_def_int().
Referenced by ED_operatortypes_mesh().
| void MESH_OT_uvs_reverse | ( | wmOperatorType * | ot | ) |
Definition at line 3236 of file editmesh_tools.cc.
References ED_operator_editmesh(), edbm_reverse_uvs_exec(), OPTYPE_REGISTER, OPTYPE_UNDO, and ot.
Referenced by ED_operatortypes_mesh().
| void MESH_OT_uvs_rotate | ( | wmOperatorType * | ot | ) |
Definition at line 3218 of file editmesh_tools.cc.
References ED_operator_editmesh(), edbm_rotate_uvs_exec(), OPTYPE_REGISTER, OPTYPE_UNDO, ot, and RNA_def_boolean().
Referenced by ED_operatortypes_mesh().
| void MESH_OT_vert_connect | ( | wmOperatorType * | ot | ) |
Definition at line 1311 of file editmesh_tools.cc.
References ED_operator_editmesh(), edbm_vert_connect_exec(), OPTYPE_REGISTER, OPTYPE_UNDO, and ot.
Referenced by ED_operatortypes_mesh().
| void MESH_OT_vert_connect_concave | ( | wmOperatorType * | ot | ) |
Definition at line 1684 of file editmesh_tools.cc.
References ED_operator_editmesh(), edbm_vert_connect_concave_exec(), OPTYPE_REGISTER, OPTYPE_UNDO, and ot.
Referenced by ED_operatortypes_mesh().
| void MESH_OT_vert_connect_nonplanar | ( | wmOperatorType * | ot | ) |
Definition at line 1741 of file editmesh_tools.cc.
References DEG2RADF, ED_operator_editmesh(), edbm_vert_connect_nonplaner_exec(), OPTYPE_REGISTER, OPTYPE_UNDO, ot, RNA_def_float_rotation(), and RNA_def_property_float_default().
Referenced by ED_operatortypes_mesh().
| void MESH_OT_vert_connect_path | ( | wmOperatorType * | ot | ) |
Definition at line 1635 of file editmesh_tools.cc.
References ED_operator_editmesh(), edbm_vert_connect_path_exec(), OPTYPE_REGISTER, OPTYPE_UNDO, and ot.
Referenced by ED_operatortypes_mesh().
| void MESH_OT_vertices_smooth | ( | wmOperatorType * | ot | ) |
Definition at line 2777 of file editmesh_tools.cc.
References ED_operator_editmesh(), edbm_do_smooth_vertex_exec(), OPTYPE_REGISTER, OPTYPE_UNDO, ot, RNA_def_boolean(), RNA_def_float_factor(), RNA_def_int(), WM_operator_type_modal_from_exec_for_object_edit_coords(), and WM_operatortype_props_advanced_begin().
Referenced by ED_operatortypes_mesh().
| void MESH_OT_vertices_smooth_laplacian | ( | wmOperatorType * | ot | ) |
Definition at line 2899 of file editmesh_tools.cc.
References ED_operator_editmesh(), edbm_do_smooth_laplacian_vertex_exec(), OPTYPE_REGISTER, OPTYPE_UNDO, ot, RNA_def_boolean(), RNA_def_float(), RNA_def_int(), and WM_operatortype_props_advanced_begin().
Referenced by ED_operatortypes_mesh().
| void MESH_OT_wireframe | ( | wmOperatorType * | ot | ) |
Definition at line 7516 of file editmesh_tools.cc.
References ED_operator_editmesh(), edbm_wireframe_exec(), OPTYPE_REGISTER, OPTYPE_UNDO, ot, RNA_def_boolean(), RNA_def_float(), RNA_def_float_distance(), and RNA_def_property_ui_range().
Referenced by ED_operatortypes_mesh().
|
static |
Definition at line 4169 of file editmesh_tools.cc.
References blender::ed::object::add_duplicate(), blender::ed::object::BA_SELECT, blender::ed::object::base_select(), BKE_object_material_array_assign(), BKE_object_material_array_p(), BKE_object_material_len_p(), BM_ALL, BM_custom_loop_normals_from_vector_layer(), BM_mesh_bm_to_me(), BM_mesh_copy_arrays(), BM_mesh_copy_init_customdata(), BM_mesh_copy_init_customdata_all_layers(), BM_mesh_create(), BM_mesh_free(), BM_vert_kill(), Object::data, faces, i, BMesh::lnor_spacearr, Base::object, BMAllocTemplate::totedge, BMAllocTemplate::totface, BMAllocTemplate::totloop, BMAllocTemplate::totvert, U, USER_DUP_ACT, USER_DUP_MESH, and verts.
Referenced by mesh_separate_loose().
|
static |
Definition at line 4356 of file editmesh_tools.cc.
References BM_custom_loop_normals_to_vector_layer(), BM_EDGE, BM_ELEM_SELECT, BM_FACE, BM_mesh_bm_to_me(), BM_mesh_calc_edge_groups_as_arrays(), BM_mesh_elem_hflag_disable_all(), BM_VERT, blender::Array< T, InlineBufferCapacity, Allocator >::data(), Object::data, ED_mesh_geometry_clear(), i, MEM_freeN(), MEM_SAFE_FREE, mesh_separate_arrays(), Base::object, result, BMesh::totedge, BMesh::totface, BMesh::totvert, and BMeshToMeshParams::update_shapekey_indices.
Referenced by edbm_separate_exec().
|
static |
Definition at line 4303 of file editmesh_tools.cc.
References BM_EDGE, BM_elem_flag_enable, BM_ELEM_TAG, BM_FACE, BM_FACE_FIRST_LOOP, BM_FACES_OF_MESH, BM_iter_at_index(), BM_ITER_MESH, BM_mesh_elem_hflag_disable_all(), BM_VERT, BMLoop::e, BMFace::mat_nr, mesh_separate_material_assign_mat_nr(), mesh_separate_tagged(), BMLoop::next, Base::object, result, BMesh::totface, and BMLoop::v.
Referenced by edbm_separate_exec().
Sets an object to a single material. from one of its slots.
Definition at line 4255 of file editmesh_tools.cc.
References BKE_id_material_array_p(), BKE_id_material_clear(), BKE_id_material_len_p(), BKE_id_material_resize(), BKE_objects_materials_sync_length_all(), BLI_assert, Object::data, id_us_plus(), Object::mat, and Object::matbits.
Referenced by mesh_separate_material().
|
static |
Definition at line 4236 of file editmesh_tools.cc.
References BM_EDGE, BM_ELEM_SELECT, BM_ELEM_TAG, BM_FACE, BM_mesh_elem_hflag_disable_all(), BM_mesh_elem_hflag_enable_test(), BM_VERT, and mesh_separate_tagged().
Referenced by edbm_separate_exec().
|
static |
TODO: Use mesh_separate_arrays since it's more efficient.
Definition at line 4115 of file editmesh_tools.cc.
References blender::ed::object::add_duplicate(), blender::ed::object::BA_SELECT, blender::ed::object::base_select(), BKE_object_material_array_assign(), BKE_object_material_array_p(), BKE_object_material_len_p(), BM_EDGE, BM_ELEM_SELECT, BM_ELEM_TAG, BM_FACE, bm_mesh_allocsize_default, BM_mesh_bm_to_me(), BM_mesh_copy_init_customdata(), BM_mesh_create(), BM_mesh_elem_hflag_disable_all(), BM_mesh_elem_toolflags_ensure(), BM_mesh_free(), BM_mesh_normals_update(), BM_VERT, BMO_FLAG_DEFAULTS, BMO_FLAG_RESPECT_HIDE, BMO_op_callf(), Object::data, DEL_FACES, Base::object, U, BMeshCreateParams::use_toolflags, USER_DUP_ACT, and USER_DUP_MESH.
Referenced by mesh_separate_material(), and mesh_separate_selected().
|
static |
Definition at line 2945 of file editmesh_tools.cc.
References BMEditMesh::bm, BM_elem_flag_set, BM_elem_flag_test, BM_ELEM_SELECT, BM_ELEM_SMOOTH, BM_FACES_OF_MESH, and BM_ITER_MESH.
Referenced by edbm_faces_shade_flat_exec(), edbm_faces_shade_smooth_exec(), and normals_split_merge().
|
static |
Definition at line 7791 of file editmesh_tools.cc.
References AUTO_MERGE, ToolSettings::automerge, BKE_editmesh_from_object(), BKE_view_layer_array_from_objects_in_edit_mode_unique_data(), BMEditMesh::bm, BM_ALL_NOLOOP, BM_ELEM_SELECT, BMO_op_exec(), BMO_slot_buffer_hflag_enable(), C, CTX_data_scene(), CTX_data_view_layer(), CTX_wm_view3d(), ToolSettings::doublimit, EDBM_automerge_connected(), EDBM_flag_disable_all(), EDBM_op_finish(), EDBM_op_init(), EDBM_selectmode_flush(), EDBM_update(), EDBM_uvselect_clear(), OPERATOR_FINISHED, params, wmOperator::ptr, RNA_enum_get(), RNA_float_get(), BMOperator::slots_out, Scene::toolsettings, and BMesh::totvertsel.
Referenced by MESH_OT_symmetrize().
|
static |
Definition at line 7881 of file editmesh_tools.cc.
References BKE_editmesh_from_object(), BKE_reportf(), BKE_view_layer_array_from_objects_in_edit_mode_unique_data(), bm, BMEditMesh::bm, BM_elem_flag_enable, BM_elem_flag_test, BM_ELEM_SELECT, BM_ELEM_TAG, BM_ITER_MESH_INDEX, BM_mesh_elem_hflag_disable_all(), BM_mesh_elem_table_ensure(), BM_VERT, BM_vert_at_index(), BM_VERTS_OF_MESH, C, BMVert::co, copy_v3_v3(), CTX_data_scene(), CTX_data_view_layer(), CTX_wm_view3d(), EDBM_update(), EDBM_verts_mirror_cache_begin_ex(), eps, fabsf, i, interp_v3_v3v3(), len_squared_v3v3(), MEM_freeN(), MEM_malloc_arrayN(), OPERATOR_CANCELLED, OPERATOR_FINISHED, params, wmOperator::ptr, wmOperator::reports, RNA_boolean_get(), RNA_enum_get(), RNA_float_get(), RPT_INFO, RPT_WARNING, blender::ed::object::shape_key_report_if_locked(), BMesh::totvertsel, and v.
Referenced by MESH_OT_symmetry_snap().
|
static |
Definition at line 8820 of file editmesh_tools.cc.
References add_v3_v3(), BKE_lnor_space_custom_normal_to_data(), BLI_assert, BLI_SMALLSTACK_DECLARE, BLI_SMALLSTACK_IS_EMPTY, BLI_SMALLSTACK_POP, BLI_SMALLSTACK_PUSH, bm, BM_elem_flag_enable, BM_elem_flag_test, BM_elem_index_get, BM_ELEM_TAG, BM_normals_loops_edges_tag(), BMLoopNorEditData::clnors_data, CLNORS_VALID_VEC_LEN, MLoopNorSpace::flags, i, l, BMLoopNorEditDataArray::lidx_to_lnor_editdata, LinkNode::link, BMLoopNorEditDataArray::lnor_editdata, BMLoopNorEditData::loop, BMLoopNorEditData::loop_index, MLoopNorSpace::loops, MLNOR_SPACE_IS_SINGLE, MLNOR_SPACEARR_BMLOOP_PTR, LinkNode::next, BMLoopNorEditData::nloc, normalize_v3(), BMLoopNorEditDataArray::totloop, and zero_v3().
Referenced by normals_split_merge().
|
static |
Definition at line 8865 of file editmesh_tools.cc.
References add_v3_v3(), BKE_lnor_space_custom_normal_to_data(), BLI_assert, BLI_SMALLSTACK_DECLARE, BLI_SMALLSTACK_IS_EMPTY, BLI_SMALLSTACK_POP, BLI_SMALLSTACK_PUSH, bm, BM_ELEM_CD_GET_VOID_P, BM_elem_flag_test, BM_elem_index_get, BM_ELEM_SELECT, BM_ELEM_TAG, BM_FACE_FIRST_LOOP, BM_FACES_OF_MESH, BM_ITER_MESH, BM_loop_check_cyclic_smooth_fan(), BM_normals_loops_edges_tag(), BM_vert_step_fan_loop(), CD_PROP_INT16_2D, CLNORS_VALID_VEC_LEN, CustomData_get_offset_named(), BMLoop::e, BMLoop::f, l, MLNOR_SPACEARR_BMLOOP_PTR, BMLoop::next, BMFace::no, normalize_v3(), BMLoop::prev, UNUSED_VARS_NDEBUG, BMLoop::v, and zero_v3().
Referenced by normals_split_merge().
|
static |
Definition at line 8940 of file editmesh_tools.cc.
References BKE_editmesh_from_object(), BKE_editmesh_lnorspace_update(), BKE_view_layer_array_from_objects_in_edit_mode_unique_data(), bm, BMEditMesh::bm, BM_EDGES_OF_MESH, BM_elem_flag_set, BM_elem_flag_test, BM_ELEM_SELECT, BM_ELEM_SMOOTH, BM_ITER_MESH, BM_loop_normal_editdata_array_free(), BM_loop_normal_editdata_array_init(), BM_SPACEARR_DIRTY_ALL, C, CTX_data_scene(), CTX_data_view_layer(), CTX_wm_view3d(), e, EDBM_update(), mesh_set_smooth_faces(), normals_merge(), normals_split(), OPERATOR_FINISHED, and params.
Referenced by edbm_merge_normals_exec(), and edbm_split_normals_exec().
|
static |
Definition at line 9472 of file editmesh_tools.cc.
References EDBM_CLNOR_TOOLS_PASTE, ptr, RNA_enum_get(), RNA_property_identifier(), and STREQ.
Referenced by edbm_normals_tools_ui().
|
static |
Definition at line 8413 of file editmesh_tools.cc.
References add_v3_v3(), BKE_editmesh_from_object(), BKE_lnor_space_custom_normal_to_data(), bm, BMEditMesh::bm, bmesh_selected_verts_center_calc(), C, BMLoopNorEditData::clnors_data, CLNORS_VALID_VEC_LEN, copy_v3_v3(), CTX_data_edit_object(), wmOperator::customdata, i, BMLoopNorEditDataArray::lnor_editdata, BMLoopNorEditData::loc, Object::loc, BMLoopNorEditData::loop_index, mul_v3_fl(), mul_v3_v3fl(), negate_v3(), BMLoopNorEditData::niloc, BMLoopNorEditData::nloc, normalize_v3(), wmOperator::ptr, RNA_boolean_get(), RNA_float_get(), sub_v3_v3(), sub_v3_v3v3(), and BMLoopNorEditDataArray::totloop.
Referenced by edbm_point_normals_exec(), and edbm_point_normals_modal().
|
static |
Definition at line 8356 of file editmesh_tools.cc.
References C, ED_workspace_status_text(), and point_normals_free().
Referenced by edbm_point_normals_exec(), edbm_point_normals_invoke(), edbm_point_normals_modal(), and MESH_OT_point_normals().
|
static |
Definition at line 8727 of file editmesh_tools.cc.
References ptr, RNA_boolean_get(), RNA_property_identifier(), and STREQ.
Referenced by edbm_point_normals_ui().
|
static |
Definition at line 8339 of file editmesh_tools.cc.
References C, wmOperator::customdata, and point_normals_init().
Referenced by edbm_point_normals_modal().
|
static |
Definition at line 8347 of file editmesh_tools.cc.
References BM_loop_normal_editdata_array_free(), and wmOperator::customdata.
Referenced by edbm_point_normals_modal(), and point_normals_cancel().
|
static |
Definition at line 8325 of file editmesh_tools.cc.
References BKE_editmesh_from_object(), BKE_editmesh_lnorspace_update(), bm, BMEditMesh::bm, BM_loop_normal_editdata_array_init(), C, CTX_data_edit_object(), wmOperator::customdata, and BMLoopNorEditDataArray::totloop.
Referenced by edbm_point_normals_exec(), edbm_point_normals_invoke(), and point_normals_ensure().
| wmKeyMap * point_normals_modal_keymap | ( | wmKeyConfig * | keyconf | ) |
Called in transform_ops.cc, on each regeneration of key-maps.
Definition at line 8238 of file editmesh_tools.cc.
References EDBM_CLNOR_MODAL_CANCEL, EDBM_CLNOR_MODAL_CONFIRM, EDBM_CLNOR_MODAL_POINTTO_ALIGN, EDBM_CLNOR_MODAL_POINTTO_INVERT, EDBM_CLNOR_MODAL_POINTTO_RESET, EDBM_CLNOR_MODAL_POINTTO_SET_USE_3DCURSOR, EDBM_CLNOR_MODAL_POINTTO_SET_USE_SELECTED, EDBM_CLNOR_MODAL_POINTTO_SPHERIZE, EDBM_CLNOR_MODAL_POINTTO_USE_MOUSE, EDBM_CLNOR_MODAL_POINTTO_USE_OBJECT, EDBM_CLNOR_MODAL_POINTTO_USE_PIVOT, wmKeyMap::modal_items, WM_modalkeymap_assign(), WM_modalkeymap_ensure(), and WM_modalkeymap_find().
Referenced by ED_keymap_mesh().
|
static |
Definition at line 8362 of file editmesh_tools.cc.
References C, EDBM_CLNOR_MODAL_CANCEL, EDBM_CLNOR_MODAL_CONFIRM, EDBM_CLNOR_MODAL_POINTTO_ALIGN, EDBM_CLNOR_MODAL_POINTTO_INVERT, EDBM_CLNOR_MODAL_POINTTO_RESET, EDBM_CLNOR_MODAL_POINTTO_SET_USE_3DCURSOR, EDBM_CLNOR_MODAL_POINTTO_SET_USE_SELECTED, EDBM_CLNOR_MODAL_POINTTO_SPHERIZE, EDBM_CLNOR_MODAL_POINTTO_USE_MOUSE, EDBM_CLNOR_MODAL_POINTTO_USE_OBJECT, EDBM_CLNOR_MODAL_POINTTO_USE_PIVOT, EDBM_CLNOR_POINTTO_MODE_MOUSE, IFACE_, wmOperator::ptr, RNA_boolean_get(), RNA_enum_get(), status, and wmOperator::type.
Referenced by edbm_point_normals_invoke(), and edbm_point_normals_modal().
|
static |
Definition at line 3946 of file editmesh_tools.cc.
References BKE_editmesh_from_object(), BMEditMesh::bm, C, CD_SHAPEKEY, CTX_data_edit_object(), CustomData_has_layer(), EnumPropertyItem::identifier, CustomData::layers, CustomDataLayer::name, EnumPropertyItem::name, OB_MESH, RNA_enum_item_add(), RNA_enum_item_end(), CustomData::totlayer, CustomDataLayer::type, Object::type, EnumPropertyItem::value, and BMesh::vdata.
Referenced by MESH_OT_blend_from_shape().
|
static |
Definition at line 3714 of file editmesh_tools.cc.
References BMEditMesh::bm, BM_elem_flag_test, BM_ELEM_HIDDEN, BM_ELEM_SELECT, BM_ITER_MESH, BM_VERTS_OF_MESH, CD_SHAPEKEY, BMVert::co, copy_v3_v3(), CustomData_bmesh_get_n(), CustomData_has_layer(), CustomData_number_of_layers(), BMHeader::data, EDBM_verts_mirror_get(), BMVert::head, i, and BMesh::vdata.
Referenced by edbm_shape_propagate_to_all_exec().
|
static |
Definition at line 6563 of file editmesh_tools.cc.
References BKE_editmesh_from_object(), BLI_rng_free(), BLI_rng_get_float(), BLI_rng_new_srandom(), BMEditMesh::bm, BM_EDGE, BM_EDGES_OF_MESH, BM_elem_flag_test, BM_FACE, BM_face_calc_center_median(), BM_FACES_OF_MESH, BM_ITER_MESH_INDEX, BM_mesh_remap(), BM_VERT, BM_VERTS_OF_MESH, bmelemsort_comp(), C, BMVert::co, copy_v3_v3(), Scene::cursor, Object::data, DEG_id_tag_update(), EDBM_update(), ELEM, flag, float, i, ID_RECALC_GEOMETRY, invert_m4_m4(), len_squared_v3v3(), View3DCursor::location, BMFace::mat_nr, MAXMAT, MEM_calloc_arrayN(), MEM_freeN(), MEM_malloc_arrayN(), mid_v3_v3v3(), mul_m4_m4m4(), mul_m4_v3(), mul_v3_m4v3(), NC_GEOM, ND_DATA, BMElemSort::org_idx, params, seed, SRT_CURSOR_DISTANCE, SRT_MATERIAL, SRT_RANDOMIZE, SRT_REVERSE, SRT_SELECTED, SRT_VIEW_XAXIS, SRT_VIEW_ZAXIS, BMesh::totedge, BMesh::totface, BMesh::totvert, types, BMEdge::v1, BMEdge::v2, RegionView3D::viewmat, and WM_event_add_notifier().
Referenced by edbm_sort_elements_exec().
|
static |
Definition at line 9046 of file editmesh_tools.cc.
Referenced by MESH_OT_average_normals().
|
static |
Definition at line 8314 of file editmesh_tools.cc.
Referenced by MESH_OT_point_normals().
|
static |
Definition at line 3478 of file editmesh_tools.cc.
Referenced by merge_type_itemf(), and MESH_OT_merge().
|
static |
Definition at line 9300 of file editmesh_tools.cc.
Referenced by MESH_OT_normals_tools().
|
static |
Definition at line 141 of file editmesh_tools.cc.
Referenced by MESH_OT_subdivide().
|
static |
Definition at line 9832 of file editmesh_tools.cc.
Referenced by MESH_OT_mod_weighted_strength().