Blender V4.3
blender::bke::CurvesEditHints Class Reference

#include <BKE_curves.hh>

Public Member Functions

 CurvesEditHints (const Curves &curves_id_orig)
 
std::optional< Span< float3 > > positions () const
 
std::optional< MutableSpan< float3 > > positions_for_write ()
 
bool is_valid () const
 

Public Attributes

const Curvescurves_id_orig
 
ImplicitSharingPtrAndData positions_data
 
std::optional< Array< float3x3 > > deform_mats
 

Detailed Description

Used to propagate deformation data through modifier evaluation so that sculpt tools can work on evaluated data.

Definition at line 452 of file BKE_curves.hh.

Constructor & Destructor Documentation

◆ CurvesEditHints()

blender::bke::CurvesEditHints::CurvesEditHints ( const Curves & curves_id_orig)
inline

Definition at line 469 of file BKE_curves.hh.

Member Function Documentation

◆ is_valid()

bool blender::bke::CurvesEditHints::is_valid ( ) const

The edit hints have to correspond to the original curves, i.e. the number of deformed points is the same as the number of original points.

Definition at line 335 of file blenkernel/intern/curves.cc.

References curves_id_orig, deform_mats, Curves::geometry, CurvesGeometry::point_num, positions(), and size().

◆ positions()

◆ positions_for_write()

Member Data Documentation

◆ curves_id_orig

const Curves& blender::bke::CurvesEditHints::curves_id_orig

◆ deform_mats

std::optional<Array<float3x3> > blender::bke::CurvesEditHints::deform_mats

Matrices which transform point movement vectors from original data to corresponding movements of evaluated data.

Definition at line 467 of file BKE_curves.hh.

Referenced by blender::bke::crazyspace::get_evaluated_curves_deformation(), is_valid(), blender::nodes::node_geo_deform_curves_on_surface_cc::node_geo_exec(), and blender::geometry::transform_curve_edit_hints().

◆ positions_data

ImplicitSharingPtrAndData blender::bke::CurvesEditHints::positions_data

Evaluated positions for the points in #curves_orig. If this is empty, the positions from the evaluated Curves should be used if possible.

Definition at line 462 of file BKE_curves.hh.

Referenced by positions(), positions_for_write(), and blender::bke::remember_deformed_curve_positions_if_necessary().


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