Changeset View
Changeset View
Standalone View
Standalone View
source/blender/editors/sculpt_paint/curves_sculpt_density.cc
| Show First 20 Lines • Show All 280 Lines • ▼ Show 20 Lines | void execute(DensityAddOperation &self, | ||||
| add_inputs.surface = surface_orig_; | add_inputs.surface = surface_orig_; | ||||
| add_inputs.corner_normals_su = corner_normals_su; | add_inputs.corner_normals_su = corner_normals_su; | ||||
| add_inputs.surface_looptris = surface_looptris_orig; | add_inputs.surface_looptris = surface_looptris_orig; | ||||
| add_inputs.reverse_uv_sampler = &reverse_uv_sampler; | add_inputs.reverse_uv_sampler = &reverse_uv_sampler; | ||||
| add_inputs.old_roots_kdtree = self_->original_curve_roots_kdtree_; | add_inputs.old_roots_kdtree = self_->original_curve_roots_kdtree_; | ||||
| const geometry::AddCurvesOnMeshOutputs add_outputs = geometry::add_curves_on_mesh( | const geometry::AddCurvesOnMeshOutputs add_outputs = geometry::add_curves_on_mesh( | ||||
| *curves_orig_, add_inputs); | *curves_orig_, add_inputs); | ||||
| bke::MutableAttributeAccessor attributes = curves_orig_->attributes_for_write(); | |||||
| if (bke::GSpanAttributeWriter selection = attributes.lookup_for_write_span(".selection")) { | |||||
| curves::fill_selection_true(selection.span.slice(selection.domain == ATTR_DOMAIN_POINT ? | |||||
| add_outputs.new_points_range : | |||||
| add_outputs.new_curves_range)); | |||||
| selection.finish(); | |||||
| } | |||||
| if (add_outputs.uv_error) { | if (add_outputs.uv_error) { | ||||
| report_invalid_uv_map(stroke_extension.reports); | report_invalid_uv_map(stroke_extension.reports); | ||||
| } | } | ||||
| DEG_id_tag_update(&curves_id_orig_->id, ID_RECALC_GEOMETRY); | DEG_id_tag_update(&curves_id_orig_->id, ID_RECALC_GEOMETRY); | ||||
| WM_main_add_notifier(NC_GEOM | ND_DATA, &curves_id_orig_->id); | WM_main_add_notifier(NC_GEOM | ND_DATA, &curves_id_orig_->id); | ||||
| ED_region_tag_redraw(ctx_.region); | ED_region_tag_redraw(ctx_.region); | ||||
| ▲ Show 20 Lines • Show All 260 Lines • ▼ Show 20 Lines | void execute(DensitySubtractOperation &self, | ||||
| brush_ = BKE_paint_brush_for_read(&curves_sculpt_->paint); | brush_ = BKE_paint_brush_for_read(&curves_sculpt_->paint); | ||||
| brush_radius_base_re_ = BKE_brush_size_get(ctx_.scene, brush_); | brush_radius_base_re_ = BKE_brush_size_get(ctx_.scene, brush_); | ||||
| brush_radius_factor_ = brush_radius_factor(*brush_, stroke_extension); | brush_radius_factor_ = brush_radius_factor(*brush_, stroke_extension); | ||||
| brush_strength_ = brush_strength_get(*ctx_.scene, *brush_, stroke_extension); | brush_strength_ = brush_strength_get(*ctx_.scene, *brush_, stroke_extension); | ||||
| brush_pos_re_ = stroke_extension.mouse_position; | brush_pos_re_ = stroke_extension.mouse_position; | ||||
| minimum_distance_ = brush_->curves_sculpt_settings->minimum_distance; | minimum_distance_ = brush_->curves_sculpt_settings->minimum_distance; | ||||
| curve_selection_ = retrieve_selected_curves(*curves_id_, selected_curve_indices_); | curve_selection_ = curves::retrieve_selected_curves(*curves_id_, selected_curve_indices_); | ||||
| transforms_ = CurvesSurfaceTransforms(*object_, curves_id_->surface); | transforms_ = CurvesSurfaceTransforms(*object_, curves_id_->surface); | ||||
| const eBrushFalloffShape falloff_shape = static_cast<eBrushFalloffShape>( | const eBrushFalloffShape falloff_shape = static_cast<eBrushFalloffShape>( | ||||
| brush_->falloff_shape); | brush_->falloff_shape); | ||||
| if (stroke_extension.is_first) { | if (stroke_extension.is_first) { | ||||
| const bke::crazyspace::GeometryDeformation deformation = | const bke::crazyspace::GeometryDeformation deformation = | ||||
| bke::crazyspace::get_evaluated_curves_deformation(*ctx_.depsgraph, *object_); | bke::crazyspace::get_evaluated_curves_deformation(*ctx_.depsgraph, *object_); | ||||
| ▲ Show 20 Lines • Show All 347 Lines • Show Last 20 Lines | |||||