Changeset 7848


Ignore:
Timestamp:
05/09/12 03:27:02 (12 months ago)
Author:
anthony
Message:

Fix Kaiser Resize filter

File:
1 edited

Legend:

Unmodified
Added
Removed
  • ImageMagick/trunk/MagickCore/resize.c

    r7845 r7848  
    954954 
    955955  /* User Gaussian Sigma Override - no support change */ 
    956   if (resize_filter->filter == Gaussian) { 
     956  if ((resize_filter->filter == Gaussian) || 
     957      (resize_filter->window == Gaussian) ) { 
    957958    value=0.5;    /* guassian sigma default, half pixel */ 
    958959    artifact=GetImageArtifact(image,"filter:sigma"); 
     
    962963    resize_filter->coefficient[0]=value;                 /* note sigma too */ 
    963964    resize_filter->coefficient[1]=1.0/(2.0*value*value); /* sigma scaling */ 
    964     resize_filter->coefficient[2]=(MagickRealType) 
    965       (1.0/(Magick2PI*value*value)); 
     965    resize_filter->coefficient[2]=(MagickRealType) (1.0/(Magick2PI*value*value)); 
    966966       /* normalization - not actually needed or used! */ 
    967967    if ( value > 0.5 ) 
     
    970970 
    971971  /* User Kaiser Alpha Override - no support change */ 
    972   if (resize_filter->filter == Kaiser) { 
     972  if ((resize_filter->filter == Kaiser) || 
     973      (resize_filter->window == Kaiser) ) { 
    973974    value=6.5; /* default alpha value for Kaiser bessel windowing function */ 
    974975    artifact=GetImageArtifact(image,"filter:alpha"); 
     
    10311032  B=0.0; 
    10321033  C=0.0; 
    1033   if ((filters[filter_type].function == CubicBC) || 
    1034       (filters[window_type].function == CubicBC)) 
     1034  if ((resize_filter->filter == CubicBC) || 
     1035      (resize_filter->window == CubicBC) ) 
    10351036    { 
    10361037      B=filters[filter_type].B; 
     
    11091110             CommandOptionToMnemonic(MagickFilterOptions,filter_type)); 
    11101111        (void) FormatLocaleFile(stdout,"# window = %s\n", 
    1111              CommandOptionToMnemonic(MagickFilterOptions, window_type)); 
     1112             CommandOptionToMnemonic(MagickFilterOptions,window_type)); 
    11121113        (void) FormatLocaleFile(stdout,"# support = %.*g\n", 
    11131114             GetMagickPrecision(),(double) resize_filter->support); 
     
    11161117        (void) FormatLocaleFile(stdout,"# scale_blur = %.*g\n", 
    11171118             GetMagickPrecision(), (double)resize_filter->blur); 
    1118         if ( filter_type == GaussianFilter ) 
     1119        if ( filter_type == GaussianFilter || window_type == GaussianFilter ) 
    11191120          (void) FormatLocaleFile(stdout,"# gaussian_sigma = %.*g\n", 
    11201121               GetMagickPrecision(), (double)resize_filter->coefficient[0]); 
    1121         if ( filter_type == KaiserFilter ) 
     1122        if ( filter_type == KaiserFilter || window_type == KaiserFilter ) 
    11221123          (void) FormatLocaleFile(stdout,"# kaiser_alpha = %.*g\n", 
    11231124               GetMagickPrecision(), (double)resize_filter->coefficient[0]); 
Note: See TracChangeset for help on using the changeset viewer.