const int
id = GetOpenMPThreadId();
- register const Quantum
- *restrict p;
-
register Quantum
*restrict q;
if (status == MagickFalse)
continue;
- p=GetCacheViewVirtualPixels(image_view,0,y,image->columns,1,exception);
q=QueueCacheViewAuthenticPixels(spread_view,0,y,spread_image->columns,1,
exception);
- if ((p == (const Quantum *) NULL) || (q == (Quantum *) NULL))
+ if (q == (Quantum *) NULL)
{
status=MagickFalse;
continue;
CacheView
*image_view,
- *implode_view;
+ *implode_view,
+ *interpolate_view;
Image
*implode_image;
status=MagickTrue;
progress=0;
image_view=AcquireVirtualCacheView(image,exception);
+ interpolate_view=AcquireVirtualCacheView(image,exception);
implode_view=AcquireAuthenticCacheView(implode_image,exception);
#if defined(MAGICKCORE_OPENMP_SUPPORT)
#pragma omp parallel for schedule(static,4) shared(progress,status) \
if (distance > 0.0)
factor=pow(sin((double) (MagickPI*sqrt((double) distance)/radius/
2)),-amount);
- status=InterpolatePixelChannels(image,image_view,implode_image,method,
- (double) (factor*delta.x/scale.x+center.x),(double) (factor*delta.y/
- scale.y+center.y),q,exception);
+ status=InterpolatePixelChannels(image,interpolate_view,implode_image,
+ method,(double) (factor*delta.x/scale.x+center.x),(double) (factor*
+ delta.y/scale.y+center.y),q,exception);
}
p+=GetPixelChannels(image);
q+=GetPixelChannels(implode_image);
}
}
implode_view=DestroyCacheView(implode_view);
+ interpolate_view=DestroyCacheView(interpolate_view);
image_view=DestroyCacheView(image_view);
if (status == MagickFalse)
implode_image=DestroyImage(implode_image);
CacheView
*image_view,
+ *interpolate_view,
*swirl_view;
Image
status=MagickTrue;
progress=0;
image_view=AcquireVirtualCacheView(image,exception);
+ interpolate_view=AcquireVirtualCacheView(image,exception);
swirl_view=AcquireAuthenticCacheView(swirl_image,exception);
#if defined(MAGICKCORE_OPENMP_SUPPORT)
#pragma omp parallel for schedule(static,4) shared(progress,status) \
factor=1.0-sqrt((double) distance)/radius;
sine=sin((double) (degrees*factor*factor));
cosine=cos((double) (degrees*factor*factor));
- status=InterpolatePixelChannels(image,image_view,swirl_image,method,
- ((cosine*delta.x-sine*delta.y)/scale.x+center.x),(double)
+ status=InterpolatePixelChannels(image,interpolate_view,swirl_image,
+ method,((cosine*delta.x-sine*delta.y)/scale.x+center.x),(double)
((sine*delta.x+cosine*delta.y)/scale.y+center.y),q,exception);
}
p+=GetPixelChannels(image);
}
}
swirl_view=DestroyCacheView(swirl_view);
+ interpolate_view=DestroyCacheView(interpolate_view);
image_view=DestroyCacheView(image_view);
if (status == MagickFalse)
swirl_image=DestroyImage(swirl_image);