Blender V5.0
blender::nodes::GeometryComponentEditData Class Referencefinal

#include <BKE_geometry_set.hh>

Inherits blender::bke::GeometryComponent.

Public Member Functions

 GeometryComponentEditData ()
GeometryComponentPtr copy () const final
bool owns_direct_data () const final
void ensure_owns_direct_data () final
void clear () override
Public Member Functions inherited from blender::bke::GeometryComponent
 ~GeometryComponent () override=default
 GeometryComponent (Type type)
int attribute_domain_size (AttrDomain domain) const
virtual std::optional< AttributeAccessorattributes () const
virtual std::optional< MutableAttributeAccessorattributes_for_write ()
virtual void count_memory (MemoryCounter &memory) const
Type type () const
virtual bool is_empty () const
Public Member Functions inherited from blender::ImplicitSharingInfo
virtual ~ImplicitSharingInfo ()
bool is_mutable () const
bool is_expired () const
void add_user () const
void add_weak_user () const
void tag_ensured_mutable () const
int64_t version () const
int strong_users () const
void remove_user_and_delete_if_last () const
void remove_weak_user_and_delete_if_last () const

Static Public Member Functions

static void remember_deformed_positions_if_necessary (GeometrySet &geometry)
static GeometryComponentPtr create (Type component_type)

Public Attributes

std::unique_ptr< CurvesEditHints > curves_edit_hints_
std::unique_ptr< GreasePencilEditHints > grease_pencil_edit_hints_
std::unique_ptr< GizmoEditHints > gizmo_edit_hints_

Static Public Attributes

static constexpr GeometryComponent::Type static_type = GeometryComponent::Type::Edit

Additional Inherited Members

Public Types inherited from blender::bke::GeometryComponent
enum class  Type {
  Mesh = 0 , PointCloud = 1 , Instance = 2 , Volume = 3 ,
  Curve = 4 , Edit = 5 , GreasePencil = 6
}

Detailed Description

When the original data is in some edit mode, we want to propagate some additional information through object evaluation. This information can be used by edit modes to support working on evaluated data.

This component is added at the beginning of modifier evaluation.

Definition at line 730 of file BKE_geometry_set.hh.

Constructor & Destructor Documentation

◆ GeometryComponentEditData()

Member Function Documentation

◆ clear()

Remove referenced data from the geometry component.

Implements blender::bke::GeometryComponent.

Definition at line 40 of file geometry_component_edit_data.cc.

◆ copy()

Copies the component. The returned component only has a single user and is therefor mutable.

Implements blender::bke::GeometryComponent.

Definition at line 14 of file geometry_component_edit_data.cc.

◆ ensure_owns_direct_data()

◆ owns_direct_data()

◆ remember_deformed_positions_if_necessary()

Member Data Documentation

◆ curves_edit_hints_

Information about how original curves are manipulated during evaluation. This data is used so that curve sculpt tools can work on evaluated data. It is not stored in CurveComponent because the data remains valid even when there is no actual curves geometry anymore, for example, when the curves have been converted to a mesh.

Definition at line 738 of file BKE_geometry_set.hh.

◆ gizmo_edit_hints_

Propagated information for how gizmos should be transformed along with the geometry.

Definition at line 746 of file BKE_geometry_set.hh.

◆ grease_pencil_edit_hints_

Information about how drawings on the grease pencil layers are manipulated during evaluation.

Definition at line 742 of file BKE_geometry_set.hh.

◆ static_type


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