Blender V4.3
blender::ed::sculpt_paint::PositionDeformData Class Reference

#include <sculpt_intern.hh>

Public Member Functions

 PositionDeformData (const Depsgraph &depsgraph, Object &object_orig)
 
void deform (MutableSpan< float3 > translations, Span< int > verts) const
 

Public Attributes

Span< float3eval
 

Detailed Description

This class represents an API to deform original positions based on translations created from evaluated positions. It should be constructed once outside of a parallel context.

Definition at line 74 of file sculpt_intern.hh.

Constructor & Destructor Documentation

◆ PositionDeformData()

blender::ed::sculpt_paint::PositionDeformData::PositionDeformData ( const Depsgraph & depsgraph,
Object & object_orig )

Member Function Documentation

◆ deform()

void blender::ed::sculpt_paint::PositionDeformData::deform ( MutableSpan< float3 > translations,
Span< int > verts ) const

Definition at line 7139 of file sculpt.cc.

References blender::ed::sculpt_paint::apply_crazyspace_to_translations(), blender::ed::sculpt_paint::apply_translations(), blender::ed::sculpt_paint::copy_indices(), data, LISTBASE_FOREACH_INDEX, and verts.

Referenced by blender::ed::sculpt_paint::project::apply_projection_mesh(), blender::ed::sculpt_paint::boundary::calc_bend_mesh(), blender::ed::sculpt_paint::filter::calc_enhance_details_filter(), blender::ed::sculpt_paint::calc_faces(), blender::ed::sculpt_paint::boundary::calc_grab_mesh(), blender::ed::sculpt_paint::boundary::calc_inflate_mesh(), blender::ed::sculpt_paint::pose::calc_mesh(), blender::ed::sculpt_paint::filter::calc_random_filter(), blender::ed::sculpt_paint::filter::calc_relax_face_sets_filter(), blender::ed::sculpt_paint::filter::calc_relax_filter(), blender::ed::sculpt_paint::filter::calc_scale_filter(), blender::ed::sculpt_paint::filter::calc_sharpen_filter(), blender::ed::sculpt_paint::boundary::calc_slide_mesh(), blender::ed::sculpt_paint::filter::calc_smooth_filter(), blender::ed::sculpt_paint::boundary::calc_smooth_mesh(), blender::ed::sculpt_paint::filter::calc_sphere_filter(), blender::ed::sculpt_paint::filter::calc_surface_smooth_filter(), blender::ed::sculpt_paint::boundary::calc_twist_mesh(), blender::ed::sculpt_paint::cloth::do_simulation_step(), blender::ed::sculpt_paint::face_set::edit_fairing(), blender::ed::sculpt_paint::elastic_transform_node_mesh(), and blender::ed::sculpt_paint::transform_node_mesh().

Member Data Documentation

◆ eval

Span<float3> blender::ed::sculpt_paint::PositionDeformData::eval

Positions from after procedural deformation from modifiers, used to build the pbvh::Tree. Translations are built for these values, then applied to the original positions. When there are no deforming modifiers, this will reference the same array as #orig.

Definition at line 81 of file sculpt_intern.hh.

Referenced by blender::ed::sculpt_paint::project::apply_projection_mesh(), blender::ed::sculpt_paint::boundary::calc_bend_mesh(), blender::ed::sculpt_paint::filter::calc_enhance_details_filter(), blender::ed::sculpt_paint::calc_faces(), blender::ed::sculpt_paint::boundary::calc_grab_mesh(), blender::ed::sculpt_paint::boundary::calc_inflate_mesh(), blender::ed::sculpt_paint::pose::calc_mesh(), blender::ed::sculpt_paint::filter::calc_random_filter(), blender::ed::sculpt_paint::filter::calc_relax_face_sets_filter(), blender::ed::sculpt_paint::filter::calc_relax_filter(), blender::ed::sculpt_paint::filter::calc_scale_filter(), blender::ed::sculpt_paint::filter::calc_sharpen_filter(), blender::ed::sculpt_paint::boundary::calc_slide_mesh(), blender::ed::sculpt_paint::filter::calc_smooth_filter(), blender::ed::sculpt_paint::boundary::calc_smooth_mesh(), blender::ed::sculpt_paint::filter::calc_sphere_filter(), blender::ed::sculpt_paint::filter::calc_surface_smooth_filter(), blender::ed::sculpt_paint::boundary::calc_twist_mesh(), blender::ed::sculpt_paint::boundary::do_bend_brush(), blender::ed::sculpt_paint::do_clay_brush(), blender::ed::sculpt_paint::do_draw_vector_displacement_brush(), blender::ed::sculpt_paint::do_elastic_deform_brush(), blender::ed::sculpt_paint::do_enhance_details_brush(), blender::ed::sculpt_paint::boundary::do_grab_brush(), blender::ed::sculpt_paint::do_grab_brush(), blender::ed::sculpt_paint::boundary::do_inflate_brush(), blender::ed::sculpt_paint::do_inflate_brush(), blender::ed::sculpt_paint::do_layer_brush(), blender::ed::sculpt_paint::do_pinch_brush(), blender::ed::sculpt_paint::do_rotate_brush(), blender::ed::sculpt_paint::cloth::do_simulation_step(), blender::ed::sculpt_paint::boundary::do_slide_brush(), blender::ed::sculpt_paint::boundary::do_smooth_brush(), blender::ed::sculpt_paint::do_snake_hook_brush(), blender::ed::sculpt_paint::do_thumb_brush(), blender::ed::sculpt_paint::do_topology_slide_brush(), blender::ed::sculpt_paint::boundary::do_twist_brush(), blender::ed::sculpt_paint::face_set::edit_fairing(), blender::ed::sculpt_paint::elastic_transform_node_mesh(), blender::ed::sculpt_paint::offset_positions(), and blender::ed::sculpt_paint::transform_node_mesh().


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