Blender V4.5
blender::ed::sculpt_paint::greasepencil::PaintOperation Class Reference

Inherits blender::ed::sculpt_paint::GreasePencilStrokeOperation.

Public Member Functions

void on_stroke_begin (const bContext &C, const InputSample &start_sample) override
 
void on_stroke_extended (const bContext &C, const InputSample &extension_sample) override
 
void on_stroke_done (const bContext &C) override
 
 PaintOperation (const bool do_fill_guides=false)
 
bool update_stroke_depth_placement (const bContext &C, const InputSample &sample)
 
IndexRange interpolate_stroke_depth (const bContext &C, std::optional< int > start_point, float from_depth, float to_depth)
 
void toggle_fill_guides_brush_on (const bContext &C)
 
void toggle_fill_guides_brush_off (const bContext &C)
 
- Public Member Functions inherited from blender::ed::sculpt_paint::PaintModeData
virtual ~PaintModeData ()=default
 

Friends

struct PaintOperationExecutor
 

Detailed Description

Definition at line 182 of file grease_pencil_paint.cc.

Constructor & Destructor Documentation

◆ PaintOperation()

blender::ed::sculpt_paint::greasepencil::PaintOperation::PaintOperation ( const bool do_fill_guides = false)
inline

Definition at line 251 of file grease_pencil_paint.cc.

Member Function Documentation

◆ interpolate_stroke_depth()

◆ on_stroke_begin()

void blender::ed::sculpt_paint::greasepencil::PaintOperation::on_stroke_begin ( const bContext & C,
const InputSample & start_sample )
overridevirtual

Implements blender::ed::sculpt_paint::GreasePencilStrokeOperation.

Definition at line 1148 of file grease_pencil_paint.cc.

References BKE_brush_init_gpencil_settings(), BKE_curvemapping_init(), BKE_grease_pencil_object_material_ensure_from_brush(), BKE_object_material_index_get(), BKE_paint_brush(), BLI_assert, BLI_time_now_seconds(), blender::ed::greasepencil::DrawingPlacement::cache_viewport_depths(), blender::ed::greasepencil::calculate_texture_space(), RenderData::cfra, CTX_data_active_object(), CTX_data_depsgraph_pointer(), CTX_data_main(), CTX_data_scene(), CTX_wm_region(), CTX_wm_view3d(), BrushGpencilSettings::curve_jitter, Brush::curve_rand_hue, BrushGpencilSettings::curve_rand_pressure, Brush::curve_rand_saturation, BrushGpencilSettings::curve_rand_strength, BrushGpencilSettings::curve_rand_uv, Brush::curve_rand_value, BrushGpencilSettings::curve_sensitivity, BrushGpencilSettings::curve_strength, DEG_get_evaluated(), DEG_id_tag_update(), depsgraph, BrushGpencilSettings::flag, MaterialGPencilStyle::flag, blender::RandomNumberGenerator::from_random_seed(), blender::RandomNumberGenerator::get_float(), GP_BRUSH_GROUP_RANDOM, GP_LOCKAXIS_VIEW, GP_MATERIAL_FILL_SHOW, ToolSettings::gp_paint, ToolSettings::gp_sculpt, Material::gp_style, Brush::gpencil_settings, GreasePencil::id, ID_RECALC_GEOMETRY, GP_Sculpt_Settings::lock_axis, material, blender::ed::sculpt_paint::InputSample::mouse_position, NC_GEOM, ND_DATA, GpPaint::paint, blender::ed::sculpt_paint::greasepencil::PaintOperationExecutor::process_start_sample(), Scene::r, blender::ed::greasepencil::retrieve_editable_drawings(), GreasePencil::runtime, scene, blender::bke::greasepencil::Layer::to_object_space(), toggle_fill_guides_brush_on(), Scene::toolsettings, blender::ed::greasepencil::DrawingPlacement::use_project_to_stroke(), blender::ed::greasepencil::DrawingPlacement::use_project_to_surface(), and WM_event_add_notifier().

◆ on_stroke_done()

void blender::ed::sculpt_paint::greasepencil::PaintOperation::on_stroke_done ( const bContext & C)
overridevirtual

Implements blender::ed::sculpt_paint::GreasePencilStrokeOperation.

Definition at line 1647 of file grease_pencil_paint.cc.

References blender::ed::sculpt_paint::greasepencil::append_stroke_to_multiframe_drawings(), blender::bke::CurvesGeometry::attributes_for_write(), BKE_grease_pencil_object_material_alt_ensure_from_brush(), BKE_object_material_index_get(), BKE_paint_brush(), BLI_assert, CTX_data_active_object(), CTX_data_main(), CTX_data_scene(), CTX_wm_region(), CTX_wm_region_view3d(), blender::ed::greasepencil::curves_merge_endpoints_by_distance(), blender::bke::CurvesGeometry::curves_range(), DEG_id_tag_update(), blender::ed::sculpt_paint::greasepencil::deselect_stroke(), BrushGpencilSettings::draw_smoothfac, BrushGpencilSettings::draw_smoothlvl, blender::bke::SpanAttributeWriter< T >::finish(), blender::IndexRange::first(), BrushGpencilSettings::flag, blender::IndexRange::from_single(), GP_BRUSH_GROUP_SETTINGS, GP_BRUSH_OUTLINE_STROKE, GP_BRUSH_TRIM_STROKE, ToolSettings::gp_paint, GP_TOOL_FLAG_AUTOMERGE_STROKE, GP_TOOL_FLAG_CREATE_WEIGHTS, GP_TOOL_FLAG_PAINT_ONBACK, GP_USE_MULTI_FRAME_EDITING, ToolSettings::gpencil_flags, Brush::gpencil_settings, GreasePencil::id, ID_RECALC_GEOMETRY, blender::IndexRange::last(), blender::bke::MutableAttributeAccessor::lookup_or_add_for_write_only_span(), material, NC_GEOM, ND_DATA, BrushGpencilSettings::outline_fac, blender::ed::sculpt_paint::greasepencil::outline_stroke(), GpPaint::paint, blender::bke::Point, blender::bke::CurvesGeometry::points_by_curve(), blender::ed::sculpt_paint::greasepencil::process_stroke_weights(), blender::bke::MutableAttributeAccessor::remove(), GreasePencil::runtime, scene, blender::bke::greasepencil::Drawing::set_texture_matrices(), BrushGpencilSettings::simplify_px, blender::ed::sculpt_paint::greasepencil::simplify_stroke(), blender::ed::sculpt_paint::greasepencil::smooth_stroke(), blender::bke::SpanAttributeWriter< T >::span, blender::bke::greasepencil::Drawing::strokes(), blender::bke::greasepencil::Drawing::strokes_for_write(), blender::bke::greasepencil::Drawing::tag_topology_changed(), blender::bke::greasepencil::Layer::to_world_space(), Scene::toolsettings, blender::ed::sculpt_paint::greasepencil::trim_end_points(), blender::ed::sculpt_paint::greasepencil::trim_stroke_ends(), Brush::unprojected_radius, RegionView3D::viewmat, and WM_event_add_notifier().

◆ on_stroke_extended()

void blender::ed::sculpt_paint::greasepencil::PaintOperation::on_stroke_extended ( const bContext & C,
const InputSample & extension_sample )
overridevirtual

◆ toggle_fill_guides_brush_off()

void blender::ed::sculpt_paint::greasepencil::PaintOperation::toggle_fill_guides_brush_off ( const bContext & C)

◆ toggle_fill_guides_brush_on()

void blender::ed::sculpt_paint::greasepencil::PaintOperation::toggle_fill_guides_brush_on ( const bContext & C)

◆ update_stroke_depth_placement()

Friends And Related Symbol Documentation

◆ PaintOperationExecutor

friend struct PaintOperationExecutor
friend

Definition at line 241 of file grease_pencil_paint.cc.


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