|
Blender V4.5
|
#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_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_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 8262 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 81 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 420 of file editmesh_tools.cc.
| anonymous enum |
| Enumerator | |
|---|---|
| EDBM_CLNOR_POINTTO_MODE_COORDINATES | |
| EDBM_CLNOR_POINTTO_MODE_MOUSE | |
Definition at line 8270 of file editmesh_tools.cc.
| anonymous enum |
Definition at line 6495 of file editmesh_tools.cc.
| anonymous enum |
| Enumerator | |
|---|---|
| EDBM_CLNOR_AVERAGE_LOOP | |
| EDBM_CLNOR_AVERAGE_FACE_AREA | |
| EDBM_CLNOR_AVERAGE_ANGLE | |
Definition at line 9001 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 3255 of file editmesh_tools.cc.
| anonymous enum |
| Enumerator | |
|---|---|
| MESH_SEPARATE_SELECTED | |
| MESH_SEPARATE_MATERIAL | |
| MESH_SEPARATE_LOOSE | |
Definition at line 4053 of file editmesh_tools.cc.
| anonymous enum |
Definition at line 8181 of file editmesh_tools.cc.
| anonymous enum |
| Enumerator | |
|---|---|
| MESH_BRIDGELOOP_SINGLE | |
| MESH_BRIDGELOOP_CLOSED | |
| MESH_BRIDGELOOP_PAIRS | |
Definition at line 7158 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 9253 of file editmesh_tools.cc.
|
static |
Definition at line 9173 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 4625 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 565 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 1350 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 1371 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 1477 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 1333 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 6520 of file editmesh_tools.cc.
References BMElemSort::srt, and v2.
Referenced by sort_bmelem_flag().
|
static |
Definition at line 8358 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 6094 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 733 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 913 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 775 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 870 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 754 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 9026 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, 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 9193 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 uiLayoutSetPropSep().
Referenced by MESH_OT_average_normals().
|
static |
Definition at line 5131 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 3774 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 3925 of file editmesh_tools.cc.
References C, CTX_data_edit_object(), Object::data, Mesh::key, wmOperator::layout, uiLayout::prop(), wmOperator::ptr, RNA_id_pointer_create(), UI_ITEM_NONE, uiItemPointerR(), uiLayoutSetPropDecorate(), and uiLayoutSetPropSep().
Referenced by MESH_OT_blend_from_shape().
|
static |
Definition at line 7341 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 7206 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 7164 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 683 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 1183 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 5753 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 5629 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(), 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 5758 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, uiLayoutSetActive(), and uiLayoutSetPropSep().
Referenced by MESH_OT_decimate().
|
static |
Definition at line 6349 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(), 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 440 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 579 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 6270 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(), EDBM_update(), OPERATOR_FINISHED, params, wmOperator::ptr, wmOperator::reports, and RNA_float_get().
Referenced by MESH_OT_dissolve_degenerate().
|
static |
Definition at line 5941 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 6009 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 6147 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 6071 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 5856 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 5848 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 5840 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 5826 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 5876 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 2769 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 2626 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 1984 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 2036 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 2306 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 1919 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 1817 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(), EDBM_update(), and params.
Referenced by edbm_edge_split_exec().
|
static |
Definition at line 1844 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(), 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 1751 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 2963 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 2918 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 4537 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 4926 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 4649 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 4889 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 4815 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().
|
static |
Definition at line 4630 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 5068 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 2166 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 2247 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 2204 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 2193 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 2229 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 2435 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_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 1028 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 1106 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 3370 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 8955 of file editmesh_tools.cc.
References C, and normals_split_merge().
Referenced by MESH_OT_merge_normals().
|
static |
Definition at line 9733 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 2559 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 9282 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 9447 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 7532 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 8661 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 8643 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 8428 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 8701 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 uiLayoutSetPropSep().
Referenced by MESH_OT_point_normals().
|
static |
Definition at line 5217 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 5312 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 3530 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 428 of file editmesh_tools.cc.
References BKE_reportf(), reports, and RPT_INFO.
Referenced by edbm_delete_loose_exec(), and edbm_dissolve_degenerate_exec().
|
static |
Definition at line 2513 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 3130 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 3044 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 3076 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 3008 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 4385 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, BMeshFromMeshParams::calc_face_normal, BMeshToMeshParams::calc_object_remap, BMeshFromMeshParams::calc_vert_normal, 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 9500 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(), 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 3689 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 9615 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(), 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 3976 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 6985 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 7053 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 6434 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 8975 of file editmesh_tools.cc.
References C, and normals_split_merge().
Referenced by MESH_OT_split_normals().
|
static |
Definition at line 291 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 87 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 5408 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(), 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 356 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 1630 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 1291 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 1679 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 1538 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_select_history_clear(), bm_vert_connect_select_history(), bm_vert_connect_select_history_edge_to_vert_path(), C, 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 7422 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 2086 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_FIRST_LOOP, BM_FACES_OF_MESH, BM_ITER_MESH, BM_lnorspace_update(), BM_loop_normal_editdata_array_free(), BM_loop_normal_editdata_array_init(), 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 2072 of file editmesh_tools.cc.
References bm, BM_lnorspace_update(), BM_loop_normal_editdata_array_init(), 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 5525 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 3263 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 3314 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(), 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 3444 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 234 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 281 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 9212 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 5181 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 3942 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 7373 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 3229 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 3211 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 5779 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 524 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 6407 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 656 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 6317 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 5984 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 6048 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 6223 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 6120 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 5917 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 2047 of file editmesh_tools.cc.
References ED_operator_editmesh(), edbm_duplicate_exec(), edbm_duplicate_invoke(), ot, RNA_def_int(), and blender::ed::transform::TFM_TRANSLATION.
Referenced by ED_operatortypes_mesh().
| void MESH_OT_edge_collapse | ( | wmOperatorType * | ot | ) |
Definition at line 710 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 1007 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 2411 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 1949 of file editmesh_tools.cc.
References BM_EDGE, BM_VERT, ED_operator_editmesh(), edbm_edge_split_exec(), merge_type_items, 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 1792 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 2987 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 2942 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 4601 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 5026 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 5100 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 2276 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 9825 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 2488 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 1078 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 1150 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 3499 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 8960 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 9800 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 2603 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 9464 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 7587 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 8720 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 5266 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 5370 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 3615 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 2536 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 4505 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 9591 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 3752 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 9702 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 4027 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 7079 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 6471 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 8980 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 147 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 332 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 7799 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 7968 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 5601 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 394 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 3193 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 3175 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 1309 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 1658 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 1715 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 1609 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 2734 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 2856 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 7482 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 4126 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 4323 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 4266 of file editmesh_tools.cc.
References BM_custom_loop_normals_from_vector_layer(), BM_custom_loop_normals_to_vector_layer(), 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 4218 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 4193 of file editmesh_tools.cc.
References 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_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 4060 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_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_copy_init_customdata_all_layers(), 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, BMesh::lnor_spacearr, 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 2902 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 7755 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_ELEM_SELECT, 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_selectmode_flush(), EDBM_update(), OPERATOR_FINISHED, params, wmOperator::ptr, RNA_enum_get(), RNA_float_get(), BMOperator::slots_out, and BMesh::totvertsel.
Referenced by MESH_OT_symmetrize().
|
static |
Definition at line 7836 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 8781 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 8826 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 8901 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 9433 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 8374 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 8317 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 8688 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 8300 of file editmesh_tools.cc.
References C, wmOperator::customdata, and point_normals_init().
Referenced by edbm_point_normals_modal().
|
static |
Definition at line 8308 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 8286 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 8199 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 8323 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_, WorkspaceStatus::opmodal(), wmOperator::ptr, RNA_boolean_get(), RNA_enum_get(), and wmOperator::type.
Referenced by edbm_point_normals_invoke(), and edbm_point_normals_modal().
|
static |
Definition at line 3890 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 3658 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 6529 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, 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 9007 of file editmesh_tools.cc.
Referenced by MESH_OT_average_normals().
|
static |
Definition at line 8275 of file editmesh_tools.cc.
Referenced by MESH_OT_point_normals().
|
static |
Definition at line 3435 of file editmesh_tools.cc.
Referenced by merge_type_itemf(), MESH_OT_edge_split(), and MESH_OT_merge().
|
static |
Definition at line 9261 of file editmesh_tools.cc.
Referenced by MESH_OT_normals_tools().
|
static |
Definition at line 139 of file editmesh_tools.cc.
Referenced by MESH_OT_subdivide().
|
static |
Definition at line 9793 of file editmesh_tools.cc.
Referenced by MESH_OT_mod_weighted_strength().