|
Blender V4.3
|
Classes | |
| struct | TrimOperation |
Enumerations | |
| enum class | OperationType { Intersect = 0 , Difference = 1 , Union = 2 , Join = 3 } |
| enum class | OrientationType { View = 0 , Surface = 1 } |
| enum class | ExtrudeMode { Project = 0 , Fixed = 1 } |
| enum class | SolverMode { Exact = 0 , Fast = 1 } |
Variables | |
| static EnumPropertyItem | operation_types [] |
| static EnumPropertyItem | orientation_types [] |
| static EnumPropertyItem | extrude_modes [] |
| static EnumPropertyItem | solver_modes [] |
|
strong |
| Enumerator | |
|---|---|
| Project | |
| Fixed | |
Definition at line 90 of file sculpt_trim.cc.
|
strong |
| Enumerator | |
|---|---|
| Intersect | |
| Difference | |
| Union | |
| Join | |
Definition at line 48 of file sculpt_trim.cc.
|
strong |
| Enumerator | |
|---|---|
| View | |
| Surface | |
Definition at line 72 of file sculpt_trim.cc.
|
strong |
| Enumerator | |
|---|---|
| Exact | |
| Fast | |
Definition at line 109 of file sculpt_trim.cc.
|
static |
Definition at line 536 of file sculpt_trim.cc.
References BKE_mesh_from_bmesh_nomain(), BKE_mesh_from_object(), BKE_mesh_nomain_to_mesh(), BLI_assert, bm, BM_ELEM_DRAW, BM_elem_flag_enable, bm_face_isect_pair(), BM_FACES_OF_MESH, BM_ITER_MESH, BM_mesh_bm_from_me(), BM_mesh_boolean(), BM_mesh_calc_tessellation_beauty(), BM_mesh_create(), BM_mesh_free(), BM_mesh_intersect(), BMALLOC_TEMPLATE_FROM_ME, BMeshFromMeshParams::calc_face_normal, BMeshToMeshParams::calc_object_remap, Object::data, Difference, eBooleanModifierOp_Difference, eBooleanModifierOp_Intersect, eBooleanModifierOp_Union, Exact, Mesh::faces_num, Intersect, Join, blender::ed::sculpt_paint::trim::TrimOperation::mesh, blender::ed::sculpt_paint::trim::TrimOperation::mode, normalize_v3(), ViewContext::obact, blender::ed::sculpt_paint::gesture::GestureData::operation, poly_to_tri_count(), blender::ed::sculpt_paint::trim::TrimOperation::solver_mode, Mesh::totcol, BMesh::totface, BMesh::totloop, Union, BMeshCreateParams::use_toolflags, and blender::ed::sculpt_paint::gesture::GestureData::vc.
Referenced by gesture_apply_for_symmetry_pass().
Definition at line 531 of file sculpt_trim.cc.
References BM_ELEM_DRAW, and BM_elem_flag_test.
Referenced by apply_trim().
|
static |
Definition at line 290 of file sculpt_trim.cc.
References BKE_object_boundbox_get(), blender::math::distance(), blender::Bounds< T >::max, blender::Bounds< T >::min, ViewContext::obact, paint_convert_bb_to_rect(), ViewContext::region, ViewContext::rv3d, blender::ed::sculpt_paint::gesture::GestureData::vc, rcti::xmax, rcti::xmin, rcti::ymax, and rcti::ymin.
Referenced by gesture_to_screen_points().
|
static |
Definition at line 205 of file sculpt_trim.cc.
References BKE_brush_size_get(), BKE_brush_unprojected_radius_get(), BKE_brush_use_locked_size(), BKE_paint_brush(), ViewContext::C, CTX_data_scene(), CTX_data_tool_settings(), SculptSession::cursor_radius, ViewContext::depsgraph, dist_signed_to_plane_v3(), FLT_MAX, get_origin_and_normal(), blender::ed::sculpt_paint::trim::TrimOperation::initial_hit, blender::ed::sculpt_paint::trim::TrimOperation::initial_location, mul_v3_m4v3(), ViewContext::obact, blender::ed::sculpt_paint::gesture::GestureData::operation, blender::ed::sculpt_paint::trim::TrimOperation::orientation, Sculpt::paint, paint_calc_object_space_radius(), plane_from_point_normal_v3(), blender::MatBase< T, NumCol, NumRow, Alignment >::ptr(), ToolSettings::sculpt, blender::ed::sculpt_paint::gesture::GestureData::ss, blender::math::transform_point(), blender::ed::sculpt_paint::trim::TrimOperation::use_cursor_depth, blender::ed::sculpt_paint::gesture::GestureData::vc, blender::bke::pbvh::vert_positions_eval(), and View.
Referenced by generate_geometry().
|
static |
Definition at line 762 of file sculpt_trim.cc.
References CTX_data_active_object(), blender::bke::pbvh::Mesh, blender::bke::object::pbvh_get(), report_invalid_mode(), and blender::bke::pbvh::Tree::type().
Referenced by gesture_box_exec(), gesture_lasso_exec(), gesture_line_exec(), and gesture_polyline_exec().
|
static |
Definition at line 738 of file sculpt_trim.cc.
References BKE_base_is_visible(), CTX_data_active_base(), and CTX_wm_view3d().
Referenced by gesture_box_invoke(), gesture_lasso_invoke(), gesture_line_invoke(), and gesture_polyline_invoke().
|
static |
Definition at line 645 of file sculpt_trim.cc.
References BKE_id_free(), MEM_freeN(), blender::ed::sculpt_paint::trim::TrimOperation::mesh, blender::ed::sculpt_paint::gesture::GestureData::operation, and blender::ed::sculpt_paint::trim::TrimOperation::true_mesh_co.
Referenced by gesture_end().
|
static |
Definition at line 338 of file sculpt_trim.cc.
References BKE_mesh_new_nomain(), BLI_assert, BLI_polyfill_calc(), calculate_depth(), copy_v3_v3(), blender::Array< T, InlineBufferCapacity, Allocator >::data(), dist_signed_to_plane_v3(), ED_view3d_win_to_3d(), ED_view3d_win_to_3d_on_plane(), blender::ed::sculpt_paint::trim::TrimOperation::extrude_mode, blender::bke::mesh::face_triangles_num(), Fixed, float, gesture_to_screen_points(), get_origin_and_normal(), blender::Array< T, InlineBufferCapacity, Allocator >::index_range(), madd_v3_v3fl(), madd_v3_v3v3fl(), MEM_malloc_arrayN, blender::ed::sculpt_paint::trim::TrimOperation::mesh, blender::bke::mesh_calc_edges(), blender::bke::mesh_smooth_set(), mul_v3_m4v3(), ViewContext::obact, blender::ed::sculpt_paint::gesture::GestureData::operation, blender::ed::sculpt_paint::trim::TrimOperation::orientation, plane_from_point_normal_v3(), Project, ViewContext::region, blender::Array< T, InlineBufferCapacity, Allocator >::size(), blender::ed::sculpt_paint::trim::TrimOperation::true_mesh_co, update_normals(), blender::ed::sculpt_paint::trim::TrimOperation::use_cursor_depth, ViewContext::v3d, blender::ed::sculpt_paint::gesture::GestureData::vc, and View.
Referenced by gesture_begin().
|
static |
Definition at line 633 of file sculpt_trim.cc.
References apply_trim(), blender::ed::sculpt_paint::trim::TrimOperation::mesh, blender::ed::sculpt_paint::gesture::GestureData::operation, blender::ed::sculpt_paint::symmetry_flip(), blender::ed::sculpt_paint::gesture::GestureData::symmpass, blender::ed::sculpt_paint::trim::TrimOperation::true_mesh_co, update_normals(), and Mesh::verts_num.
Referenced by init_operation().
|
static |
Definition at line 509 of file sculpt_trim.cc.
References BKE_sculpt_update_object_for_edit(), BLI_assert_unreachable, blender::ed::sculpt_paint::face_set::create_face_sets_mesh(), CTX_data_ensure_evaluated_depsgraph(), CTX_data_scene(), depsgraph, generate_geometry(), blender::ed::sculpt_paint::undo::geometry_begin(), blender::ed::sculpt_paint::islands::invalidate(), blender::bke::pbvh::Mesh, ViewContext::obact, blender::bke::object::pbvh_get(), blender::bke::pbvh::Tree::type(), and blender::ed::sculpt_paint::gesture::GestureData::vc.
Referenced by init_operation().
|
static |
Definition at line 802 of file sculpt_trim.cc.
References blender::ed::sculpt_paint::gesture::apply(), can_exec(), blender::ed::sculpt_paint::gesture::init_from_box(), init_operation(), initialize_cursor_info(), OPERATOR_CANCELLED, OPERATOR_FINISHED, and wmOperator::reports.
Referenced by SCULPT_OT_trim_box_gesture().
|
static |
Definition at line 822 of file sculpt_trim.cc.
References can_invoke(), wmEvent::mval, OPERATOR_CANCELLED, wmOperator::ptr, RNA_int_set_array(), and WM_gesture_box_invoke().
Referenced by SCULPT_OT_trim_box_gesture().
|
static |
Definition at line 652 of file sculpt_trim.cc.
References BKE_mesh_batch_cache_dirty_tag(), BKE_MESH_BATCH_DIRTY_ALL, BKE_sculptsession_free_pbvh(), DEG_id_tag_update(), blender::ed::sculpt_paint::face_set::find_next_available_id(), free_geometry(), blender::ed::sculpt_paint::undo::geometry_end(), Object::id, ID_RECALC_GEOMETRY, blender::ed::sculpt_paint::face_set::initialize_none_to_id(), ViewContext::obact, and blender::ed::sculpt_paint::gesture::GestureData::vc.
Referenced by init_operation().
|
static |
Definition at line 833 of file sculpt_trim.cc.
References blender::ed::sculpt_paint::gesture::apply(), can_exec(), blender::ed::sculpt_paint::gesture::init_from_lasso(), init_operation(), initialize_cursor_info(), OPERATOR_CANCELLED, OPERATOR_FINISHED, and wmOperator::reports.
Referenced by SCULPT_OT_trim_lasso_gesture().
|
static |
Definition at line 853 of file sculpt_trim.cc.
References can_invoke(), wmEvent::mval, OPERATOR_CANCELLED, wmOperator::ptr, RNA_int_set_array(), and WM_gesture_lasso_invoke().
Referenced by SCULPT_OT_trim_lasso_gesture().
|
static |
Definition at line 864 of file sculpt_trim.cc.
References blender::ed::sculpt_paint::gesture::apply(), can_exec(), blender::ed::sculpt_paint::gesture::init_from_line(), init_operation(), initialize_cursor_info(), OPERATOR_CANCELLED, OPERATOR_FINISHED, and wmOperator::reports.
Referenced by SCULPT_OT_trim_line_gesture().
|
static |
Definition at line 884 of file sculpt_trim.cc.
References can_invoke(), wmEvent::mval, OPERATOR_CANCELLED, wmOperator::ptr, RNA_int_set_array(), and WM_gesture_straightline_active_side_invoke().
Referenced by SCULPT_OT_trim_line_gesture().
|
static |
Definition at line 895 of file sculpt_trim.cc.
References blender::ed::sculpt_paint::gesture::apply(), can_exec(), blender::ed::sculpt_paint::gesture::init_from_polyline(), init_operation(), initialize_cursor_info(), OPERATOR_CANCELLED, OPERATOR_FINISHED, and wmOperator::reports.
Referenced by SCULPT_OT_trim_polyline_gesture().
|
static |
Definition at line 915 of file sculpt_trim.cc.
References can_invoke(), wmEvent::mval, OPERATOR_CANCELLED, wmOperator::ptr, RNA_int_set_array(), and WM_gesture_polyline_invoke().
Referenced by SCULPT_OT_trim_polyline_gesture().
|
static |
Definition at line 308 of file sculpt_trim.cc.
References calc_expand_factor(), blender::ed::sculpt_paint::gesture::LineData::flip, blender::ed::sculpt_paint::gesture::GestureData::gesture_points, blender::ed::sculpt_paint::gesture::Line, blender::ed::sculpt_paint::gesture::GestureData::line, blender::math::normalize(), blender::ed::sculpt_paint::gesture::GestureData::shape_type, and blender::ed::sculpt_paint::gesture::LineData::use_side_planes.
Referenced by generate_geometry().
|
static |
Definition at line 175 of file sculpt_trim.cc.
References copy_v3_v3(), blender::ed::sculpt_paint::trim::TrimOperation::initial_location, blender::ed::sculpt_paint::trim::TrimOperation::initial_normal, mul_mat3_m4_v3(), mul_v3_m4v3(), negate_v3(), ViewContext::obact, blender::ed::sculpt_paint::gesture::GestureData::operation, blender::ed::sculpt_paint::trim::TrimOperation::orientation, Surface, blender::ed::sculpt_paint::gesture::GestureData::vc, View, and blender::ed::sculpt_paint::gesture::GestureData::world_space_view_normal.
Referenced by calculate_depth(), and generate_geometry().
|
static |
Definition at line 669 of file sculpt_trim.cc.
References blender::ed::sculpt_paint::gesture::Operation::apply_for_symmetry_pass, blender::ed::sculpt_paint::gesture::Operation::begin, Difference, blender::ed::sculpt_paint::gesture::Operation::end, blender::ed::sculpt_paint::trim::TrimOperation::extrude_mode, gesture_apply_for_symmetry_pass(), gesture_begin(), gesture_end(), blender::ed::sculpt_paint::trim::TrimOperation::initial_hit, blender::ed::sculpt_paint::gesture::Line, blender::ed::sculpt_paint::trim::TrimOperation::mode, blender::ed::sculpt_paint::trim::TrimOperation::op, blender::ed::sculpt_paint::gesture::GestureData::operation, blender::ed::sculpt_paint::trim::TrimOperation::orientation, wmOperator::ptr, RNA_boolean_get(), RNA_enum_get(), blender::ed::sculpt_paint::gesture::GestureData::shape_type, blender::ed::sculpt_paint::trim::TrimOperation::solver_mode, blender::ed::sculpt_paint::trim::TrimOperation::use_cursor_depth, and View.
Referenced by gesture_box_exec(), gesture_lasso_exec(), gesture_line_exec(), and gesture_polyline_exec().
|
static |
Definition at line 780 of file sculpt_trim.cc.
References copy_v3_v3(), CTX_data_active_object(), float, blender::ed::sculpt_paint::trim::TrimOperation::initial_hit, blender::ed::sculpt_paint::trim::TrimOperation::initial_location, blender::ed::sculpt_paint::trim::TrimOperation::initial_normal, SculptCursorGeometryInfo::location, SculptCursorGeometryInfo::normal, blender::ed::sculpt_paint::gesture::GestureData::operation, wmOperator::ptr, RNA_int_get_array(), SCULPT_cursor_geometry_info_update(), and SCULPT_vertex_random_access_ensure().
Referenced by gesture_box_exec(), gesture_lasso_exec(), gesture_line_exec(), and gesture_polyline_exec().
|
static |
Definition at line 694 of file sculpt_trim.cc.
References Difference, extrude_modes, Fast, Fixed, operation_types, orientation_types, ot, PROP_HIDDEN, PROP_SKIP_SAVE, RNA_def_boolean(), RNA_def_enum(), RNA_def_int_vector(), RNA_def_property_flag(), solver_modes, wmOperatorType::srna, and View.
Referenced by SCULPT_OT_trim_box_gesture(), SCULPT_OT_trim_lasso_gesture(), SCULPT_OT_trim_line_gesture(), and SCULPT_OT_trim_polyline_gesture().
|
static |
Definition at line 749 of file sculpt_trim.cc.
References BKE_report(), BLI_assert_unreachable, blender::bke::pbvh::BMesh, blender::bke::pbvh::Grids, and RPT_ERROR.
Referenced by can_exec().
| void blender::ed::sculpt_paint::trim::SCULPT_OT_trim_box_gesture | ( | wmOperatorType * | ot | ) |
Definition at line 947 of file sculpt_trim.cc.
References blender::ed::sculpt_paint::gesture::Box, wmOperatorType::description, wmOperatorType::exec, wmOperatorType::flag, gesture_box_exec(), gesture_box_invoke(), wmOperatorType::idname, wmOperatorType::invoke, wmOperatorType::modal, wmOperatorType::name, blender::ed::sculpt_paint::gesture::operator_properties(), operator_properties(), OPTYPE_REGISTER, ot, wmOperatorType::poll, SCULPT_mode_poll_view3d(), WM_gesture_box_modal(), and WM_operator_properties_border().
Referenced by blender::ed::sculpt_paint::operatortypes_sculpt().
| void blender::ed::sculpt_paint::trim::SCULPT_OT_trim_lasso_gesture | ( | wmOperatorType * | ot | ) |
Definition at line 926 of file sculpt_trim.cc.
References wmOperatorType::description, wmOperatorType::exec, wmOperatorType::flag, gesture_lasso_exec(), gesture_lasso_invoke(), wmOperatorType::idname, wmOperatorType::invoke, blender::ed::sculpt_paint::gesture::Lasso, wmOperatorType::modal, wmOperatorType::name, blender::ed::sculpt_paint::gesture::operator_properties(), operator_properties(), OPTYPE_DEPENDS_ON_CURSOR, OPTYPE_REGISTER, ot, wmOperatorType::poll, SCULPT_mode_poll_view3d(), WM_gesture_lasso_modal(), and WM_operator_properties_gesture_lasso().
Referenced by blender::ed::sculpt_paint::operatortypes_sculpt().
| void blender::ed::sculpt_paint::trim::SCULPT_OT_trim_line_gesture | ( | wmOperatorType * | ot | ) |
Definition at line 969 of file sculpt_trim.cc.
References wmOperatorType::description, wmOperatorType::exec, wmOperatorType::flag, gesture_line_exec(), gesture_line_invoke(), wmOperatorType::idname, wmOperatorType::invoke, blender::ed::sculpt_paint::gesture::Line, wmOperatorType::modal, wmOperatorType::name, blender::ed::sculpt_paint::gesture::operator_properties(), operator_properties(), OPTYPE_REGISTER, ot, wmOperatorType::poll, SCULPT_mode_poll_view3d(), WM_CURSOR_EDIT, WM_gesture_straightline_oneshot_modal(), and WM_operator_properties_gesture_straightline().
Referenced by blender::ed::sculpt_paint::operatortypes_sculpt().
| void blender::ed::sculpt_paint::trim::SCULPT_OT_trim_polyline_gesture | ( | wmOperatorType * | ot | ) |
Definition at line 990 of file sculpt_trim.cc.
References wmOperatorType::description, wmOperatorType::exec, wmOperatorType::flag, gesture_polyline_exec(), gesture_polyline_invoke(), wmOperatorType::idname, wmOperatorType::invoke, blender::ed::sculpt_paint::gesture::Lasso, wmOperatorType::modal, wmOperatorType::name, blender::ed::sculpt_paint::gesture::operator_properties(), operator_properties(), OPTYPE_REGISTER, ot, wmOperatorType::poll, SCULPT_mode_poll_view3d(), WM_gesture_polyline_modal(), and WM_operator_properties_gesture_polyline().
Referenced by blender::ed::sculpt_paint::operatortypes_sculpt().
|
static |
Definition at line 141 of file sculpt_trim.cc.
References BKE_id_free(), BKE_mesh_from_bmesh_nomain(), bm, BM_EDGE, BM_ELEM_TAG, BM_FACE, BM_mesh_bm_from_me(), BM_mesh_create(), BM_mesh_elem_hflag_disable_all(), BM_mesh_elem_hflag_enable_all(), BM_mesh_free(), BM_VERT, BMALLOC_TEMPLATE_FROM_ME, BMO_FLAG_DEFAULTS, BMO_FLAG_RESPECT_HIDE, BMO_op_callf(), BMeshFromMeshParams::calc_face_normal, BMeshToMeshParams::calc_object_remap, blender::ed::sculpt_paint::trim::TrimOperation::mesh, blender::ed::sculpt_paint::gesture::GestureData::operation, result, and BMeshCreateParams::use_toolflags.
Referenced by generate_geometry(), and gesture_apply_for_symmetry_pass().
|
static |
Definition at line 95 of file sculpt_trim.cc.
Referenced by operator_properties().
|
static |
Definition at line 57 of file sculpt_trim.cc.
Referenced by operator_properties().
|
static |
Definition at line 76 of file sculpt_trim.cc.
Referenced by operator_properties().
|
static |
Definition at line 114 of file sculpt_trim.cc.
Referenced by operator_properties().