/* Call im_fzone via arg vector. */ static int fzone_vec( im_object *argv ) { int size = *((int *) argv[1]); return( im_fzone( argv[0], size ) ); }
/* As above, but make a IM_BANDFMT_UCHAR image. */ int im_zone( IMAGE *im, int size ) { IMAGE *t1 = im_open_local( im, "im_zone:1", "p" ); IMAGE *t2 = im_open_local( im, "im_zone:2", "p" ); if( !t1 || !t2 ) return( -1 ); if( im_fzone( t1, size ) || im_lintra( 127.5, t1, 127.5, t2 ) || im_clip2fmt( t2, im, IM_BANDFMT_UCHAR ) ) return( -1 ); return( 0 ); }