From e166e8943388389bb4fc2927aac8758387c42846 Mon Sep 17 00:00:00 2001 From: "N.N." Date: Tue, 30 Mar 2004 01:56:16 +0000 Subject: PiDiP 0.12.13 svn path=/trunk/externals/pidip/; revision=1508 --- modules/pdp_ctrack.c | 10 ++++++---- 1 file changed, 6 insertions(+), 4 deletions(-) (limited to 'modules/pdp_ctrack.c') diff --git a/modules/pdp_ctrack.c b/modules/pdp_ctrack.c index e9e631b..ed35c9b 100644 --- a/modules/pdp_ctrack.c +++ b/modules/pdp_ctrack.c @@ -22,6 +22,7 @@ */ #include "pdp.h" +#include "g_canvas.h" #include "yuv.h" #include #include @@ -124,7 +125,7 @@ static void pdp_ctrack_r(t_pdp_ctrack *x, t_floatarg fr ) x->x_colorY = (yuv_RGBtoY( (x->x_colorR << 16) + (x->x_colorG << 8) + x->x_colorB ))<<7; x->x_colorU = (yuv_RGBtoU( (x->x_colorR << 16) + (x->x_colorG << 8) + x->x_colorB )-128)<<8; x->x_colorV = (yuv_RGBtoV( (x->x_colorR << 16) + (x->x_colorG << 8) + x->x_colorB )-128)<<8; - pdp_ctrack_draw_color( x ); + if (glist_isvisible(x->x_canvas)) pdp_ctrack_draw_color( x ); outlet_float( x->x_R, x->x_colorR ); } } @@ -137,7 +138,7 @@ static void pdp_ctrack_g(t_pdp_ctrack *x, t_floatarg fg ) x->x_colorY = (yuv_RGBtoY( (x->x_colorR << 16) + (x->x_colorG << 8) + x->x_colorB ))<<7; x->x_colorU = (yuv_RGBtoU( (x->x_colorR << 16) + (x->x_colorG << 8) + x->x_colorB )-128)<<8; x->x_colorV = (yuv_RGBtoV( (x->x_colorR << 16) + (x->x_colorG << 8) + x->x_colorB )-128)<<8; - pdp_ctrack_draw_color( x ); + if (glist_isvisible(x->x_canvas)) pdp_ctrack_draw_color( x ); outlet_float( x->x_G, x->x_colorG ); } } @@ -150,7 +151,7 @@ static void pdp_ctrack_b(t_pdp_ctrack *x, t_floatarg fb ) x->x_colorY = (yuv_RGBtoY( (x->x_colorR << 16) + (x->x_colorG << 8) + x->x_colorB ))<<7; x->x_colorU = (yuv_RGBtoU( (x->x_colorR << 16) + (x->x_colorG << 8) + x->x_colorB )-128)<<8; x->x_colorV = (yuv_RGBtoV( (x->x_colorR << 16) + (x->x_colorG << 8) + x->x_colorB )-128)<<8; - pdp_ctrack_draw_color( x ); + if (glist_isvisible(x->x_canvas)) pdp_ctrack_draw_color( x ); outlet_float( x->x_B, x->x_colorB ); } } @@ -218,6 +219,7 @@ static void pdp_ctrack_pick(t_pdp_ctrack *x) if ( x->x_frame && ( x->x_cursX > 0 ) && ( x->x_cursX < x->x_vwidth ) && ( x->x_cursY > 0 ) && ( x->x_cursY < x->x_vheight ) ) { + // post( "pdp_ctrack : picking up color : x=%d y=%d", x->x_cursX, x->x_cursY ); x->x_colorY = x->x_frame[ x->x_cursY*x->x_vwidth+x->x_cursX ]; x->x_colorV = x->x_frame[ x->x_vsize + (x->x_cursY>>1)*(x->x_vwidth>>1)+(x->x_cursX>>1) ]; x->x_colorU = x->x_frame[ x->x_vsize + (x->x_vsize>>2) + (x->x_cursY>>1)*(x->x_vwidth>>1)+(x->x_cursX>>1) ]; @@ -230,7 +232,7 @@ static void pdp_ctrack_pick(t_pdp_ctrack *x) outlet_float( x->x_G, x->x_colorG ); x->x_colorB = yuv_YUVtoB( y, u, v ); outlet_float( x->x_B, x->x_colorB ); - pdp_ctrack_draw_color( x ); + if (glist_isvisible(x->x_canvas)) pdp_ctrack_draw_color( x ); } } -- cgit v1.2.1