Blender
V4.5
source
blender
editors
transform
transform_mode.hh
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
9
10
#pragma once
11
12
#include "
ED_transform.hh
"
13
14
#include "
transform.hh
"
15
16
struct
BMVert
;
17
struct
LinkNode
;
18
struct
TransData;
19
struct
TransDataContainer;
20
struct
TransInfo;
21
struct
bContext
;
22
struct
wmOperator
;
23
struct
wmEvent
;
24
25
namespace
blender::ed::transform
{
26
27
struct
TransModeInfo
{
28
int
flags
;
/* #eTFlag. */
29
30
void (*
init_fn
)(
TransInfo
*,
wmOperator
*);
31
33
void (*
transform_fn
)(
TransInfo
*);
34
40
void (*
transform_matrix_fn
)(
TransInfo
*,
float
[4][4]);
41
42
/* Event handler function that determines whether the viewport needs to be redrawn. */
43
enum
eRedrawFlag
(*
handle_event_fn
)(
TransInfo
*,
const
wmEvent
*);
44
51
float (*
snap_distance_fn
)(
TransInfo
*t,
const
float
p1[3],
const
float
p2[3]);
52
void (*
snap_apply_fn
)(
TransInfo
*,
float
*);
53
55
void (*
draw_fn
)(
TransInfo
*);
56
};
57
58
/* Header of #TransDataEdgeSlideVert, #TransDataEdgeSlideEdge. */
59
struct
TransDataGenericSlideVert
{
60
BMVert
*
v
;
61
LinkNode
**
cd_loop_groups
;
62
float
co_orig_3d
[3];
63
};
64
65
/* `transform_mode.cc` */
66
67
eTfmMode
transform_mode_really_used
(
bContext
*
C
,
eTfmMode
mode);
68
bool
transdata_check_local_center
(
const
TransInfo
*t,
short
around);
72
bool
transform_mode_is_changeable
(
int
mode);
73
bool
transform_mode_affect_only_locations
(
const
TransInfo
*t);
74
void
protectedTransBits
(
short
protectflag,
float
vec[3]);
75
void
protectedScaleBits
(
short
protectflag,
float
scale[3]);
76
void
constraintTransLim
(
const
TransInfo
*t,
const
TransDataContainer
*tc,
TransData
*td);
77
void
constraintScaleLim
(
const
TransInfo
*t,
const
TransDataContainer
*tc,
TransData
*td);
81
void
headerRotation
(
TransInfo
*t,
char
*
str
,
int
str_size,
float
final
);
88
void
ElementRotation_ex
(
const
TransInfo
*t,
89
const
TransDataContainer
*tc,
90
TransData
*td,
91
const
float
mat[3][3],
92
const
float
*center);
93
void
ElementRotation
(
const
TransInfo
*t,
94
const
TransDataContainer
*tc,
95
TransData
*td,
96
const
float
mat[3][3],
97
short
around);
98
void
headerResize
(
TransInfo
*t,
const
float
vec[3],
char
*
str
,
int
str_size);
99
void
ElementResize
(
const
TransInfo
*t,
100
const
TransDataContainer
*tc,
101
TransData
*td,
102
const
float
mat[3][3]);
103
void
transform_mode_init
(
TransInfo
*t,
wmOperator
*op,
int
mode);
107
void
transform_mode_default_modal_orientation_set
(
TransInfo
*t,
int
type);
108
109
/* `transform_mode_align.cc` */
110
111
extern
TransModeInfo
TransMode_align
;
112
113
/* `transform_mode_baketime.cc` */
114
115
extern
TransModeInfo
TransMode_baketime
;
116
117
/* `transform_mode_bbone_resize.cc` */
118
119
extern
TransModeInfo
TransMode_bboneresize
;
120
121
/* `transform_mode_bend.cc` */
122
123
extern
TransModeInfo
TransMode_bend
;
124
125
/* `transform_mode_boneenvelope.cc` */
126
127
extern
TransModeInfo
TransMode_boneenvelope
;
128
129
/* `transform_mode_boneroll.cc` */
130
131
extern
TransModeInfo
TransMode_boneroll
;
132
133
/* `transform_mode_curveshrinkfatten.cc` */
134
135
extern
TransModeInfo
TransMode_curveshrinkfatten
;
136
137
/* `transform_mode_customdata.cc` */
138
139
extern
TransModeInfo
TransMode_edgecrease
;
140
extern
TransModeInfo
TransMode_vertcrease
;
141
extern
TransModeInfo
TransMode_bevelweight
;
142
143
/* `transform_mode_edge_rotate_normal.cc` */
144
145
extern
TransModeInfo
TransMode_rotatenormal
;
146
147
/* `transform_mode_edge_seq_slide.cc` */
148
149
extern
TransModeInfo
TransMode_seqslide
;
150
bool
transform_mode_edge_seq_slide_use_restore_handle_selection
(
const
TransInfo
*t);
151
152
/* `transform_mode_edge_slide.cc` */
153
154
extern
TransModeInfo
TransMode_edgeslide
;
155
void
transform_mode_edge_slide_reproject_input
(
TransInfo
*t);
156
157
/* `transform_mode_gpopacity.cc` */
158
159
extern
TransModeInfo
TransMode_gpopacity
;
160
161
/* `transform_mode_maskshrinkfatten.cc` */
162
163
extern
TransModeInfo
TransMode_maskshrinkfatten
;
164
165
/* `transform_mode_mirror.cc` */
166
167
extern
TransModeInfo
TransMode_mirror
;
168
169
/* `transform_mode_push_pull.cc` */
170
171
extern
TransModeInfo
TransMode_pushpull
;
172
173
/* `transform_mode_resize.cc` */
174
175
extern
TransModeInfo
TransMode_resize
;
176
177
/* `transform_mode_rotate.cc` */
178
179
extern
TransModeInfo
TransMode_rotate
;
180
181
/* `transform_mode_shear.cc` */
182
183
extern
TransModeInfo
TransMode_shear
;
184
185
/* `transform_mode_shrink_fatten.cc` */
186
187
extern
TransModeInfo
TransMode_shrinkfatten
;
188
189
/* `transform_mode_skin_resize.cc` */
190
191
extern
TransModeInfo
TransMode_skinresize
;
192
193
/* `transform_mode_snapsource.cc` */
194
195
extern
TransModeInfo
TransMode_snapsource
;
196
void
transform_mode_snap_source_init
(
TransInfo
*t,
wmOperator
*op);
197
198
/* `transform_mode_tilt.cc` */
199
200
extern
TransModeInfo
TransMode_tilt
;
201
202
/* `transform_mode_timescale.cc` */
203
204
extern
TransModeInfo
TransMode_timescale
;
205
206
/* `transform_mode_timeslide.cc` */
207
208
extern
TransModeInfo
TransMode_timeslide
;
209
210
/* `transform_mode_timetranslate.cc` */
211
212
extern
TransModeInfo
TransMode_timetranslate
;
213
214
/* `transform_mode_tosphere.cc` */
215
216
extern
TransModeInfo
TransMode_tosphere
;
217
218
/* `transform_mode_trackball.cc` */
219
220
extern
TransModeInfo
TransMode_trackball
;
221
222
/* `transform_mode_translate.cc` */
223
224
extern
TransModeInfo
TransMode_translate
;
225
226
/* `transform_mode_vert_slide.cc` */
227
228
extern
TransModeInfo
TransMode_vertslide
;
229
void
transform_mode_vert_slide_reproject_input
(
TransInfo
*t);
230
231
}
// namespace blender::ed::transform
ED_transform.hh
C
#define C
Definition
RandGen.cpp:29
str
#define str(s)
Definition
ffmpeg_codecs.cc:103
blender::ed::transform
Definition
ED_gizmo_library.hh:19
blender::ed::transform::TransMode_mirror
TransModeInfo TransMode_mirror
Definition
transform_mode_mirror.cc:241
blender::ed::transform::TransMode_shrinkfatten
TransModeInfo TransMode_shrinkfatten
Definition
transform_mode_shrink_fatten.cc:162
blender::ed::transform::TransMode_boneroll
TransModeInfo TransMode_boneroll
Definition
transform_mode_boneroll.cc:96
blender::ed::transform::TransMode_edgecrease
TransModeInfo TransMode_edgecrease
Definition
transform_mode_customdata.cc:147
blender::ed::transform::TransMode_bboneresize
TransModeInfo TransMode_bboneresize
Definition
transform_mode_bbone_resize.cc:177
blender::ed::transform::TransMode_vertcrease
TransModeInfo TransMode_vertcrease
Definition
transform_mode_customdata.cc:158
blender::ed::transform::TransMode_timescale
TransModeInfo TransMode_timescale
Definition
transform_mode_timescale.cc:158
blender::ed::transform::TransMode_boneenvelope
TransModeInfo TransMode_boneenvelope
Definition
transform_mode_boneenvelope.cc:99
blender::ed::transform::transform_mode_is_changeable
bool transform_mode_is_changeable(const int mode)
Definition
transform_mode.cc:72
blender::ed::transform::eTfmMode
eTfmMode
Definition
ED_transform.hh:36
blender::ed::transform::headerRotation
void headerRotation(TransInfo *t, char *str, const int str_size, float final)
Definition
transform_mode.cc:554
blender::ed::transform::TransMode_tilt
TransModeInfo TransMode_tilt
Definition
transform_mode_tilt.cc:104
blender::ed::transform::TransMode_edgeslide
TransModeInfo TransMode_edgeslide
Definition
transform_mode_edge_slide.cc:986
blender::ed::transform::TransMode_rotate
TransModeInfo TransMode_rotate
Definition
transform_mode_rotate.cc:388
blender::ed::transform::transform_mode_vert_slide_reproject_input
void transform_mode_vert_slide_reproject_input(TransInfo *t)
Definition
transform_mode_vert_slide.cc:641
blender::ed::transform::TransMode_pushpull
TransModeInfo TransMode_pushpull
Definition
transform_mode_push_pull.cc:140
blender::ed::transform::TransMode_baketime
TransModeInfo TransMode_baketime
Definition
transform_mode_baketime.cc:131
blender::ed::transform::TransMode_align
TransModeInfo TransMode_align
Definition
transform_mode_align.cc:77
blender::ed::transform::ElementRotation
void ElementRotation(const TransInfo *t, const TransDataContainer *tc, TransData *td, const float mat[3][3], const short around)
Definition
transform_mode.cc:832
blender::ed::transform::TransMode_tosphere
TransModeInfo TransMode_tosphere
Definition
transform_mode_tosphere.cc:224
blender::ed::transform::protectedTransBits
void protectedTransBits(short protectflag, float vec[3])
Definition
transform_mode.cc:95
blender::ed::transform::protectedScaleBits
void protectedScaleBits(short protectflag, float scale[3])
Definition
transform_mode.cc:232
blender::ed::transform::transform_mode_edge_seq_slide_use_restore_handle_selection
bool transform_mode_edge_seq_slide_use_restore_handle_selection(const TransInfo *t)
Definition
transform_mode_edge_seq_slide.cc:144
blender::ed::transform::TransMode_gpopacity
TransModeInfo TransMode_gpopacity
Definition
transform_mode_gpopacity.cc:108
blender::ed::transform::TransMode_skinresize
TransModeInfo TransMode_skinresize
Definition
transform_mode_skin_resize.cc:134
blender::ed::transform::headerResize
void headerResize(TransInfo *t, const float vec[3], char *str, const int str_size)
Definition
transform_mode.cc:857
blender::ed::transform::TransMode_curveshrinkfatten
TransModeInfo TransMode_curveshrinkfatten
Definition
transform_mode_curveshrinkfatten.cc:119
blender::ed::transform::TransMode_bevelweight
TransModeInfo TransMode_bevelweight
Definition
transform_mode_customdata.cc:169
blender::ed::transform::transform_mode_default_modal_orientation_set
void transform_mode_default_modal_orientation_set(TransInfo *t, int type)
Definition
transform_mode.cc:1209
blender::ed::transform::TransMode_vertslide
TransModeInfo TransMode_vertslide
Definition
transform_mode_vert_slide.cc:655
blender::ed::transform::transform_mode_really_used
eTfmMode transform_mode_really_used(bContext *C, eTfmMode mode)
Definition
transform_mode.cc:39
blender::ed::transform::TransMode_timeslide
TransModeInfo TransMode_timeslide
Definition
transform_mode_timeslide.cc:229
blender::ed::transform::TransMode_shear
TransModeInfo TransMode_shear
Definition
transform_mode_shear.cc:327
blender::ed::transform::TransMode_seqslide
TransModeInfo TransMode_seqslide
Definition
transform_mode_edge_seq_slide.cc:158
blender::ed::transform::transform_mode_snap_source_init
void transform_mode_snap_source_init(TransInfo *t, wmOperator *op)
Definition
transform_mode_snapsource.cc:166
blender::ed::transform::TransMode_timetranslate
TransModeInfo TransMode_timetranslate
Definition
transform_mode_timetranslate.cc:152
blender::ed::transform::TransMode_bend
TransModeInfo TransMode_bend
Definition
transform_mode_bend.cc:322
blender::ed::transform::TransMode_snapsource
TransModeInfo TransMode_snapsource
Definition
transform_mode_snapsource.cc:265
blender::ed::transform::transform_mode_affect_only_locations
bool transform_mode_affect_only_locations(const TransInfo *t)
Definition
transform_mode.cc:84
blender::ed::transform::constraintScaleLim
void constraintScaleLim(const TransInfo *t, const TransDataContainer *tc, TransData *td)
Definition
transform_mode.cc:451
blender::ed::transform::ElementRotation_ex
void ElementRotation_ex(const TransInfo *t, const TransDataContainer *tc, TransData *td, const float mat[3][3], const float *center)
Definition
transform_mode.cc:581
blender::ed::transform::eRedrawFlag
eRedrawFlag
Definition
transform.hh:250
blender::ed::transform::ElementResize
void ElementResize(const TransInfo *t, const TransDataContainer *tc, TransData *td, const float mat[3][3])
Definition
transform_mode.cc:952
blender::ed::transform::TransMode_rotatenormal
TransModeInfo TransMode_rotatenormal
Definition
transform_mode_edge_rotate_normal.cc:146
blender::ed::transform::constraintTransLim
void constraintTransLim(const TransInfo *t, const TransDataContainer *tc, TransData *td)
Definition
transform_mode.cc:251
blender::ed::transform::transdata_check_local_center
bool transdata_check_local_center(const TransInfo *t, short around)
Definition
transform_mode.cc:56
blender::ed::transform::transform_mode_init
void transform_mode_init(TransInfo *t, wmOperator *op, const int mode)
Definition
transform_mode.cc:1186
blender::ed::transform::TransMode_trackball
TransModeInfo TransMode_trackball
Definition
transform_mode_trackball.cc:177
blender::ed::transform::TransMode_translate
TransModeInfo TransMode_translate
Definition
transform_mode_translate.cc:626
blender::ed::transform::TransMode_resize
TransModeInfo TransMode_resize
Definition
transform_mode_resize.cc:345
blender::ed::transform::transform_mode_edge_slide_reproject_input
void transform_mode_edge_slide_reproject_input(TransInfo *t)
Definition
transform_mode_edge_slide.cc:965
blender::ed::transform::TransMode_maskshrinkfatten
TransModeInfo TransMode_maskshrinkfatten
Definition
transform_mode_maskshrinkfatten.cc:130
BMVert
Definition
bmesh_class.hh:90
LinkNode
Definition
BLI_linklist.h:19
bContext
Definition
blenkernel/intern/context.cc:58
blender::ed::transform::TransDataContainer
Definition
transform.hh:662
blender::ed::transform::TransDataGenericSlideVert
Definition
transform_mode.hh:59
blender::ed::transform::TransDataGenericSlideVert::cd_loop_groups
LinkNode ** cd_loop_groups
Definition
transform_mode.hh:61
blender::ed::transform::TransDataGenericSlideVert::v
BMVert * v
Definition
transform_mode.hh:60
blender::ed::transform::TransDataGenericSlideVert::co_orig_3d
float co_orig_3d[3]
Definition
transform_mode.hh:62
blender::ed::transform::TransData
Definition
transform.hh:496
blender::ed::transform::TransInfo
Definition
transform.hh:796
blender::ed::transform::TransModeInfo
Definition
transform_mode.hh:27
blender::ed::transform::TransModeInfo::handle_event_fn
enum eRedrawFlag(* handle_event_fn)(TransInfo *, const wmEvent *)
Definition
transform_mode.hh:43
blender::ed::transform::TransModeInfo::draw_fn
void(* draw_fn)(TransInfo *)
Definition
transform_mode.hh:55
blender::ed::transform::TransModeInfo::transform_matrix_fn
void(* transform_matrix_fn)(TransInfo *, float[4][4])
Definition
transform_mode.hh:40
blender::ed::transform::TransModeInfo::snap_apply_fn
void(* snap_apply_fn)(TransInfo *, float *)
Definition
transform_mode.hh:52
blender::ed::transform::TransModeInfo::flags
int flags
Definition
transform_mode.hh:28
blender::ed::transform::TransModeInfo::snap_distance_fn
float(* snap_distance_fn)(TransInfo *t, const float p1[3], const float p2[3])
Definition
transform_mode.hh:51
blender::ed::transform::TransModeInfo::transform_fn
void(* transform_fn)(TransInfo *)
Definition
transform_mode.hh:33
blender::ed::transform::TransModeInfo::init_fn
void(* init_fn)(TransInfo *, wmOperator *)
Definition
transform_mode.hh:30
wmEvent
Definition
WM_types.hh:750
wmOperator
Definition
DNA_windowmanager_types.h:636
transform.hh
Generated on
for Blender by
doxygen
1.16.1