Blender V4.3
GEO_extract_elements.hh
Go to the documentation of this file.
1/* SPDX-FileCopyrightText: 2024 Blender Authors
2 *
3 * SPDX-License-Identifier: GPL-2.0-or-later */
4
5#pragma once
6
8
9#include "BLI_array.hh"
10#include "BLI_index_mask_fwd.hh"
11
12struct Mesh;
13struct PointCloud;
14struct Curves;
15struct GreasePencil;
16
17namespace blender::bke {
18class Instances;
19}
20
21namespace blender::geometry {
22
23Array<Mesh *> extract_mesh_vertices(const Mesh &mesh,
24 const IndexMask &mask,
25 const bke::AttributeFilter &attribute_filter);
26
27Array<Mesh *> extract_mesh_edges(const Mesh &mesh,
28 const IndexMask &mask,
29 const bke::AttributeFilter &attribute_filter);
30
31Array<Mesh *> extract_mesh_faces(const Mesh &mesh,
32 const IndexMask &mask,
33 const bke::AttributeFilter &attribute_filter);
34
35Array<PointCloud *> extract_pointcloud_points(const PointCloud &pointcloud,
36 const IndexMask &mask,
37 const bke::AttributeFilter &attribute_filter);
38
39Array<Curves *> extract_curves_points(const Curves &curves,
40 const IndexMask &mask,
41 const bke::AttributeFilter &attribute_filter);
42
43Array<Curves *> extract_curves(const Curves &curves,
44 const IndexMask &mask,
45 const bke::AttributeFilter &attribute_filter);
46
47Array<bke::Instances *> extract_instances(const bke::Instances &instances,
48 const IndexMask &mask,
49 const bke::AttributeFilter &attribute_filter);
50
51Array<GreasePencil *> extract_greasepencil_layers(const GreasePencil &grease_pencil,
52 const IndexMask &mask,
53 const bke::AttributeFilter &attribute_filter);
54
55Array<GreasePencil *> extract_greasepencil_layer_points(
56 const GreasePencil &grease_pencil,
57 int layer_i,
58 const IndexMask &mask,
59 const bke::AttributeFilter &attribute_filter);
60
61Array<GreasePencil *> extract_greasepencil_layer_curves(
62 const GreasePencil &grease_pencil,
63 int layer_i,
64 const IndexMask &mask,
65 const bke::AttributeFilter &attribute_filter);
66
67} // namespace blender::geometry
Array< bke::Instances * > extract_instances(const bke::Instances &instances, const IndexMask &mask, const bke::AttributeFilter &attribute_filter)
Array< GreasePencil * > extract_greasepencil_layer_points(const GreasePencil &grease_pencil, int layer_i, const IndexMask &mask, const bke::AttributeFilter &attribute_filter)
Array< Mesh * > extract_mesh_faces(const Mesh &mesh, const IndexMask &mask, const bke::AttributeFilter &attribute_filter)
Array< Mesh * > extract_mesh_vertices(const Mesh &mesh, const IndexMask &mask, const bke::AttributeFilter &attribute_filter)
Array< Curves * > extract_curves(const Curves &curves, const IndexMask &mask, const bke::AttributeFilter &attribute_filter)
Array< Curves * > extract_curves_points(const Curves &curves, const IndexMask &mask, const bke::AttributeFilter &attribute_filter)
Array< GreasePencil * > extract_greasepencil_layers(const GreasePencil &grease_pencil, const IndexMask &mask, const bke::AttributeFilter &attribute_filter)
Array< GreasePencil * > extract_greasepencil_layer_curves(const GreasePencil &grease_pencil, int layer_i, const IndexMask &mask, const bke::AttributeFilter &attribute_filter)
Array< PointCloud * > extract_pointcloud_points(const PointCloud &pointcloud, const IndexMask &mask, const bke::AttributeFilter &attribute_filter)
Array< Mesh * > extract_mesh_edges(const Mesh &mesh, const IndexMask &mask, const bke::AttributeFilter &attribute_filter)