Blender
V4.5
source
blender
makesdna
DNA_meta_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 "
DNA_ID.h
"
12
#include "
DNA_defs.h
"
13
#include "
DNA_listBase.h
"
14
15
struct
AnimData
;
16
struct
BoundBox
;
17
struct
Ipo
;
18
struct
Material
;
19
20
typedef
struct
MetaElem
{
21
struct
MetaElem
*
next
, *
prev
;
22
24
struct
BoundBox
*
bb
;
25
26
short
type
,
flag
;
27
char
_pad
[4];
29
float
x
,
y
,
z
;
31
float
quat
[4];
33
float
expx
;
34
float
expy
;
35
float
expz
;
37
float
rad
;
39
float
rad2
;
41
float
s
;
43
float
len
;
44
46
float
*
mat
, *
imat
;
47
}
MetaElem
;
48
49
typedef
struct
MetaBall
{
50
#ifdef __cplusplus
52
static
constexpr
ID_Type
id_type =
ID_MB
;
53
#endif
54
55
ID
id
;
56
struct
AnimData
*
adt
;
57
58
ListBase
elems
;
60
ListBase
*
editelems
;
62
struct
Ipo
*ipo
DNA_DEPRECATED
;
63
64
/* material of the mother ball will define the material used of all others */
65
struct
Material
**
mat
;
66
68
char
flag
,
flag2
;
69
short
totcol
;
71
char
texspace_flag
;
72
char
_pad
[2];
73
78
char
needs_flush_to_id
;
79
80
float
texspace_location
[3];
81
float
texspace_size
[3];
82
84
float
wiresize
,
rendersize
;
85
86
/* bias elements to have an offset volume.
87
* mother ball changes will effect other objects thresholds,
88
* but these may also have their own thresh as an offset */
89
float
thresh
;
90
91
char
_pad0
[4];
92
94
MetaElem
*
lastelem
;
95
96
}
MetaBall
;
97
98
/* **************** METABALL ********************* */
99
101
enum
{
102
MB_TEXSPACE_FLAG_AUTO
= 1 << 0,
103
};
104
106
enum
{
107
MB_UPDATE_ALWAYS
= 0,
108
MB_UPDATE_HALFRES
= 1,
109
MB_UPDATE_FAST
= 2,
110
MB_UPDATE_NEVER
= 3,
111
};
112
114
enum
{
115
MB_DS_EXPAND
= 1 << 0,
116
};
117
119
enum
{
120
MB_BALL
= 0,
121
MB_TUBEX
= 1,
/* Deprecated. */
122
MB_TUBEY
= 2,
/* Deprecated. */
123
MB_TUBEZ
= 3,
/* Deprecated. */
124
MB_TUBE
= 4,
125
MB_PLANE
= 5,
126
MB_ELIPSOID
= 6,
127
MB_CUBE
= 7,
128
};
129
130
#define MB_TYPE_SIZE_SQUARED(type) ((type) == MB_ELIPSOID)
131
133
enum
{
134
MB_NEGATIVE
= 1 << 1,
135
MB_HIDE
= 1 << 3,
136
MB_SCALE_RAD
= 1 << 4,
137
};
DNA_ID.h
ID and Library types, which are fundamental for SDNA.
ID_Type
ID_Type
Definition
DNA_ID_enums.h:122
ID_MB
@ ID_MB
Definition
DNA_ID_enums.h:128
DNA_defs.h
DNA_listBase.h
These structs are the foundation for all linked lists in the library system.
MB_SCALE_RAD
@ MB_SCALE_RAD
Definition
DNA_meta_types.h:136
MB_NEGATIVE
@ MB_NEGATIVE
Definition
DNA_meta_types.h:134
MB_HIDE
@ MB_HIDE
Definition
DNA_meta_types.h:135
MB_DS_EXPAND
@ MB_DS_EXPAND
Definition
DNA_meta_types.h:115
MB_UPDATE_ALWAYS
@ MB_UPDATE_ALWAYS
Definition
DNA_meta_types.h:107
MB_UPDATE_FAST
@ MB_UPDATE_FAST
Definition
DNA_meta_types.h:109
MB_UPDATE_NEVER
@ MB_UPDATE_NEVER
Definition
DNA_meta_types.h:110
MB_UPDATE_HALFRES
@ MB_UPDATE_HALFRES
Definition
DNA_meta_types.h:108
MB_TUBEY
@ MB_TUBEY
Definition
DNA_meta_types.h:122
MB_PLANE
@ MB_PLANE
Definition
DNA_meta_types.h:125
MB_ELIPSOID
@ MB_ELIPSOID
Definition
DNA_meta_types.h:126
MB_TUBE
@ MB_TUBE
Definition
DNA_meta_types.h:124
MB_TUBEX
@ MB_TUBEX
Definition
DNA_meta_types.h:121
MB_CUBE
@ MB_CUBE
Definition
DNA_meta_types.h:127
MB_TUBEZ
@ MB_TUBEZ
Definition
DNA_meta_types.h:123
MB_BALL
@ MB_BALL
Definition
DNA_meta_types.h:120
MB_TEXSPACE_FLAG_AUTO
@ MB_TEXSPACE_FLAG_AUTO
Definition
DNA_meta_types.h:102
AnimData
Definition
DNA_anim_types.h:651
BoundBox
Definition
DNA_object_types.h:102
ID
Definition
DNA_ID.h:404
Ipo
Definition
DNA_ipo_types.h:85
ListBase
Definition
DNA_listBase.h:32
Material
Definition
DNA_material_types.h:164
MetaBall
Definition
DNA_meta_types.h:49
MetaBall::lastelem
MetaElem * lastelem
Definition
DNA_meta_types.h:94
MetaBall::_pad
char _pad[2]
Definition
DNA_meta_types.h:72
MetaBall::thresh
float thresh
Definition
DNA_meta_types.h:89
MetaBall::texspace_flag
char texspace_flag
Definition
DNA_meta_types.h:71
MetaBall::elems
ListBase elems
Definition
DNA_meta_types.h:58
MetaBall::rendersize
float rendersize
Definition
DNA_meta_types.h:84
MetaBall::_pad0
char _pad0[4]
Definition
DNA_meta_types.h:91
MetaBall::flag2
char flag2
Definition
DNA_meta_types.h:68
MetaBall::texspace_size
float texspace_size[3]
Definition
DNA_meta_types.h:81
MetaBall::DNA_DEPRECATED
struct Ipo *ipo DNA_DEPRECATED
Definition
DNA_meta_types.h:62
MetaBall::flag
char flag
Definition
DNA_meta_types.h:68
MetaBall::totcol
short totcol
Definition
DNA_meta_types.h:69
MetaBall::id
ID id
Definition
DNA_meta_types.h:55
MetaBall::wiresize
float wiresize
Definition
DNA_meta_types.h:84
MetaBall::adt
struct AnimData * adt
Definition
DNA_meta_types.h:56
MetaBall::texspace_location
float texspace_location[3]
Definition
DNA_meta_types.h:80
MetaBall::editelems
ListBase * editelems
Definition
DNA_meta_types.h:60
MetaBall::needs_flush_to_id
char needs_flush_to_id
Definition
DNA_meta_types.h:78
MetaBall::mat
struct Material ** mat
Definition
DNA_meta_types.h:65
MetaElem
Definition
DNA_meta_types.h:20
MetaElem::rad
float rad
Definition
DNA_meta_types.h:37
MetaElem::expy
float expy
Definition
DNA_meta_types.h:34
MetaElem::imat
float * imat
Definition
DNA_meta_types.h:46
MetaElem::_pad
char _pad[4]
Definition
DNA_meta_types.h:27
MetaElem::next
struct MetaElem * next
Definition
DNA_meta_types.h:21
MetaElem::type
short type
Definition
DNA_meta_types.h:26
MetaElem::expx
float expx
Definition
DNA_meta_types.h:33
MetaElem::x
float x
Definition
DNA_meta_types.h:29
MetaElem::z
float z
Definition
DNA_meta_types.h:29
MetaElem::expz
float expz
Definition
DNA_meta_types.h:35
MetaElem::quat
float quat[4]
Definition
DNA_meta_types.h:31
MetaElem::rad2
float rad2
Definition
DNA_meta_types.h:39
MetaElem::bb
struct BoundBox * bb
Definition
DNA_meta_types.h:24
MetaElem::len
float len
Definition
DNA_meta_types.h:43
MetaElem::y
float y
Definition
DNA_meta_types.h:29
MetaElem::mat
float * mat
Definition
DNA_meta_types.h:46
MetaElem::s
float s
Definition
DNA_meta_types.h:41
MetaElem::prev
struct MetaElem * prev
Definition
DNA_meta_types.h:21
MetaElem::flag
short flag
Definition
DNA_meta_types.h:26
Generated on
for Blender by
doxygen
1.16.1