Blender V4.3
bmesh_mesh_partial_update.hh File Reference

Go to the source code of this file.

Classes

struct  BMPartialUpdate_Params
 
struct  BMPartialUpdate
 

Functions

BMPartialUpdateBM_mesh_partial_create_from_verts (BMesh *bm, const BMPartialUpdate_Params *params, const unsigned int *verts_mask, int verts_mask_count) ATTR_NONNULL(1
 
BMPartialUpdateBM_mesh_partial_create_from_verts_group_single (BMesh *bm, const BMPartialUpdate_Params *params, const unsigned int *verts_mask, int verts_mask_count) ATTR_NONNULL(1
 
BMPartialUpdateBM_mesh_partial_create_from_verts_group_multi (BMesh *bm, const BMPartialUpdate_Params *params, const int *verts_group, int verts_group_count) ATTR_NONNULL(1
 
void BM_mesh_partial_destroy (BMPartialUpdate *bmpinfo) ATTR_NONNULL(1)
 

Variables

BMPartialUpdate ATTR_WARN_UNUSED_RESULT
 

Function Documentation

◆ BM_mesh_partial_create_from_verts()

BMPartialUpdate * BM_mesh_partial_create_from_verts ( BMesh * bm,
const BMPartialUpdate_Params * params,
const unsigned int * verts_mask,
int verts_mask_count )

All Tagged & Connected, see: BM_mesh_partial_create_from_verts Operate on everything that's tagged as well as connected geometry.

◆ BM_mesh_partial_create_from_verts_group_multi()

BMPartialUpdate * BM_mesh_partial_create_from_verts_group_multi ( BMesh * bm,
const BMPartialUpdate_Params * params,
const int * verts_group,
int verts_group_count )

All Connected, operate on all faces that have vertices in the same group.

Reduces computations when transforming isolated regions.

This is a version of BM_mesh_partial_create_from_verts_group_single that handles multiple groups instead of a bitmap mask.

This is needed for example when transform has mirror enabled, since one side needs to have a different group to the other since a face that has vertices attached to both won't have an affine transformation.

Parameters
verts_groupVertex aligned array of groups. Values are used as follows:
  • >0: Each face is grouped with other faces of the same group.
  • 0: Not in a group (don't handle these).
  • -1: Don't use grouping logic (include any face that contains a vertex with this group).
verts_group_countThe number of non-zero values in verts_groups.

◆ BM_mesh_partial_create_from_verts_group_single()

BMPartialUpdate * BM_mesh_partial_create_from_verts_group_single ( BMesh * bm,
const BMPartialUpdate_Params * params,
const unsigned int * verts_mask,
int verts_mask_count )

All Connected, operate on all faces that have both tagged and un-tagged vertices.

Reduces computations when transforming isolated regions.

◆ BM_mesh_partial_destroy()

void BM_mesh_partial_destroy ( BMPartialUpdate * bmpinfo)

Variable Documentation

◆ ATTR_WARN_UNUSED_RESULT

BMPartialUpdate ATTR_WARN_UNUSED_RESULT

Definition at line 51 of file bmesh_mesh_partial_update.hh.