Blender V4.3
#include "DNA_ID.h"
#include "DNA_customdata_types.h"
#include "DNA_defs.h"
#include "DNA_session_uid_types.h"

Go to the source code of this file.

Classes

class  Mesh
 

Macros

#define ME_USING_MIRROR_X_VERTEX_GROUPS(_me)    (((_me)->editflag & ME_EDIT_MIRROR_VERTEX_GROUPS) && ((_me)->symmetry & ME_SYMMETRY_X))
 
#define ME_EDIT_PAINT_SEL_MODE(_me)
 
#define MESH_MAX_VERTS   2000000000L
 

Typedefs

typedef struct MeshRuntimeHandle MeshRuntimeHandle
 
typedef struct Mesh Mesh
 
typedef enum eMeshSymmetryType eMeshSymmetryType
 

Enumerations

enum  { ME_TEXSPACE_FLAG_AUTO = 1 << 0 , ME_TEXSPACE_FLAG_AUTO_EVALUATED = 1 << 1 }
 
enum  {
  ME_EDIT_MIRROR_VERTEX_GROUPS = 1 << 0 , ME_EDIT_MIRROR_Y = 1 << 1 , ME_EDIT_MIRROR_Z = 1 << 2 , ME_EDIT_PAINT_FACE_SEL = 1 << 3 ,
  ME_EDIT_MIRROR_TOPO = 1 << 4 , ME_EDIT_PAINT_VERT_SEL = 1 << 5
}
 
enum  {
  ME_FLAG_UNUSED_0 = 1 << 0 , ME_FLAG_UNUSED_1 = 1 << 1 , ME_FLAG_DEPRECATED_2 = 1 << 2 , ME_FLAG_UNUSED_3 = 1 << 3 ,
  ME_FLAG_UNUSED_4 = 1 << 4 , ME_AUTOSMOOTH_LEGACY = 1 << 5 , ME_FLAG_UNUSED_6 = 1 << 6 , ME_FLAG_UNUSED_7 = 1 << 7 ,
  ME_REMESH_REPROJECT_ATTRIBUTES = 1 << 8 , ME_DS_EXPAND = 1 << 9 , ME_SCULPT_DYNAMIC_TOPOLOGY = 1 << 10 , ME_NO_OVERLAPPING_TOPOLOGY = 1 << 11 ,
  ME_FLAG_UNUSED_8 = 1 << 12 , ME_REMESH_FIX_POLES = 1 << 13 , ME_REMESH_REPROJECT_VOLUME = 1 << 14 , ME_FLAG_UNUSED_9 = 1 << 15
}
 
enum  { REMESH_VOXEL = 0 , REMESH_QUAD = 1 }
 
enum  { ME_CC_SUBSURF = 0 , ME_SIMPLE_SUBSURF = 1 }
 
enum  eMeshSymmetryType { ME_SYMMETRY_X = 1 << 0 , ME_SYMMETRY_Y = 1 << 1 , ME_SYMMETRY_Z = 1 << 2 }
 

Macro Definition Documentation

◆ ME_EDIT_PAINT_SEL_MODE

#define ME_EDIT_PAINT_SEL_MODE ( _me)
Value:
(((_me)->editflag & ME_EDIT_PAINT_FACE_SEL) ? SCE_SELECT_FACE : \
((_me)->editflag & ME_EDIT_PAINT_VERT_SEL) ? SCE_SELECT_VERTEX : \
0)
@ ME_EDIT_PAINT_VERT_SEL
@ ME_EDIT_PAINT_FACE_SEL
@ SCE_SELECT_FACE
@ SCE_SELECT_VERTEX

Definition at line 461 of file DNA_mesh_types.h.

Referenced by BKE_object_is_in_wpaint_select_vert(), and weight_paint_set().

◆ ME_USING_MIRROR_X_VERTEX_GROUPS

◆ MESH_MAX_VERTS

Typedef Documentation

◆ eMeshSymmetryType

◆ Mesh

typedef struct Mesh Mesh

◆ MeshRuntimeHandle

Workaround to forward-declare C++ type in C header.

Definition at line 45 of file DNA_mesh_types.h.

Enumeration Type Documentation

◆ anonymous enum

anonymous enum

Mesh.texspace_flag

Enumerator
ME_TEXSPACE_FLAG_AUTO 
ME_TEXSPACE_FLAG_AUTO_EVALUATED 

Definition at line 439 of file DNA_mesh_types.h.

◆ anonymous enum

anonymous enum

Mesh.editflag

Enumerator
ME_EDIT_MIRROR_VERTEX_GROUPS 
ME_EDIT_MIRROR_Y 
ME_EDIT_MIRROR_Z 
ME_EDIT_PAINT_FACE_SEL 
ME_EDIT_MIRROR_TOPO 
ME_EDIT_PAINT_VERT_SEL 

Definition at line 445 of file DNA_mesh_types.h.

◆ anonymous enum

anonymous enum

Mesh.flag

Enumerator
ME_FLAG_UNUSED_0 
ME_FLAG_UNUSED_1 
ME_FLAG_DEPRECATED_2 
ME_FLAG_UNUSED_3 
ME_FLAG_UNUSED_4 
ME_AUTOSMOOTH_LEGACY 
ME_FLAG_UNUSED_6 
ME_FLAG_UNUSED_7 
ME_REMESH_REPROJECT_ATTRIBUTES 
ME_DS_EXPAND 
ME_SCULPT_DYNAMIC_TOPOLOGY 
ME_NO_OVERLAPPING_TOPOLOGY 

Used to tag that the mesh has no overlapping topology (see #Mesh::no_overlapping_topology()). Theoretically this is runtime data that could always be recalculated, but since the intent is to improve performance and it only takes one bit, it is stored in the mesh instead.

ME_FLAG_UNUSED_8 
ME_REMESH_FIX_POLES 
ME_REMESH_REPROJECT_VOLUME 
ME_FLAG_UNUSED_9 

Definition at line 467 of file DNA_mesh_types.h.

◆ anonymous enum

anonymous enum

Mesh.remesh_mode

Enumerator
REMESH_VOXEL 
REMESH_QUAD 

Definition at line 502 of file DNA_mesh_types.h.

◆ anonymous enum

anonymous enum

SubsurfModifierData.subdivType

Enumerator
ME_CC_SUBSURF 
ME_SIMPLE_SUBSURF 

Definition at line 508 of file DNA_mesh_types.h.

◆ eMeshSymmetryType

Mesh.symmetry

Enumerator
ME_SYMMETRY_X 
ME_SYMMETRY_Y 
ME_SYMMETRY_Z 

Definition at line 514 of file DNA_mesh_types.h.