Blender V4.3
BKE_editmesh.hh
Go to the documentation of this file.
1/* SPDX-FileCopyrightText: 2023 Blender Authors
2 *
3 * SPDX-License-Identifier: GPL-2.0-or-later */
4
5#pragma once
6
15#include <array>
16
17#include "BLI_array.hh"
19
21
22#include "bmesh.hh"
23
24struct BMLoop;
25struct BMPartialUpdate;
26struct BMesh;
28struct Depsgraph;
29struct Mesh;
30struct Object;
31struct Scene;
32
42struct BMEditMesh {
43 /* Always owned by an original mesh in edit mode. */
45
53
57 short mat_nr;
58
61
67};
68
69/* editmesh.cc */
70
74 BMPartialUpdate *bmpinfo,
78
84
102
104 BMEditMesh *em,
105 Scene *scene,
106 Object *ob);
109 Depsgraph *depsgraph,
110 BMEditMesh *em,
111 Scene *scene,
112 Object *obedit,
114
void BKE_editmesh_free_data(BMEditMesh *em)
Definition editmesh.cc:120
blender::Span< blender::float3 > BKE_editmesh_vert_coords_when_deformed(Depsgraph *depsgraph, BMEditMesh *em, Scene *scene, Object *obedit, blender::Array< blender::float3 > &r_alloc)
BMEditMesh * BKE_editmesh_from_object(Object *ob)
Return the BMEditMesh for a given object.
Definition editmesh.cc:63
BMEditMesh * BKE_editmesh_create(BMesh *bm)
Definition editmesh.cc:34
blender::Array< blender::float3 > BKE_editmesh_vert_coords_alloc_orco(BMEditMesh *em)
Definition editmesh.cc:203
blender::Array< blender::float3 > BKE_editmesh_vert_coords_alloc(Depsgraph *depsgraph, BMEditMesh *em, Scene *scene, Object *ob)
Definition editmesh.cc:148
void BKE_editmesh_looptris_and_normals_calc_with_partial(BMEditMesh *em, BMPartialUpdate *bmpinfo)
Definition editmesh.cc:110
void BKE_editmesh_looptris_calc_with_partial_ex(BMEditMesh *em, BMPartialUpdate *bmpinfo, const BMeshCalcTessellation_Params *params)
Definition editmesh.cc:93
void BKE_editmesh_looptris_calc(BMEditMesh *em)
Definition editmesh.cc:76
void BKE_editmesh_looptris_calc_ex(BMEditMesh *em, const BMeshCalcTessellation_Params *params)
Definition editmesh.cc:69
void BKE_editmesh_looptris_and_normals_calc(BMEditMesh *em)
Definition editmesh.cc:83
void BKE_editmesh_lnorspace_update(BMEditMesh *em)
Definition editmesh.cc:208
BMEditMesh * BKE_editmesh_copy(BMEditMesh *em)
Definition editmesh.cc:41
void BKE_editmesh_looptris_calc_with_partial(BMEditMesh *em, BMPartialUpdate *bmpinfo)
Definition editmesh.cc:103
ATTR_WARN_UNUSED_RESULT BMesh * bm
const Depsgraph * depsgraph
uiWidgetBaseParameters params[MAX_WIDGET_BASE_BATCH]
short selectmode
blender::Array< std::array< BMLoop *, 3 > > looptris
char needs_flush_to_id