53 int i,
count = 0, count_all = 0;
60 for (i = 0, bezt = fcu->
bezt; i < fcu->totvert; i++, bezt++) {
72 if (is_prop_edit &&
count > 0) {
82 int count = 0, count_all = 0;
98 if (is_prop_edit &&
count > 0) {
108 int count = 0, count_all = 0;
110 if (masklay ==
NULL) {
116 masklayer_shape = masklayer_shape->
next) {
125 if (is_prop_edit &&
count > 0) {
140 td2d->
h1 = bezt->
vec[0];
141 td2d->
h2 = bezt->
vec[2];
154 td->center[0] = td->
ival;
155 td->center[1] = ypos;
193 for (i = 0, bezt = fcu->
bezt; i < fcu->totvert; i++, bezt++) {
195 if (is_prop_edit || (bezt->
f2 &
SELECT)) {
238 td->
val = td->loc = &tfd->
val;
239 td->
ival = td->iloc[0] = tfd->
val;
241 td->center[0] = td->
ival;
242 td->center[1] = ypos;
269 masklay_shape = masklay_shape->
next) {
275 td->
val = td->loc = &tfd->
val;
276 td->
ival = td->iloc[0] = tfd->
val;
278 td->center[0] = td->
ival;
279 td->center[1] = ypos;
300 rctf *datamask = &
t->region->v2d.cur;
316 float ypos = 1.0f / ((ysize / xsize) * (xmask / ymask)) *
BLI_rctf_cent_y(&
t->region->v2d.cur);
337 for (ale = anim_data.
first; ale; ale = ale->
next) {
365 gpf_count += adt_count;
373 if (
count == 0 && gpf_count == 0) {
396 for (ale = anim_data.
first; ale; ale = ale->
next) {
398 if (is_prop_edit && !ale->
tag) {
440 for (ale = anim_data.first; ale; ale = ale->next) {
460 for (gpf = gpl->
frames.
first; gpf; gpf = gpf->next) {
462 td->dist = td->rdist = 0.0f;
467 for (gpf_iter = gpl->
frames.
first; gpf_iter; gpf_iter = gpf_iter->
next) {
477 td->dist = td->rdist =
min;
487 masklay_shape = masklay_shape->next) {
490 td->dist = td->rdist = 0.0f;
496 masklay_iter = masklay_iter->
next) {
499 int val =
abs(masklay_shape->frame - masklay_iter->
frame);
506 td->dist = td->rdist =
min;
517 for (i = 0, bezt = fcu->
bezt; i < fcu->totvert; i++, bezt++) {
520 td->dist = td->rdist = 0.0f;
526 for (j = 0, bezt_iter = fcu->
bezt; j < fcu->totvert; j++, bezt_iter++) {
529 float val =
fabs(bezt->vec[1][0] - bezt_iter->
vec[1][0]);
536 td->dist = td->rdist =
min;
582 ac.view_layer =
t->view_layer;
583 ac.obact =
OBACT(view_layer);
585 ac.region =
t->region;
586 ac.sl = (
t->area) ?
t->area->spacedata.first :
NULL;
587 ac.spacetype = (
t->area) ?
t->area->spacetype : 0;
588 ac.regiontype = (
t->region) ?
t->region->regiontype : 0;
604 for (td = tc->
data, td2d = tc->
data_2d; i < tc->data_len; i++, td++, td2d++) {
610 td->loc[1] = td->iloc[1];
625 for (ale = anim_data.
first; ale; ale = ale->
next) {
653 *((
bool *)thunk) =
true;
665 for (masklay =
mask->masklayers.first; masklay; masklay = masklay->
next) {
667 bool is_double =
false;
673 masklay_shape = masklay_shape_next) {
674 masklay_shape_next = masklay_shape->
next;
675 if (masklay_shape_next && masklay_shape->
frame == masklay_shape_next->
frame) {
683 masklay_shape = masklay_shape->
next) {
703 bool is_double =
false;
745 for (ale = anim_data.
first; ale; ale = ale->
next) {
785 for (ale = anim_data.
first; ale; ale = ale->
next) {
817 BLI_assert_msg(
false,
"Keys cannot be transformed into this animation type.");
901 if (
ELEM(
t->frame_side,
'L',
'R')) {
typedef float(TangentPoint)[2]
struct Main * CTX_data_main(const bContext *C)
void BKE_gpencil_layer_frames_sort(struct bGPDlayer *gpl, bool *r_has_duplicate_frames)
bool BKE_gpencil_layer_frame_delete(struct bGPDlayer *gpl, struct bGPDframe *gpf)
struct Key * BKE_key_from_object(struct Object *ob)
void BKE_mask_layer_shape_unlink(struct MaskLayer *masklay, struct MaskLayerShape *masklay_shape)
float BKE_nla_tweakedit_remap(struct AnimData *adt, float cframe, short mode)
#define BLI_assert_msg(a, msg)
#define LISTBASE_FOREACH(type, var, list)
void void void BLI_listbase_sort_r(ListBase *listbase, int(*cmp)(void *, const void *, const void *), void *thunk) ATTR_NONNULL(1
MINLINE int round_fl_to_int(float a)
MINLINE void copy_v2_v2(float r[2], const float a[2])
MINLINE void copy_v3_v3(float r[3], const float a[3])
BLI_INLINE int BLI_rcti_size_y(const struct rcti *rct)
BLI_INLINE float BLI_rctf_cent_y(const struct rctf *rct)
BLI_INLINE int BLI_rcti_size_x(const struct rcti *rct)
BLI_INLINE float BLI_rctf_size_x(const struct rctf *rct)
BLI_INLINE float BLI_rctf_size_y(const struct rctf *rct)
void DEG_id_tag_update(struct ID *id, int flag)
@ SACTION_NOREALTIMEUPDATES
#define OBACT(_view_layer)
@ ANIMFILTER_DATA_VISIBLE
_GL_VOID GLfloat value _GL_VOID_RET _GL_VOID const GLuint GLboolean *residences _GL_BOOL_RET _GL_VOID GLsizei GLfloat GLfloat GLfloat GLfloat const GLubyte *bitmap _GL_VOID_RET _GL_VOID GLenum const void *lists _GL_VOID_RET _GL_VOID const GLdouble *equation _GL_VOID_RET _GL_VOID GLdouble GLdouble blue _GL_VOID_RET _GL_VOID GLfloat GLfloat blue _GL_VOID_RET _GL_VOID GLint GLint blue _GL_VOID_RET _GL_VOID GLshort GLshort blue _GL_VOID_RET _GL_VOID GLubyte GLubyte blue _GL_VOID_RET _GL_VOID GLuint GLuint blue _GL_VOID_RET _GL_VOID GLushort GLushort blue _GL_VOID_RET _GL_VOID GLbyte GLbyte GLbyte alpha _GL_VOID_RET _GL_VOID GLdouble GLdouble GLdouble alpha _GL_VOID_RET _GL_VOID GLfloat GLfloat GLfloat alpha _GL_VOID_RET _GL_VOID GLint GLint GLint alpha _GL_VOID_RET _GL_VOID GLshort GLshort GLshort alpha _GL_VOID_RET _GL_VOID GLubyte GLubyte GLubyte alpha _GL_VOID_RET _GL_VOID GLuint GLuint GLuint alpha _GL_VOID_RET _GL_VOID GLushort GLushort GLushort alpha _GL_VOID_RET _GL_VOID GLenum mode _GL_VOID_RET _GL_VOID GLint GLsizei GLsizei GLenum type _GL_VOID_RET _GL_VOID GLsizei GLenum GLenum const void *pixels _GL_VOID_RET _GL_VOID const void *pointer _GL_VOID_RET _GL_VOID GLdouble v _GL_VOID_RET _GL_VOID GLfloat v _GL_VOID_RET _GL_VOID GLint GLint i2 _GL_VOID_RET _GL_VOID GLint j _GL_VOID_RET _GL_VOID GLfloat param _GL_VOID_RET _GL_VOID GLint param _GL_VOID_RET _GL_VOID GLdouble GLdouble GLdouble GLdouble GLdouble zFar _GL_VOID_RET _GL_UINT GLdouble *equation _GL_VOID_RET _GL_VOID GLenum GLint *params _GL_VOID_RET _GL_VOID GLenum GLfloat *v _GL_VOID_RET _GL_VOID GLenum GLfloat *params _GL_VOID_RET _GL_VOID GLfloat *values _GL_VOID_RET _GL_VOID GLushort *values _GL_VOID_RET _GL_VOID GLenum GLfloat *params _GL_VOID_RET _GL_VOID GLenum GLdouble *params _GL_VOID_RET _GL_VOID GLenum GLint *params _GL_VOID_RET _GL_VOID GLsizei const void *pointer _GL_VOID_RET _GL_VOID GLsizei const void *pointer _GL_VOID_RET _GL_BOOL GLfloat param _GL_VOID_RET _GL_VOID GLint param _GL_VOID_RET _GL_VOID GLenum GLfloat param _GL_VOID_RET _GL_VOID GLenum GLint param _GL_VOID_RET _GL_VOID GLushort pattern _GL_VOID_RET _GL_VOID GLdouble GLdouble GLint GLint const GLdouble *points _GL_VOID_RET _GL_VOID GLdouble GLdouble GLint GLint GLdouble GLdouble GLint GLint const GLdouble *points _GL_VOID_RET _GL_VOID GLdouble GLdouble u2 _GL_VOID_RET _GL_VOID GLdouble GLdouble GLint GLdouble GLdouble v2 _GL_VOID_RET _GL_VOID GLenum GLfloat param _GL_VOID_RET _GL_VOID GLenum GLint param _GL_VOID_RET _GL_VOID GLenum mode _GL_VOID_RET _GL_VOID GLdouble GLdouble nz _GL_VOID_RET _GL_VOID GLfloat GLfloat nz _GL_VOID_RET _GL_VOID GLint GLint nz _GL_VOID_RET _GL_VOID GLshort GLshort nz _GL_VOID_RET _GL_VOID GLsizei const void *pointer _GL_VOID_RET _GL_VOID GLsizei const GLfloat *values _GL_VOID_RET _GL_VOID GLsizei const GLushort *values _GL_VOID_RET _GL_VOID GLint param _GL_VOID_RET _GL_VOID const GLuint const GLclampf *priorities _GL_VOID_RET _GL_VOID GLdouble y _GL_VOID_RET _GL_VOID GLfloat y _GL_VOID_RET _GL_VOID GLint y _GL_VOID_RET _GL_VOID GLshort y _GL_VOID_RET _GL_VOID GLdouble GLdouble z _GL_VOID_RET _GL_VOID GLfloat GLfloat z _GL_VOID_RET _GL_VOID GLint GLint z _GL_VOID_RET _GL_VOID GLshort GLshort z _GL_VOID_RET _GL_VOID GLdouble GLdouble GLdouble w _GL_VOID_RET _GL_VOID GLfloat GLfloat GLfloat w _GL_VOID_RET _GL_VOID GLint GLint GLint w _GL_VOID_RET _GL_VOID GLshort GLshort GLshort w _GL_VOID_RET _GL_VOID GLdouble GLdouble GLdouble y2 _GL_VOID_RET _GL_VOID GLfloat GLfloat GLfloat y2 _GL_VOID_RET _GL_VOID GLint GLint GLint y2 _GL_VOID_RET _GL_VOID GLshort GLshort GLshort y2 _GL_VOID_RET _GL_VOID GLdouble GLdouble GLdouble z _GL_VOID_RET _GL_VOID GLdouble GLdouble z _GL_VOID_RET _GL_VOID GLuint *buffer _GL_VOID_RET _GL_VOID GLdouble t _GL_VOID_RET _GL_VOID GLfloat t _GL_VOID_RET _GL_VOID GLint t _GL_VOID_RET _GL_VOID GLshort t _GL_VOID_RET _GL_VOID GLdouble t
Read Guarded memory(de)allocation.
void ANIM_animdata_freelist(ListBase *anim_data)
void ANIM_list_elem_update(Main *bmain, Scene *scene, bAnimListElem *ale)
AnimData * ANIM_nla_mapping_get(bAnimContext *ac, bAnimListElem *ale)
void ANIM_nla_mapping_apply_fcurve(AnimData *adt, FCurve *fcu, bool restore, bool only_keys)
bool ANIM_animdata_get_context(const bContext *C, bAnimContext *ac)
bool ANIM_animdata_context_getdata(bAnimContext *ac)
size_t ANIM_animdata_filter(bAnimContext *ac, ListBase *anim_data, eAnimFilter_Flags filter_mode, void *data, eAnimCont_Types datatype)
int ED_markers_post_apply_transform(ListBase *markers, Scene *scene, int mode, float value, char side)
ListBase * ED_context_get_markers(const bContext *C)
DO_INLINE void filter(lfVector *V, fmatrix3x3 *S)
void ANIM_editkeyframes_refresh(bAnimContext *ac)
void *(* MEM_callocN)(size_t len, const char *str)
ccl_device_inline float2 fabs(const float2 &a)
ccl_device_inline float4 mask(const int4 &mask, const float4 &a)
static const pxr::TfToken b("b", pxr::TfToken::Immortal)
struct MaskLayerShape * next
TransCustomDataContainer custom
struct bAnimListElem * next
void WM_main_add_notifier(unsigned int type, void *reference)