Blender V4.3
blender::ed::sculpt_paint::PinchOperationExecutor Struct Reference

Public Member Functions

 PinchOperationExecutor (const bContext &C)
 
void execute (PinchOperation &self, const bContext &C, const StrokeExtension &stroke_extension)
 
void pinch_projected_with_symmetry (MutableSpan< bool > r_changed_curves)
 
void pinch_projected (const float4x4 &brush_transform, MutableSpan< bool > r_changed_curves)
 
void pinch_spherical_with_symmetry (MutableSpan< bool > r_changed_curves)
 
void pinch_spherical (const float3 &brush_pos_cu, const float brush_radius_cu, MutableSpan< bool > r_changed_curves)
 

Public Attributes

PinchOperationself_ = nullptr
 
CurvesSculptCommonContext ctx_
 
Objectobject_ = nullptr
 
Curvescurves_id_ = nullptr
 
CurvesGeometrycurves_ = nullptr
 
VArray< floatpoint_factors_
 
IndexMaskMemory selected_curve_memory_
 
IndexMask curve_selection_
 
CurvesSurfaceTransforms transforms_
 
const CurvesSculptcurves_sculpt_ = nullptr
 
const Brushbrush_ = nullptr
 
float brush_radius_base_re_
 
float brush_radius_factor_
 
float brush_strength_
 
float invert_factor_
 
float2 brush_pos_re_
 

Detailed Description

Definition at line 60 of file curves_sculpt_pinch.cc.

Constructor & Destructor Documentation

◆ PinchOperationExecutor()

blender::ed::sculpt_paint::PinchOperationExecutor::PinchOperationExecutor ( const bContext & C)
inline

Definition at line 84 of file curves_sculpt_pinch.cc.

Member Function Documentation

◆ execute()

void blender::ed::sculpt_paint::PinchOperationExecutor::execute ( PinchOperation & self,
const bContext & C,
const StrokeExtension & stroke_extension )
inline

Definition at line 86 of file curves_sculpt_pinch.cc.

References blender::bke::CurvesGeometry::attributes(), BKE_brush_alpha_get(), BKE_brush_size_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_, ctx_, CTX_data_active_object(), curve_selection_, curves_, curves_id_, blender::bke::CurvesGeometry::curves_num(), ToolSettings::curves_sculpt, curves_sculpt_, CV_SCULPT_COLLISION_ENABLED, Object::data, DEG_id_tag_update(), blender::ed::sculpt_paint::CurvesSculptCommonContext::depsgraph, ED_region_tag_redraw(), Brush::falloff_shape, Curves::flag, blender::index_mask::IndexMask::from_bools(), Curves::geometry, Curves::id, ID_RECALC_GEOMETRY, blender::ed::sculpt_paint::CurvesConstraintSolver::initialize(), invert_factor_, blender::ed::sculpt_paint::StrokeExtension::is_first, blender::bke::AttributeAccessor::lookup_or_default(), blender::ed::sculpt_paint::StrokeExtension::mouse_position, NC_GEOM, ND_DATA, OB_MESH, object_, CurvesSculpt::paint, PAINT_FALLOFF_SHAPE_SPHERE, PAINT_FALLOFF_SHAPE_TUBE, pinch_projected_with_symmetry(), pinch_spherical_with_symmetry(), blender::bke::Point, point_factors_, blender::ed::sculpt_paint::CurvesSculptCommonContext::region, blender::ed::curves::retrieve_selected_curves(), blender::ed::sculpt_paint::CurvesSculptCommonContext::rv3d, blender::ed::sculpt_paint::sample_curves_3d_brush(), blender::ed::sculpt_paint::CurvesSculptCommonContext::scene, selected_curve_memory_, self, self_, blender::ed::sculpt_paint::CurvesConstraintSolver::solve_step(), Curves::surface, blender::bke::CurvesGeometry::tag_positions_changed(), Scene::toolsettings, transforms_, Object::type, blender::ed::sculpt_paint::CurvesSculptCommonContext::v3d, and WM_main_add_notifier().

Referenced by blender::ed::sculpt_paint::PinchOperation::on_stroke_extended().

◆ pinch_projected()

◆ pinch_projected_with_symmetry()

void blender::ed::sculpt_paint::PinchOperationExecutor::pinch_projected_with_symmetry ( MutableSpan< bool > r_changed_curves)
inline

◆ pinch_spherical()

◆ pinch_spherical_with_symmetry()

Member Data Documentation

◆ brush_

const Brush* blender::ed::sculpt_paint::PinchOperationExecutor::brush_ = nullptr

Definition at line 75 of file curves_sculpt_pinch.cc.

Referenced by execute(), pinch_projected(), and pinch_spherical().

◆ brush_pos_re_

float2 blender::ed::sculpt_paint::PinchOperationExecutor::brush_pos_re_

Definition at line 82 of file curves_sculpt_pinch.cc.

Referenced by execute(), pinch_projected(), and pinch_spherical_with_symmetry().

◆ brush_radius_base_re_

float blender::ed::sculpt_paint::PinchOperationExecutor::brush_radius_base_re_

Definition at line 76 of file curves_sculpt_pinch.cc.

Referenced by execute(), and pinch_projected().

◆ brush_radius_factor_

float blender::ed::sculpt_paint::PinchOperationExecutor::brush_radius_factor_

Definition at line 77 of file curves_sculpt_pinch.cc.

Referenced by execute(), pinch_projected(), and pinch_spherical_with_symmetry().

◆ brush_strength_

float blender::ed::sculpt_paint::PinchOperationExecutor::brush_strength_

Definition at line 78 of file curves_sculpt_pinch.cc.

Referenced by execute(), pinch_projected(), and pinch_spherical().

◆ ctx_

CurvesSculptCommonContext blender::ed::sculpt_paint::PinchOperationExecutor::ctx_

◆ curve_selection_

IndexMask blender::ed::sculpt_paint::PinchOperationExecutor::curve_selection_

Definition at line 70 of file curves_sculpt_pinch.cc.

Referenced by execute(), pinch_projected(), and pinch_spherical().

◆ curves_

CurvesGeometry* blender::ed::sculpt_paint::PinchOperationExecutor::curves_ = nullptr

Definition at line 66 of file curves_sculpt_pinch.cc.

Referenced by execute(), pinch_projected(), and pinch_spherical().

◆ curves_id_

Curves* blender::ed::sculpt_paint::PinchOperationExecutor::curves_id_ = nullptr

◆ curves_sculpt_

const CurvesSculpt* blender::ed::sculpt_paint::PinchOperationExecutor::curves_sculpt_ = nullptr

Definition at line 74 of file curves_sculpt_pinch.cc.

Referenced by execute().

◆ invert_factor_

float blender::ed::sculpt_paint::PinchOperationExecutor::invert_factor_

Definition at line 80 of file curves_sculpt_pinch.cc.

Referenced by execute(), pinch_projected(), and pinch_spherical().

◆ object_

Object* blender::ed::sculpt_paint::PinchOperationExecutor::object_ = nullptr

Definition at line 64 of file curves_sculpt_pinch.cc.

Referenced by execute(), pinch_projected(), and pinch_spherical().

◆ point_factors_

VArray<float> blender::ed::sculpt_paint::PinchOperationExecutor::point_factors_

Definition at line 68 of file curves_sculpt_pinch.cc.

Referenced by execute(), pinch_projected(), and pinch_spherical().

◆ selected_curve_memory_

IndexMaskMemory blender::ed::sculpt_paint::PinchOperationExecutor::selected_curve_memory_

Definition at line 69 of file curves_sculpt_pinch.cc.

Referenced by execute().

◆ self_

PinchOperation* blender::ed::sculpt_paint::PinchOperationExecutor::self_ = nullptr

Definition at line 61 of file curves_sculpt_pinch.cc.

Referenced by execute(), and pinch_spherical_with_symmetry().

◆ transforms_

CurvesSurfaceTransforms blender::ed::sculpt_paint::PinchOperationExecutor::transforms_

Definition at line 72 of file curves_sculpt_pinch.cc.

Referenced by execute(), pinch_projected(), and pinch_spherical_with_symmetry().


The documentation for this struct was generated from the following file: