|
Blender V4.5
|
#include <BKE_instances.hh>
Public Types | |
| enum class | Type { None , Object , Collection , GeometrySet } |
Public Member Functions | |
| InstanceReference ()=default | |
| InstanceReference (GeometrySet geometry_set) | |
| InstanceReference (const InstanceReference &other) | |
| void | to_geometry_set (GeometrySet &r_geometry_set) const |
| StringRefNull | name () const |
| bool | owns_direct_data () const |
| void | ensure_owns_direct_data () |
| void | count_memory (MemoryCounter &memory) const |
| uint64_t | hash () const |
#InstanceReference Inline Methods | |
| InstanceReference (Object &object) | |
| InstanceReference (Collection &collection) | |
| InstanceReference (std::unique_ptr< GeometrySet > geometry_set) | |
| InstanceReference (InstanceReference &&other) | |
| InstanceReference & | operator= (const InstanceReference &other) |
| InstanceReference & | operator= (InstanceReference &&other) |
| Type | type () const |
| Object & | object () const |
| Collection & | collection () const |
| GeometrySet & | geometry_set () |
| const GeometrySet & | geometry_set () const |
Friends | |
| bool | operator== (const InstanceReference &a, const InstanceReference &b) |
Holds a reference to conceptually unique geometry or a pointer to object/collection data that is instanced with a transform in #Instances.
Definition at line 54 of file BKE_instances.hh.
|
strong |
| Enumerator | |
|---|---|
| None | An empty instance. This allows an |
| Object | |
| Collection | |
| GeometrySet | |
Definition at line 56 of file BKE_instances.hh.
|
default |
Referenced by operator=(), and operator=().
|
inline |
Definition at line 244 of file BKE_instances.hh.
|
inline |
Definition at line 248 of file BKE_instances.hh.
| blender::bke::InstanceReference::InstanceReference | ( | GeometrySet | geometry_set | ) |
Definition at line 20 of file instances.cc.
|
inline |
Definition at line 239 of file BKE_instances.hh.
| blender::bke::InstanceReference::InstanceReference | ( | const InstanceReference & | other | ) |
Definition at line 26 of file instances.cc.
|
inline |
Definition at line 253 of file BKE_instances.hh.
References None.
|
inline |
Definition at line 291 of file BKE_instances.hh.
References BLI_assert, and Collection.
Referenced by BPy_GeometrySet_get_instance_references(), make_duplis_geometry_set_impl(), name(), and to_geometry_set().
| void blender::bke::InstanceReference::count_memory | ( | MemoryCounter & | memory | ) | const |
Definition at line 51 of file instances.cc.
References GeometrySet.
| void blender::bke::InstanceReference::ensure_owns_direct_data | ( | ) |
Definition at line 34 of file instances.cc.
References GeometrySet.
Referenced by blender::bke::Instances::ensure_owns_direct_data().
|
inline |
Definition at line 297 of file BKE_instances.hh.
References BLI_assert, and GeometrySet.
Referenced by BPy_GeometrySet_get_instance_references(), blender::ed::view3d::geometry_nodes_gizmos::find_gizmo_geometry_transform_recursive(), make_duplis_geometry_set_impl(), name(), blender::nodes::node_geo_boolean_cc::node_geo_exec(), and to_geometry_set().
|
inline |
Definition at line 303 of file BKE_instances.hh.
References BLI_assert, and GeometrySet.
| uint64_t blender::bke::InstanceReference::hash | ( | ) | const |
Definition at line 142 of file instances.cc.
References blender::get_default_hash().
| StringRefNull blender::bke::InstanceReference::name | ( | ) | const |
Definition at line 119 of file instances.cc.
References Collection, collection(), geometry_set(), GeometrySet, Collection::id, Object::id, blender::bke::GeometrySet::name, ID::name, None, Object, and object().
Referenced by blender::ed::spreadsheet::InstanceReferenceViewItem::build_row(), and blender::nodes::node_geo_curves_to_grease_pencil_cc::curve_instances_to_grease_pencil_layers().
|
inline |
Definition at line 285 of file BKE_instances.hh.
References BLI_assert, and Object.
Referenced by BPy_GeometrySet_get_instance_references(), blender::ed::spreadsheet::get_instance_reference_icon(), make_duplis_geometry_set_impl(), name(), blender::nodes::node_geo_boolean_cc::node_geo_exec(), and to_geometry_set().
|
inline |
Definition at line 260 of file BKE_instances.hh.
References InstanceReference().
|
inline |
Definition at line 270 of file BKE_instances.hh.
References InstanceReference().
| bool blender::bke::InstanceReference::owns_direct_data | ( | ) | const |
Definition at line 42 of file instances.cc.
References GeometrySet.
| void blender::bke::InstanceReference::to_geometry_set | ( | GeometrySet & | r_geometry_set | ) | const |
Converts the instance reference to a geometry set, even if it was an object or collection before.
Definition at line 93 of file instances.cc.
References blender::bke::GeometrySet::clear(), Collection, collection(), blender::bke::convert_collection_to_instances(), geometry_set(), GeometrySet, None, Object, object(), blender::bke::object_get_evaluated_geometry_set(), and blender::bke::GeometrySet::replace_instances().
Referenced by blender::nodes::node_geo_curves_to_grease_pencil_cc::curve_instances_to_grease_pencil_layers(), blender::geometry::foreach_geometry_in_reference(), blender::geometry::gather_attribute_propagation_components(), blender::geometry::gather_attribute_propagation_components_with_custom_depths(), and blender::ed::spreadsheet::get_geometry_set_for_instance_ids().
|
inline |
Definition at line 280 of file BKE_instances.hh.
Referenced by BPy_GeometrySet_get_instance_references(), blender::ed::view3d::geometry_nodes_gizmos::find_gizmo_geometry_transform_recursive(), blender::ed::spreadsheet::get_instance_reference_icon(), blender::nodes::node_geo_input_instance_bounds_cc::InstanceBoundsField::get_varray_for_context(), make_duplis_geometry_set_impl(), and blender::nodes::node_geo_boolean_cc::node_geo_exec().
|
friend |
Definition at line 134 of file instances.cc.