Blender
V2.93
source
blender
blenkernel
BKE_geometry_set_instances.hh
Go to the documentation of this file.
1
/*
2
* This program is free software; you can redistribute it and/or
3
* modify it under the terms of the GNU General Public License
4
* as published by the Free Software Foundation; either version 2
5
* of the License, or (at your option) any later version.
6
*
7
* This program is distributed in the hope that it will be useful,
8
* but WITHOUT ANY WARRANTY; without even the implied warranty of
9
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
10
* GNU General Public License for more details.
11
*
12
* You should have received a copy of the GNU General Public License
13
* along with this program; if not, write to the Free Software Foundation,
14
* Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
15
*/
16
17
#pragma once
18
19
#include "
BKE_geometry_set.hh
"
20
21
namespace
blender::bke
{
22
26
struct
GeometryInstanceGroup
{
32
GeometrySet
geometry_set
;
33
39
Vector<float4x4>
transforms
;
40
};
41
42
void
geometry_set_instances_attribute_foreach
(
const
GeometrySet
&geometry_set,
43
const
AttributeForeachCallback
callback
,
44
const
int
limit);
45
46
void
geometry_set_gather_instances
(
const
GeometrySet
&geometry_set,
47
Vector<GeometryInstanceGroup>
&r_instance_groups);
48
49
GeometrySet
geometry_set_realize_mesh_for_modifier
(
const
GeometrySet
&geometry_set);
50
GeometrySet
geometry_set_realize_instances
(
const
GeometrySet
&geometry_set);
51
52
struct
AttributeKind
{
53
CustomDataType
data_type
;
54
AttributeDomain
domain
;
55
};
56
62
void
geometry_set_gather_instances_attribute_info
(
Span<GeometryInstanceGroup>
set_groups,
63
Span<GeometryComponentType>
component_types,
64
const
Set<std::string>
&ignored_attributes,
65
Map<std::string, AttributeKind>
&r_attributes);
66
67
}
// namespace blender::bke
AttributeDomain
AttributeDomain
Definition:
BKE_attribute.h:41
BKE_geometry_set.hh
CustomDataType
CustomDataType
Definition:
DNA_customdata_types.h:90
blender::FunctionRef
Definition:
BLI_function_ref.hh:85
blender::Map
Definition:
BLI_map.hh:122
blender::Set
Definition:
BLI_set.hh:121
blender::Span
Definition:
BLI_span.hh:87
blender::Vector
Definition:
BLI_vector.hh:78
callback
DEGForeachIDComponentCallback callback
Definition:
depsgraph_query_foreach.cc:125
blender::bke
Definition:
BKE_attribute_access.hh:30
blender::bke::geometry_set_gather_instances
void geometry_set_gather_instances(const GeometrySet &geometry_set, Vector< GeometryInstanceGroup > &r_instance_groups)
Definition:
geometry_set_instances.cc:168
blender::bke::geometry_set_realize_mesh_for_modifier
GeometrySet geometry_set_realize_mesh_for_modifier(const GeometrySet &geometry_set)
Definition:
geometry_set_instances.cc:559
blender::bke::geometry_set_realize_instances
GeometrySet geometry_set_realize_instances(const GeometrySet &geometry_set)
Definition:
geometry_set_instances.cc:577
blender::bke::geometry_set_gather_instances_attribute_info
void geometry_set_gather_instances_attribute_info(Span< GeometryInstanceGroup > set_groups, Span< GeometryComponentType > component_types, const Set< std::string > &ignored_attributes, Map< std::string, AttributeKind > &r_attributes)
Definition:
geometry_set_instances.cc:293
blender::bke::geometry_set_instances_attribute_foreach
void geometry_set_instances_attribute_foreach(const GeometrySet &geometry_set, const AttributeForeachCallback callback, const int limit)
Definition:
geometry_set_instances.cc:285
GeometrySet
Definition:
BKE_geometry_set.hh:278
blender::bke::AttributeKind
Definition:
BKE_geometry_set_instances.hh:52
blender::bke::AttributeKind::domain
AttributeDomain domain
Definition:
BKE_geometry_set_instances.hh:54
blender::bke::AttributeKind::data_type
CustomDataType data_type
Definition:
BKE_geometry_set_instances.hh:53
blender::bke::GeometryInstanceGroup
Definition:
BKE_geometry_set_instances.hh:26
blender::bke::GeometryInstanceGroup::transforms
Vector< float4x4 > transforms
Definition:
BKE_geometry_set_instances.hh:39
blender::bke::GeometryInstanceGroup::geometry_set
GeometrySet geometry_set
Definition:
BKE_geometry_set_instances.hh:32
Generated on Tue Jan 31 2023 14:37:24 for Blender by
doxygen
1.9.1