|
Blender V5.0
|
Public Member Functions | |
| PuffOperationExecutor (const bContext &C) | |
| void | execute (PuffOperation &self, const bContext &C, const StrokeExtension &stroke_extension) |
| void | find_curve_weights_projected_with_symmetry (MutableSpan< float > r_curve_weights) |
| void | find_curve_weights_projected (const float4x4 &brush_transform, MutableSpan< float > r_curve_weights) |
| void | find_curves_weights_spherical_with_symmetry (MutableSpan< float > r_curve_weights) |
| void | find_curves_weights_spherical (const float3 &brush_pos_cu, const float brush_radius_cu, MutableSpan< float > r_curve_weights) |
| void | puff (const IndexMask &selection, const Span< float > curve_weights) |
Utility class that actually executes the update when the stroke is updated. That's useful because it avoids passing a very large number of parameters between functions.
Definition at line 51 of file curves_sculpt_puff.cc.
|
inline |
Definition at line 80 of file curves_sculpt_puff.cc.
|
inline |
Definition at line 82 of file curves_sculpt_puff.cc.
References BKE_brush_radius_get(), BKE_paint_brush_for_read(), BLI_assert_unreachable, brush_, brush_pos_re_, brush_radius_base_re_, blender::ed::sculpt_paint::brush_radius_factor(), brush_radius_factor_, brush_strength_, blender::ed::sculpt_paint::brush_strength_get(), C, corner_normals_su_, ctx_, CTX_data_active_object(), curve_selection_, curves_, curves_id_, curves_sculpt_, CV_SCULPT_COLLISION_ENABLED, DEG_id_tag_update(), ED_region_tag_redraw(), find_curve_weights_projected_with_symmetry(), find_curves_weights_spherical_with_symmetry(), blender::IndexMask::from_predicate(), ID_RECALC_GEOMETRY, blender::ed::sculpt_paint::StrokeExtension::is_first, blender::ed::sculpt_paint::StrokeExtension::mouse_position, NC_GEOM, ND_DATA, OB_MESH, object_, PAINT_FALLOFF_SHAPE_SPHERE, PAINT_FALLOFF_SHAPE_TUBE, blender::bke::Point, point_factors_, puff(), blender::ed::sculpt_paint::remember_stroke_position(), blender::ed::sculpt_paint::report_missing_surface(), blender::ed::sculpt_paint::StrokeExtension::reports, blender::ed::curves::retrieve_selected_curves(), blender::ed::sculpt_paint::sample_curves_3d_brush(), selected_curve_memory_, self, self_, surface_, surface_bvh_, surface_corner_tris_, surface_corner_verts_, surface_ob_, surface_positions_, blender::math::transform_point(), transforms_, U, UNUSED_VARS, USER_ORBIT_SELECTION, and WM_main_add_notifier().
Referenced by blender::ed::sculpt_paint::PuffOperation::on_stroke_extended().
|
inline |
Definition at line 179 of file curves_sculpt_puff.cc.
References BKE_brush_curve_strength(), BLI_SCOPED_DEFER, brush_, brush_pos_re_, brush_radius_base_re_, brush_radius_factor_, ctx_, curve_selection_, curves_, dist_squared_to_line_segment_v2(), blender::IndexRange::drop_front(), ED_view3d_ob_project_mat_get(), ED_view3d_project_float_v2_m4(), blender::bke::crazyspace::get_evaluated_curves_deformation(), blender::math::invert(), blender::math::max_inplace(), object_, blender::bke::crazyspace::GeometryDeformation::positions, pow2f(), and blender::math::transform_point().
Referenced by find_curve_weights_projected_with_symmetry().
|
inline |
Definition at line 170 of file curves_sculpt_puff.cc.
References curves_id_, find_curve_weights_projected(), and blender::ed::sculpt_paint::get_symmetry_brush_transforms().
Referenced by execute().
|
inline |
Definition at line 240 of file curves_sculpt_puff.cc.
References BKE_brush_curve_strength(), brush_, ctx_, curve_selection_, curves_, dist_squared_to_line_segment_v3(), blender::IndexRange::drop_front(), blender::bke::crazyspace::get_evaluated_curves_deformation(), blender::math::max_inplace(), object_, blender::bke::crazyspace::GeometryDeformation::positions, and pow2f().
Referenced by find_curves_weights_spherical_with_symmetry().
|
inline |
Definition at line 220 of file curves_sculpt_puff.cc.
References brush_pos_re_, brush_radius_factor_, ctx_, curves_id_, ED_view3d_win_to_3d(), find_curves_weights_spherical(), blender::ed::sculpt_paint::get_symmetry_brush_transforms(), self_, blender::math::transform_point(), and transforms_.
Referenced by execute().
|
inline |
Definition at line 271 of file curves_sculpt_puff.cc.
References blender::length_parameterize::accumulate_lengths(), BLI_bvhtree_find_nearest(), brush_strength_, BVHTreeNearest::co, blender::geometry::compute_surface_point_normal(), corner_normals_su_, curves_, BVHTreeNearest::dist_sq, blender::math::distance(), blender::IndexRange::drop_front(), FLT_MAX, blender::index_mask::IndexMask::foreach_segment(), i, BVHTreeNearest::index, interp_weights_tri_v3(), blender::math::interpolate(), blender::math::normalize(), point_factors_, blender::Vector< T, InlineBufferCapacity, Allocator >::resize(), blender::IndexRange::size(), blender::MutableSpan< T >::slice(), surface_bvh_, surface_corner_tris_, surface_corner_verts_, surface_positions_, blender::math::transform_direction(), blender::math::transform_point(), and transforms_.
Referenced by execute().
Definition at line 64 of file curves_sculpt_puff.cc.
Referenced by execute(), find_curve_weights_projected(), and find_curves_weights_spherical().
| float2 blender::ed::sculpt_paint::PuffOperationExecutor::brush_pos_re_ |
Definition at line 68 of file curves_sculpt_puff.cc.
Referenced by execute(), find_curve_weights_projected(), and find_curves_weights_spherical_with_symmetry().
| float blender::ed::sculpt_paint::PuffOperationExecutor::brush_radius_base_re_ |
Definition at line 65 of file curves_sculpt_puff.cc.
Referenced by execute(), and find_curve_weights_projected().
| float blender::ed::sculpt_paint::PuffOperationExecutor::brush_radius_factor_ |
Definition at line 66 of file curves_sculpt_puff.cc.
Referenced by execute(), find_curve_weights_projected(), and find_curves_weights_spherical_with_symmetry().
| float blender::ed::sculpt_paint::PuffOperationExecutor::brush_strength_ |
Definition at line 67 of file curves_sculpt_puff.cc.
Definition at line 77 of file curves_sculpt_puff.cc.
| CurvesSculptCommonContext blender::ed::sculpt_paint::PuffOperationExecutor::ctx_ |
Definition at line 53 of file curves_sculpt_puff.cc.
Referenced by execute(), find_curve_weights_projected(), find_curves_weights_spherical(), find_curves_weights_spherical_with_symmetry(), and PuffOperationExecutor().
| IndexMask blender::ed::sculpt_paint::PuffOperationExecutor::curve_selection_ |
Definition at line 61 of file curves_sculpt_puff.cc.
Referenced by execute(), find_curve_weights_projected(), and find_curves_weights_spherical().
| CurvesGeometry* blender::ed::sculpt_paint::PuffOperationExecutor::curves_ = nullptr |
Definition at line 57 of file curves_sculpt_puff.cc.
Referenced by execute(), find_curve_weights_projected(), find_curves_weights_spherical(), and puff().
Definition at line 56 of file curves_sculpt_puff.cc.
Referenced by execute(), find_curve_weights_projected_with_symmetry(), and find_curves_weights_spherical_with_symmetry().
| CurvesSculpt* blender::ed::sculpt_paint::PuffOperationExecutor::curves_sculpt_ = nullptr |
Definition at line 63 of file curves_sculpt_puff.cc.
Referenced by execute().
Definition at line 55 of file curves_sculpt_puff.cc.
Referenced by execute(), find_curve_weights_projected(), and find_curves_weights_spherical().
Definition at line 59 of file curves_sculpt_puff.cc.
| IndexMaskMemory blender::ed::sculpt_paint::PuffOperationExecutor::selected_curve_memory_ |
Definition at line 60 of file curves_sculpt_puff.cc.
Referenced by execute().
| PuffOperation* blender::ed::sculpt_paint::PuffOperationExecutor::self_ = nullptr |
Definition at line 52 of file curves_sculpt_puff.cc.
Referenced by execute(), and find_curves_weights_spherical_with_symmetry().
Definition at line 73 of file curves_sculpt_puff.cc.
Referenced by execute().
| bke::BVHTreeFromMesh blender::ed::sculpt_paint::PuffOperationExecutor::surface_bvh_ |
Definition at line 78 of file curves_sculpt_puff.cc.
Definition at line 76 of file curves_sculpt_puff.cc.
| Span<int> blender::ed::sculpt_paint::PuffOperationExecutor::surface_corner_verts_ |
Definition at line 75 of file curves_sculpt_puff.cc.
Definition at line 72 of file curves_sculpt_puff.cc.
Referenced by execute().
Definition at line 74 of file curves_sculpt_puff.cc.
| CurvesSurfaceTransforms blender::ed::sculpt_paint::PuffOperationExecutor::transforms_ |
Definition at line 70 of file curves_sculpt_puff.cc.
Referenced by execute(), find_curves_weights_spherical_with_symmetry(), and puff().