Blender
V5.0
source
blender
makesdna
DNA_meshdata_types.h
Go to the documentation of this file.
1
/* SPDX-FileCopyrightText: 2001-2002 NaN Holding BV. All rights reserved.
2
*
3
* SPDX-License-Identifier: GPL-2.0-or-later */
4
8
9
#pragma once
10
11
#include "
BLI_sys_types.h
"
12
13
/* -------------------------------------------------------------------- */
16
23
typedef
struct
MSelect
{
25
int
index
;
27
int
type
;
28
}
MSelect
;
29
31
enum
{
32
ME_VSEL
= 0,
33
ME_ESEL
= 1,
34
ME_FSEL
= 2,
35
};
36
38
39
/* -------------------------------------------------------------------- */
42
93
95
96
/* -------------------------------------------------------------------- */
99
101
typedef
struct
MFloatProperty
{
102
float
f
;
103
}
MFloatProperty
;
104
typedef
struct
MIntProperty
{
105
int
i
;
106
}
MIntProperty
;
107
108
typedef
struct
MStringProperty
{
109
char
s
[255],
s_len
;
110
}
MStringProperty
;
111
typedef
struct
MBoolProperty
{
112
uint8_t
b
;
113
}
MBoolProperty
;
114
typedef
struct
MInt8Property
{
115
int8_t
i
;
116
}
MInt8Property
;
117
119
120
/* -------------------------------------------------------------------- */
123
127
typedef
struct
MDeformWeight
{
129
unsigned
int
def_nr
;
131
float
weight
;
132
}
MDeformWeight
;
133
137
typedef
struct
MDeformVert
{
144
struct
MDeformWeight
*
dw
;
150
int
totweight
;
152
int
flag
;
153
}
MDeformVert
;
154
155
typedef
struct
MVertSkin
{
160
float
radius
[3];
161
163
int
flag
;
164
}
MVertSkin
;
165
166
typedef
enum
eMVertSkinFlag
{
171
MVERT_SKIN_ROOT
= 1,
172
177
MVERT_SKIN_LOOSE
= 2,
178
}
eMVertSkinFlag
;
179
181
182
/* -------------------------------------------------------------------- */
185
190
typedef
struct
MLoopCol
{
191
unsigned
char
r
,
g
,
b
,
a
;
192
}
MLoopCol
;
193
194
typedef
struct
MPropCol
{
195
float
color
[4];
196
}
MPropCol
;
197
199
typedef
struct
MDisps
{
200
/* Strange bug in SDNA: if disps pointer comes first, it fails to see totdisp */
201
int
totdisp
;
202
int
level
;
203
float
(*
disps
)[3];
204
211
unsigned
int
*
hidden
;
212
}
MDisps
;
213
215
typedef
struct
GridPaintMask
{
220
float
*
data
;
221
223
unsigned
int
level
;
224
225
char
_pad
[4];
226
}
GridPaintMask
;
227
229
230
/* -------------------------------------------------------------------- */
233
241
#
242
#
243
typedef
struct
OrigSpaceFace
{
244
float
uv
[4][2];
245
}
OrigSpaceFace
;
246
247
#
248
#
249
typedef
struct
OrigSpaceLoop
{
250
float
uv
[2];
251
}
OrigSpaceLoop
;
252
254
255
#ifdef DNA_DEPRECATED_ALLOW
256
257
/* -------------------------------------------------------------------- */
260
261
typedef
struct
FreestyleEdge {
262
char
flag
;
263
} FreestyleEdge;
264
266
enum
{
267
FREESTYLE_EDGE_MARK = 1,
268
};
269
270
typedef
struct
FreestyleFace {
271
char
flag
;
272
} FreestyleFace;
273
275
enum
{
276
FREESTYLE_FACE_MARK = 1,
277
};
278
280
281
/* -------------------------------------------------------------------- */
284
290
typedef
struct
MEdge {
292
unsigned
int
v1,
v2
;
294
char
crease_legacy;
298
char
bweight_legacy;
299
short
flag_legacy;
300
} MEdge;
301
303
enum
{
305
// SELECT = (1 << 0),
306
ME_SEAM = (1 << 2),
308
// ME_HIDE = (1 << 4),
310
ME_LOOSEEDGE = (1 << 7),
312
ME_SHARP = (1 << 9),
313
};
314
322
typedef
struct
MPoly {
324
int
loopstart;
326
int
totloop;
328
short
mat_nr_legacy;
329
char
flag_legacy, _pad;
330
} MPoly;
331
333
enum
{
335
ME_SMOOTH = (1 << 0),
337
ME_FACE_SEL = (1 << 1),
339
// ME_HIDE = (1 << 4),
340
};
341
346
typedef
struct
MLoopUV {
347
float
uv[2];
348
int
flag
;
349
} MLoopUV;
350
352
enum
{
353
MLOOPUV_EDGESEL = (1 << 0),
354
MLOOPUV_VERTSEL = (1 << 1),
355
MLOOPUV_PINNED = (1 << 2),
356
};
357
361
typedef
struct
MVert {
362
float
co_legacy[3];
367
char
flag_legacy;
371
char
bweight_legacy;
372
char
_pad[2];
373
} MVert;
374
376
enum
{
378
// SELECT = (1 << 0),
380
ME_HIDE = (1 << 4),
381
};
382
388
typedef
struct
MLoop {
390
unsigned
int
v
;
392
unsigned
int
e
;
393
} MLoop;
394
395
#endif
396
402
typedef
struct
MFace
{
403
unsigned
int
v1
,
v2
,
v3
,
v4
;
404
short
mat_nr
;
406
char
edcode
,
flag
;
407
}
MFace
;
408
410
enum
{
411
ME_V1V2
= (1 << 0),
412
ME_V2V3
= (1 << 1),
413
ME_V3V1
= (1 << 2),
414
ME_V3V4
=
ME_V3V1
,
415
ME_V4V1
= (1 << 3),
416
};
417
419
typedef
struct
MTFace
{
420
float
uv
[4][2];
421
}
MTFace
;
422
428
typedef
struct
MCol
{
429
unsigned
char
a
,
r
,
g
,
b
;
430
}
MCol
;
431
432
#ifdef DNA_DEPRECATED_ALLOW
433
435
typedef
struct
MRecast {
436
int
i
;
437
} MRecast;
438
439
#endif
440
BLI_sys_types.h
eMVertSkinFlag
eMVertSkinFlag
Definition
DNA_meshdata_types.h:166
MVERT_SKIN_LOOSE
@ MVERT_SKIN_LOOSE
Definition
DNA_meshdata_types.h:177
MVERT_SKIN_ROOT
@ MVERT_SKIN_ROOT
Definition
DNA_meshdata_types.h:171
ME_V4V1
@ ME_V4V1
Definition
DNA_meshdata_types.h:415
ME_V2V3
@ ME_V2V3
Definition
DNA_meshdata_types.h:412
ME_V1V2
@ ME_V1V2
Definition
DNA_meshdata_types.h:411
ME_V3V4
@ ME_V3V4
Definition
DNA_meshdata_types.h:414
ME_V3V1
@ ME_V3V1
Definition
DNA_meshdata_types.h:413
ME_VSEL
@ ME_VSEL
Definition
DNA_meshdata_types.h:32
ME_FSEL
@ ME_FSEL
Definition
DNA_meshdata_types.h:34
ME_ESEL
@ ME_ESEL
Definition
DNA_meshdata_types.h:33
v2
ATTR_WARN_UNUSED_RESULT const BMVert * v2
Definition
bmesh_query_inline.hh:41
e
ATTR_WARN_UNUSED_RESULT const BMVert const BMEdge * e
Definition
bmesh_query_inline.hh:42
v
ATTR_WARN_UNUSED_RESULT const BMVert * v
Definition
bmesh_query_inline.hh:23
float
nullptr float
Definition
closures_template.h:123
GridPaintMask
Definition
DNA_meshdata_types.h:215
GridPaintMask::_pad
char _pad[4]
Definition
DNA_meshdata_types.h:225
GridPaintMask::level
unsigned int level
Definition
DNA_meshdata_types.h:223
GridPaintMask::data
float * data
Definition
DNA_meshdata_types.h:220
MBoolProperty
Definition
DNA_meshdata_types.h:111
MBoolProperty::b
uint8_t b
Definition
DNA_meshdata_types.h:112
MCol
Definition
DNA_meshdata_types.h:428
MCol::r
unsigned char r
Definition
DNA_meshdata_types.h:429
MCol::a
unsigned char a
Definition
DNA_meshdata_types.h:429
MCol::g
unsigned char g
Definition
DNA_meshdata_types.h:429
MCol::b
unsigned char b
Definition
DNA_meshdata_types.h:429
MDeformVert
Definition
DNA_meshdata_types.h:137
MDeformVert::flag
int flag
Definition
DNA_meshdata_types.h:152
MDeformVert::dw
struct MDeformWeight * dw
Definition
DNA_meshdata_types.h:144
MDeformVert::totweight
int totweight
Definition
DNA_meshdata_types.h:150
MDeformWeight
Definition
DNA_meshdata_types.h:127
MDeformWeight::weight
float weight
Definition
DNA_meshdata_types.h:131
MDeformWeight::def_nr
unsigned int def_nr
Definition
DNA_meshdata_types.h:129
MDisps
Definition
DNA_meshdata_types.h:199
MDisps::disps
float(* disps)[3]
Definition
DNA_meshdata_types.h:203
MDisps::hidden
unsigned int * hidden
Definition
DNA_meshdata_types.h:211
MDisps::level
int level
Definition
DNA_meshdata_types.h:202
MDisps::totdisp
int totdisp
Definition
DNA_meshdata_types.h:201
MFace
Definition
DNA_meshdata_types.h:402
MFace::v2
unsigned int v2
Definition
DNA_meshdata_types.h:403
MFace::flag
char flag
Definition
DNA_meshdata_types.h:406
MFace::v1
unsigned int v1
Definition
DNA_meshdata_types.h:403
MFace::mat_nr
short mat_nr
Definition
DNA_meshdata_types.h:404
MFace::v4
unsigned int v4
Definition
DNA_meshdata_types.h:403
MFace::v3
unsigned int v3
Definition
DNA_meshdata_types.h:403
MFace::edcode
char edcode
Definition
DNA_meshdata_types.h:406
MFloatProperty
Definition
DNA_meshdata_types.h:101
MFloatProperty::f
float f
Definition
DNA_meshdata_types.h:102
MInt8Property
Definition
DNA_meshdata_types.h:114
MInt8Property::i
int8_t i
Definition
DNA_meshdata_types.h:115
MIntProperty
Definition
DNA_meshdata_types.h:104
MIntProperty::i
int i
Definition
DNA_meshdata_types.h:105
MLoopCol
Definition
DNA_meshdata_types.h:190
MLoopCol::a
unsigned char a
Definition
DNA_meshdata_types.h:191
MLoopCol::b
unsigned char b
Definition
DNA_meshdata_types.h:191
MLoopCol::r
unsigned char r
Definition
DNA_meshdata_types.h:191
MLoopCol::g
unsigned char g
Definition
DNA_meshdata_types.h:191
MPropCol
Definition
DNA_meshdata_types.h:194
MPropCol::color
float color[4]
Definition
DNA_meshdata_types.h:195
MSelect
Definition
DNA_meshdata_types.h:23
MSelect::index
int index
Definition
DNA_meshdata_types.h:25
MSelect::type
int type
Definition
DNA_meshdata_types.h:27
MStringProperty
Definition
DNA_meshdata_types.h:108
MStringProperty::s
char s[255]
Definition
DNA_meshdata_types.h:109
MStringProperty::s_len
char s_len
Definition
DNA_meshdata_types.h:109
MTFace
Definition
DNA_meshdata_types.h:419
MTFace::uv
float uv[4][2]
Definition
DNA_meshdata_types.h:420
MVertSkin
Definition
DNA_meshdata_types.h:155
MVertSkin::flag
int flag
Definition
DNA_meshdata_types.h:163
MVertSkin::radius
float radius[3]
Definition
DNA_meshdata_types.h:160
OrigSpaceFace
Definition
DNA_meshdata_types.h:243
OrigSpaceFace::uv
float uv[4][2]
Definition
DNA_meshdata_types.h:244
OrigSpaceLoop
Definition
DNA_meshdata_types.h:249
OrigSpaceLoop::uv
float uv[2]
Definition
DNA_meshdata_types.h:250
i
i
Definition
text_draw.cc:230
flag
uint8_t flag
Definition
wm_window.cc:145
Generated on
for Blender by
doxygen
1.16.1