438 bool only_selected_keys);
459 float sampling_frequency,
#define ENUM_OPERATORS(_type, _max)
void scale_average_fcurve_segment(FCurve *fcu, FCurveSegment *segment, float factor)
void shear_fcurve_segment(FCurve *fcu, FCurveSegment *segment, float factor, tShearDirection direction)
KeyframeEditFunc ANIM_editkeyframes_mirror(short mode)
short bezt_selmap_flush(KeyframeEditData *ked, BezTriple *bezt)
void time_offset_fcurve_segment(FCurve *fcu, FCurveSegment *segment, float frame_offset)
float get_default_rna_value(const FCurve *fcu, PropertyRNA *prop, PointerRNA *ptr)
void ANIM_editkeyframes_refresh(bAnimContext *ac)
bool decimate_fcurve(bAnimListElem *ale, float remove_ratio, float error_sq_max)
KeyframeEditFunc ANIM_editkeyframes_easing(short mode)
short copy_animedit_keys(bAnimContext *ac, ListBase *anim_data)
KeyframeEditFunc ANIM_editkeyframes_select(eEditKeyframes_Select selectmode)
KeyframeEditFunc ANIM_editkeyframes_ipo(short mode)
bool keyframe_region_lasso_test(const KeyframeEdit_LassoData *data_lasso, const float xy[2])
@ KEYFRAME_PASTE_MERGE_OVER_RANGE_ALL
@ KEYFRAME_PASTE_MERGE_OVER_RANGE
@ KEYFRAME_PASTE_MERGE_OVER
@ KEYFRAME_PASTE_MERGE_MIX
ButterworthCoefficients * ED_anim_allocate_butterworth_coefficients(const int filter_order)
void butterworth_smooth_fcurve_segment(FCurve *fcu, FCurveSegment *segment, float *samples, int sample_count, float factor, int blend_in_out, int sample_rate, ButterworthCoefficients *bw_coeff)
void ANIM_fcurve_equalize_keyframes_loop(FCurve *fcu, eEditKeyframes_Equalize mode, float handle_length, bool flatten)
void blend_to_ease_fcurve_segment(FCurve *fcu, FCurveSegment *segment, float factor)
@ KEYFRAME_PASTE_VALUE_OFFSET_RIGHT_KEY
@ KEYFRAME_PASTE_VALUE_OFFSET_NONE
@ KEYFRAME_PASTE_VALUE_OFFSET_CURSOR
@ KEYFRAME_PASTE_VALUE_OFFSET_CFRA
@ KEYFRAME_PASTE_VALUE_OFFSET_LEFT_KEY
@ KEYFRAME_PASTE_OFFSET_NONE
@ KEYFRAME_PASTE_OFFSET_CFRA_END
@ KEYFRAME_PASTE_OFFSET_CFRA_RELATIVE
@ KEYFRAME_PASTE_OFFSET_CFRA_START
void smooth_fcurve_segment(FCurve *fcu, FCurveSegment *segment, float *samples, float factor, int kernel_size, double *kernel)
void ease_fcurve_segment(FCurve *fcu, FCurveSegment *segment, float factor, float width)
void ANIM_fcurves_copybuf_free()
KeyframeEditFunc ANIM_editkeyframes_keytype(eBezTriple_KeyframeType keyframe_type)
@ KEYFRAME_ITER_HANDLES_DEFAULT_INVISIBLE
@ KEYFRAME_ITER_INCL_HANDLES
eKeyPasteError paste_animedit_keys(bAnimContext *ac, ListBase *anim_data, eKeyPasteOffset offset_mode, eKeyPasteValueOffset value_offset_mode, eKeyMergeMode merge_mode, bool flip)
void blend_to_neighbor_fcurve_segment(FCurve *fcu, FCurveSegment *segment, float factor)
short bezt_to_cfraelem(KeyframeEditData *ked, BezTriple *bezt)
KeyframeEditFunc ANIM_editkeyframes_buildselmap(short mode)
short ANIM_animchanneldata_keyframes_loop(KeyframeEditData *ked, bDopeSheet *ads, void *data, int keytype, KeyframeEditFunc key_ok, KeyframeEditFunc key_cb, FcuEditFunc fcu_cb)
void smooth_fcurve(FCurve *fcu)
void ED_ANIM_get_1d_gauss_kernel(const float sigma, int kernel_size, double *r_kernel)
short(*)(KeyframeEditData *ked, BezTriple *bezt) KeyframeEditFunc
short ANIM_animchannel_keyframes_loop(KeyframeEditData *ked, bDopeSheet *ads, bAnimListElem *ale, KeyframeEditFunc key_ok, KeyframeEditFunc key_cb, FcuEditFunc fcu_cb)
bool keyframe_region_circle_test(const KeyframeEdit_CircleData *data_circle, const float xy[2])
void bezt_remap_times(KeyframeEditData *ked, BezTriple *bezt)
short ANIM_fcurve_keyframes_loop(KeyframeEditData *ked, FCurve *fcu, KeyframeEditFunc key_ok, KeyframeEditFunc key_cb, FcuEditFunc fcu_cb)
void blend_offset_fcurve_segment(FCurve *fcu, FCurveSegment *segment, float factor)
KeyframeEditFunc ANIM_editkeyframes_ok(short mode)
void(*)(FCurve *fcu) FcuEditFunc
@ KEYFRAME_PASTE_NOTHING_TO_PASTE
@ KEYFRAME_PASTE_NOWHERE_TO_PASTE
ListBase find_fcurve_segments(FCurve *fcu)
bool duplicate_fcurve_keys(FCurve *fcu)
KeyframeEditFunc ANIM_editkeyframes_snap(short mode)
void blend_to_default_fcurve(PointerRNA *id_ptr, FCurve *fcu, float factor)
void scale_from_fcurve_segment_neighbor(FCurve *fcu, FCurveSegment *segment, float factor, FCurveSegmentAnchor anchor)
void breakdown_fcurve_segment(FCurve *fcu, FCurveSegment *segment, float factor)
void push_pull_fcurve_segment(FCurve *fcu, FCurveSegment *segment, float factor)
void clean_fcurve(bAnimContext *ac, bAnimListElem *ale, float thresh, bool cleardefault, bool only_selected_keys)
void ANIM_animdata_keyframe_callback(bAnimContext *ac, eAnimFilter_Flags filter, KeyframeEditFunc callback_fn)
void ED_anim_calculate_butterworth_coefficients(float cutoff_frequency, float sampling_frequency, ButterworthCoefficients *bw_coeff)
short bezt_calc_average(KeyframeEditData *ked, BezTriple *bezt)
void ED_anim_free_butterworth_coefficients(ButterworthCoefficients *bw_coeff)
bool match_slope_fcurve_segment(FCurve *fcu, FCurveSegment *segment, float factor)
KeyframeEditFunc ANIM_editkeyframes_handles(short mode)
eKeyframeIterFlags iterflags
blender::Array< blender::int2 > mcoords