Blender V5.0
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 524 of file BKE_curves.hh.

Constructor & Destructor Documentation

◆ CurvesEditHints()

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

Definition at line 541 of file BKE_curves.hh.

References curves_id_orig.

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 349 of file blenkernel/intern/curves.cc.

References curves_id_orig, deform_mats, positions(), and size().

◆ positions()

std::optional< Span< float3 > > blender::bke::CurvesEditHints::positions ( ) const

◆ 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 539 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 534 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: