Blender
V3.3
|
#include <BKE_geometry_set.hh>
Public Member Functions | |
std::optional< blender::bke::AttributeAccessor > | attributes () const final |
std::optional< blender::bke::MutableAttributeAccessor > | attributes_for_write () final |
Geometry Component Implementation | |
CurveComponentLegacy () | |
~CurveComponentLegacy () | |
GeometryComponent * | copy () const override |
void | clear () |
bool | has_curve () const |
void | replace (CurveEval *curve, GeometryOwnershipType ownership=GeometryOwnershipType::Owned) |
CurveEval * | release () |
const CurveEval * | get_for_read () const |
CurveEval * | get_for_write () |
bool | is_empty () const final |
bool | owns_direct_data () const override |
void | ensure_owns_direct_data () override |
![]() | |
virtual | ~GeometryComponent ()=default |
GeometryComponent (GeometryComponentType type) | |
int | attribute_domain_size (eAttrDomain domain) const |
void | user_add () const |
void | user_remove () const |
bool | is_mutable () const |
GeometryComponentType | type () const |
Static Public Attributes | |
static constexpr GeometryComponentType | static_type = GEO_COMPONENT_TYPE_CURVE |
Additional Inherited Members | |
![]() | |
static GeometryComponent * | create (GeometryComponentType component_type) |
Legacy runtime-only curves type. These curves are stored differently than other geometry components, because the data structure used here does not correspond exactly to the Curve DNA data structure. A CurveEval is stored here instead, though the component does give access to a Curve for interfacing with render engines and other areas of Blender that expect to use a data-block with an ID.
Definition at line 474 of file BKE_geometry_set.hh.
CurveComponentLegacy::CurveComponentLegacy | ( | ) |
Definition at line 25 of file geometry_component_curve.cc.
Referenced by copy().
CurveComponentLegacy::~CurveComponentLegacy | ( | ) |
Definition at line 29 of file geometry_component_curve.cc.
References clear().
|
finalvirtual |
Get access to the attributes in this geometry component. May return none if the geometry does not support the attribute system.
Reimplemented from GeometryComponent.
Definition at line 1448 of file geometry_component_curve.cc.
References blender::bke::get_curve_accessor_functions_ref().
Referenced by curve_eval_to_curves().
|
finalvirtual |
Reimplemented from GeometryComponent.
Definition at line 1453 of file geometry_component_curve.cc.
References curve, blender::bke::get_curve_accessor_functions_ref(), and get_for_write().
Referenced by curves_to_curve_eval().
void CurveComponentLegacy::clear | ( | ) |
Definition at line 44 of file geometry_component_curve.cc.
References BLI_assert, GeometryComponent::is_mutable(), and Owned.
Referenced by replace(), and ~CurveComponentLegacy().
|
overridevirtual |
Implements GeometryComponent.
Definition at line 34 of file geometry_component_curve.cc.
References CurveComponentLegacy(), and Owned.
|
overridevirtual |
Implements GeometryComponent.
Definition at line 101 of file geometry_component_curve.cc.
References BLI_assert, GeometryComponent::is_mutable(), and Owned.
const CurveEval * CurveComponentLegacy::get_for_read | ( | ) | const |
Definition at line 76 of file geometry_component_curve.cc.
CurveEval * CurveComponentLegacy::get_for_write | ( | ) |
Definition at line 81 of file geometry_component_curve.cc.
References BLI_assert, GeometryComponent::is_mutable(), Owned, and ReadOnly.
Referenced by attributes_for_write().
bool CurveComponentLegacy::has_curve | ( | ) | const |
Definition at line 55 of file geometry_component_curve.cc.
|
finalvirtual |
Reimplemented from GeometryComponent.
Definition at line 91 of file geometry_component_curve.cc.
|
overridevirtual |
Implements GeometryComponent.
Definition at line 96 of file geometry_component_curve.cc.
References Owned.
CurveEval * CurveComponentLegacy::release | ( | ) |
Definition at line 68 of file geometry_component_curve.cc.
References BLI_assert, curve, and GeometryComponent::is_mutable().
void CurveComponentLegacy::replace | ( | CurveEval * | curve, |
GeometryOwnershipType | ownership = GeometryOwnershipType::Owned |
||
) |
Clear the component and replace it with the new curve.
Definition at line 60 of file geometry_component_curve.cc.
References BLI_assert, clear(), curve, and GeometryComponent::is_mutable().
Referenced by curve_eval_to_curves(), and curves_to_curve_eval().
|
inlinestaticconstexpr |
Definition at line 503 of file BKE_geometry_set.hh.