Blender
V2.93
source
blender
makesdna
DNA_meta_types.h
Go to the documentation of this file.
1
/*
2
* This program is free software; you can redistribute it and/or
3
* modify it under the terms of the GNU General Public License
4
* as published by the Free Software Foundation; either version 2
5
* of the License, or (at your option) any later version.
6
*
7
* This program is distributed in the hope that it will be useful,
8
* but WITHOUT ANY WARRANTY; without even the implied warranty of
9
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
10
* GNU General Public License for more details.
11
*
12
* You should have received a copy of the GNU General Public License
13
* along with this program; if not, write to the Free Software Foundation,
14
* Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
15
*
16
* The Original Code is Copyright (C) 2001-2002 by NaN Holding BV.
17
* All rights reserved.
18
*/
19
24
#pragma once
25
26
#include "
DNA_ID.h
"
27
#include "
DNA_defs.h
"
28
#include "
DNA_listBase.h
"
29
30
#ifdef __cplusplus
31
extern
"C"
{
32
#endif
33
34
struct
AnimData
;
35
struct
BoundBox
;
36
struct
Ipo
;
37
struct
Material
;
38
39
typedef
struct
MetaElem
{
40
struct
MetaElem
*
next
, *
prev
;
41
43
struct
BoundBox
*
bb
;
44
45
short
type
,
flag
;
46
char
_pad
[4];
48
float
x
,
y
,
z
;
50
float
quat
[4];
52
float
expx
;
53
float
expy
;
54
float
expz
;
56
float
rad
;
58
float
rad2
;
60
float
s
;
62
float
len
;
63
65
float
*
mat
, *
imat
;
66
}
MetaElem
;
67
68
typedef
struct
MetaBall
{
69
ID
id
;
70
struct
AnimData
*
adt
;
71
72
ListBase
elems
;
73
ListBase
disp
;
75
ListBase
*
editelems
;
77
struct
Ipo
*ipo
DNA_DEPRECATED
;
78
79
/* material of the mother ball will define the material used of all others */
80
struct
Material
**
mat
;
81
83
char
flag
,
flag2
;
84
short
totcol
;
86
short
texflag
;
87
char
_pad
[1];
88
93
char
needs_flush_to_id
;
94
95
/* texture space, copied as one block in editobject.c */
96
float
loc
[3];
97
float
size
[3];
98
float
rot
[3];
99
101
float
wiresize
,
rendersize
;
102
103
/* bias elements to have an offset volume.
104
* mother ball changes will effect other objects thresholds,
105
* but these may also have their own thresh as an offset */
106
float
thresh
;
107
108
/* used in editmode */
109
/*ListBase edit_elems;*/
110
MetaElem
*
lastelem
;
111
112
void
*
batch_cache
;
113
}
MetaBall
;
114
115
/* **************** METABALL ********************* */
116
117
/* texflag */
118
#define MB_AUTOSPACE 1
119
120
/* mb->flag */
121
#define MB_UPDATE_ALWAYS 0
122
#define MB_UPDATE_HALFRES 1
123
#define MB_UPDATE_FAST 2
124
#define MB_UPDATE_NEVER 3
125
126
/* mb->flag2 */
127
#define MB_DS_EXPAND (1 << 0)
128
129
/* ml->type */
130
#define MB_BALL 0
131
#define MB_TUBEX 1
/* deprecated. */
132
#define MB_TUBEY 2
/* deprecated. */
133
#define MB_TUBEZ 3
/* deprecated. */
134
#define MB_TUBE 4
135
#define MB_PLANE 5
136
#define MB_ELIPSOID 6
137
#define MB_CUBE 7
138
139
#define MB_TYPE_SIZE_SQUARED(type) (type == MB_ELIPSOID)
140
141
/* ml->flag */
142
#define MB_NEGATIVE 2
143
#define MB_HIDE 8
144
#define MB_SCALE_RAD 16
145
146
#ifdef __cplusplus
147
}
148
#endif
DNA_ID.h
ID and Library types, which are fundamental for sdna.
DNA_defs.h
DNA_listBase.h
These structs are the foundation for all linked lists in the library system.
MetaBall
struct MetaBall MetaBall
MetaElem
struct MetaElem MetaElem
AnimData
Definition:
DNA_anim_types.h:1083
BoundBox
Definition:
DNA_object_types.h:104
ID
Definition:
DNA_ID.h:273
Ipo
Definition:
DNA_ipo_types.h:99
ListBase
Definition:
DNA_listBase.h:46
Material
Definition:
DNA_material_types.h:158
MetaBall
Definition:
DNA_meta_types.h:68
MetaBall::lastelem
MetaElem * lastelem
Definition:
DNA_meta_types.h:110
MetaBall::_pad
char _pad[1]
Definition:
DNA_meta_types.h:87
MetaBall::thresh
float thresh
Definition:
DNA_meta_types.h:106
MetaBall::size
float size[3]
Definition:
DNA_meta_types.h:97
MetaBall::elems
ListBase elems
Definition:
DNA_meta_types.h:72
MetaBall::rendersize
float rendersize
Definition:
DNA_meta_types.h:101
MetaBall::flag2
char flag2
Definition:
DNA_meta_types.h:83
MetaBall::batch_cache
void * batch_cache
Definition:
DNA_meta_types.h:112
MetaBall::DNA_DEPRECATED
struct Ipo *ipo DNA_DEPRECATED
Definition:
DNA_meta_types.h:77
MetaBall::disp
ListBase disp
Definition:
DNA_meta_types.h:73
MetaBall::flag
char flag
Definition:
DNA_meta_types.h:83
MetaBall::totcol
short totcol
Definition:
DNA_meta_types.h:84
MetaBall::id
ID id
Definition:
DNA_meta_types.h:69
MetaBall::loc
float loc[3]
Definition:
DNA_meta_types.h:96
MetaBall::wiresize
float wiresize
Definition:
DNA_meta_types.h:101
MetaBall::adt
struct AnimData * adt
Definition:
DNA_meta_types.h:70
MetaBall::editelems
ListBase * editelems
Definition:
DNA_meta_types.h:75
MetaBall::needs_flush_to_id
char needs_flush_to_id
Definition:
DNA_meta_types.h:93
MetaBall::mat
struct Material ** mat
Definition:
DNA_meta_types.h:80
MetaBall::texflag
short texflag
Definition:
DNA_meta_types.h:86
MetaBall::rot
float rot[3]
Definition:
DNA_meta_types.h:98
MetaElem
Definition:
DNA_meta_types.h:39
MetaElem::rad
float rad
Definition:
DNA_meta_types.h:56
MetaElem::expy
float expy
Definition:
DNA_meta_types.h:53
MetaElem::imat
float * imat
Definition:
DNA_meta_types.h:65
MetaElem::_pad
char _pad[4]
Definition:
DNA_meta_types.h:46
MetaElem::next
struct MetaElem * next
Definition:
DNA_meta_types.h:40
MetaElem::type
short type
Definition:
DNA_meta_types.h:45
MetaElem::expx
float expx
Definition:
DNA_meta_types.h:52
MetaElem::x
float x
Definition:
DNA_meta_types.h:48
MetaElem::z
float z
Definition:
DNA_meta_types.h:48
MetaElem::expz
float expz
Definition:
DNA_meta_types.h:54
MetaElem::quat
float quat[4]
Definition:
DNA_meta_types.h:50
MetaElem::rad2
float rad2
Definition:
DNA_meta_types.h:58
MetaElem::bb
struct BoundBox * bb
Definition:
DNA_meta_types.h:43
MetaElem::len
float len
Definition:
DNA_meta_types.h:62
MetaElem::y
float y
Definition:
DNA_meta_types.h:48
MetaElem::mat
float * mat
Definition:
DNA_meta_types.h:65
MetaElem::s
float s
Definition:
DNA_meta_types.h:60
MetaElem::prev
struct MetaElem * prev
Definition:
DNA_meta_types.h:40
MetaElem::flag
short flag
Definition:
DNA_meta_types.h:45
Generated on Tue Jan 31 2023 14:37:24 for Blender by
doxygen
1.9.1