Exemple #1
0
static short ok_bezier_valuerange(KeyframeEditData *ked, BezTriple *bezt)
{
	short ok = 0;
	
	/* value range is stored in float properties */
	#define KEY_CHECK_OK(_index) ((bezt->vec[_index][1] > ked->f1) && (bezt->vec[_index][1] < ked->f2))
	KEYFRAME_OK_CHECKS(KEY_CHECK_OK);
	#undef KEY_CHECK_OK
	
	/* return ok flags */
	return ok;
}
Exemple #2
0
static short ok_bezier_frame(KeyframeEditData *ked, BezTriple *bezt)
{
	short ok = 0;
	
	/* frame is stored in f1 property (this float accuracy check may need to be dropped?) */
	#define KEY_CHECK_OK(_index) IS_EQF(bezt->vec[_index][0], ked->f1)
	KEYFRAME_OK_CHECKS(KEY_CHECK_OK);
	#undef KEY_CHECK_OK
	
	/* return ok flags */
	return ok;
}
Exemple #3
0
static short ok_bezier_value(KeyframeEditData *ked, BezTriple *bezt)
{	
	short ok = 0;
	
	/* value is stored in f1 property 
	 *	- this float accuracy check may need to be dropped?
	 *	- should value be stored in f2 instead so that we won't have conflicts when using f1 for frames too?
	 */
	#define KEY_CHECK_OK(_index) IS_EQF(bezt->vec[_index][1], ked->f1)
	KEYFRAME_OK_CHECKS(KEY_CHECK_OK);
	#undef KEY_CHECK_OK
	
	/* return ok flags */
	return ok;
}
Exemple #4
0
static short ok_bezier_region(KeyframeEditData *ked, BezTriple *bezt)
{
	/* rect is stored in data property (it's of type rectf, but may not be set) */
	if (ked->data) {
		short ok = 0;
		
		#define KEY_CHECK_OK(_index) BLI_in_rctf(ked->data, bezt->vec[_index][0], bezt->vec[_index][1])
		KEYFRAME_OK_CHECKS(KEY_CHECK_OK);
		#undef KEY_CHECK_OK
		
		/* return ok flags */
		return ok;
	}
	else 
		return 0;
}
Exemple #5
0
static short ok_bezier_region_circle(KeyframeEditData *ked, BezTriple *bezt)
{
	/* check for circle select customdata (KeyframeEdit_CircleData) */
	if (ked->data) {
		short ok = 0;
		
#define KEY_CHECK_OK(_index) keyframe_region_circle_test(ked->data, bezt->vec[_index])
		KEYFRAME_OK_CHECKS(KEY_CHECK_OK);
#undef KEY_CHECK_OK
		
		/* return ok flags */
		return ok;
	}
	else
		return 0;
}