|
Blender V4.3
|
#include <BKE_geometry_set.hh>
Inherits blender::bke::GeometryComponent.
Static Public Member Functions | |
| static void | remember_deformed_positions_if_necessary (GeometrySet &geometry) |
Static Public Member Functions inherited from blender::bke::GeometryComponent | |
| 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 } |
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 728 of file BKE_geometry_set.hh.
| blender::bke::GeometryComponentEditData::GeometryComponentEditData | ( | ) |
Definition at line 12 of file geometry_component_edit_data.cc.
Referenced by copy().
|
overridevirtual |
Remove referenced data from the geometry component.
Implements blender::bke::GeometryComponent.
Definition at line 40 of file geometry_component_edit_data.cc.
References BLI_assert, curves_edit_hints_, gizmo_edit_hints_, grease_pencil_edit_hints_, blender::ImplicitSharingInfo::is_expired(), and blender::ImplicitSharingInfo::is_mutable().
|
finalvirtual |
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.
References curves_edit_hints_, GeometryComponentEditData(), gizmo_edit_hints_, and grease_pencil_edit_hints_.
|
finalvirtual |
Implements blender::bke::GeometryComponent.
Definition at line 35 of file geometry_component_edit_data.cc.
|
finalvirtual |
Implements blender::bke::GeometryComponent.
Definition at line 30 of file geometry_component_edit_data.cc.
|
static |
The first node that does topology changing operations on curves should store the curve point positions it retrieved as input. Without this, information about the deformed positions is lost, which would make curves sculpt mode fall back to using original curve positions instead of deformed ones.
Definition at line 123 of file geometry_component_edit_data.cc.
References blender::bke::remember_deformed_curve_positions_if_necessary(), and blender::bke::remember_deformed_grease_pencil_if_necessary().
Referenced by blender::nodes::node_geo_curve_resample_cc::node_geo_exec(), blender::nodes::node_geo_curve_reverse_cc::node_geo_exec(), blender::nodes::node_geo_curve_subdivide_cc::node_geo_exec(), blender::nodes::node_geo_curve_to_mesh_cc::node_geo_exec(), blender::nodes::node_geo_curve_trim_cc::node_geo_exec(), blender::nodes::node_geo_join_geometry_cc::node_geo_exec(), and blender::nodes::node_geo_realize_instances_cc::node_geo_exec().
| std::unique_ptr<CurvesEditHints> blender::bke::GeometryComponentEditData::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 736 of file BKE_geometry_set.hh.
Referenced by BKE_curves_data_update(), clear(), copy(), blender::geometry::execute_realize_edit_data_tasks(), blender::bke::GeometrySet::get_curve_edit_hints(), blender::bke::GeometrySet::get_curve_edit_hints_for_write(), blender::bke::crazyspace::get_evaluated_curves_deformation(), and blender::bke::remember_deformed_curve_positions_if_necessary().
| std::unique_ptr<GizmoEditHints> blender::bke::GeometryComponentEditData::gizmo_edit_hints_ |
Propagated information for how gizmos should be transformed along with the geometry.
Definition at line 744 of file BKE_geometry_set.hh.
Referenced by clear(), copy(), blender::nodes::LazyFunctionForGizmoNode::execute_impl(), blender::bke::GeometrySet::get_gizmo_edit_hints(), and blender::bke::GeometrySet::get_gizmo_edit_hints_for_write().
| std::unique_ptr<GreasePencilEditHints> blender::bke::GeometryComponentEditData::grease_pencil_edit_hints_ |
Information about how drawings on the grease pencil layers are manipulated during evaluation.
Definition at line 740 of file BKE_geometry_set.hh.
Referenced by BKE_grease_pencil_data_update(), clear(), copy(), blender::bke::crazyspace::get_evaluated_grease_pencil_drawing_deformation(), and blender::bke::remember_deformed_grease_pencil_if_necessary().
|
inlinestaticconstexpr |
Definition at line 762 of file BKE_geometry_set.hh.