X-Git-Url: https://git.pterodactylus.net/?a=blobdiff_plain;f=synfig-core%2Ftrunk%2Fsrc%2Fsynfig%2Fblur.cpp;h=2b481f03d660a82f2b39e3f33fe83c28acdf90d9;hb=7c70b39267a02a92da8293b4ff5759b3f4f738d9;hp=5620281ad8aa199c3d94ba742640efa0a08b3564;hpb=e8a065f2385c219c511b57dac52786120bfa097d;p=synfig.git diff --git a/synfig-core/trunk/src/synfig/blur.cpp b/synfig-core/trunk/src/synfig/blur.cpp index 5620281..2b481f0 100644 --- a/synfig-core/trunk/src/synfig/blur.cpp +++ b/synfig-core/trunk/src/synfig/blur.cpp @@ -617,24 +617,24 @@ bool Blur::operator ()(const Surface &surface, //horizontal part if(size[0]) { - int length=(int)(abs((float)w/(resolution[0]))*size[0]*0.5+1); - length=std::max(1,length); + Real length=abs((float)w/(resolution[0]))*size[0]*0.5+1; + length=std::max(1.0,length); //two box blurs produces: 1 2 1 - etl::hbox_blur(worksurface.begin(),w,h,length*3/4,temp_surface.begin()); - etl::hbox_blur(temp_surface.begin(),w,h,length*3/4,worksurface.begin()); + etl::hbox_blur(worksurface.begin(),w,h,(int)(length*3/4),temp_surface.begin()); + etl::hbox_blur(temp_surface.begin(),w,h,(int)(length*3/4),worksurface.begin()); } //else temp_surface2=worksurface; //vertical part if(size[1]) { - int length=(int)(abs((float)h/(resolution[1]))*size[1]*0.5+1); - length=std::max(1,length); + Real length=abs((float)h/(resolution[1]))*size[1]*0.5+1; + length=std::max(1.0,length); //two box blurs produces: 1 2 1 on the horizontal 1 2 1 - etl::vbox_blur(worksurface.begin(),w,h,length*3/4,temp_surface.begin()); - etl::vbox_blur(temp_surface.begin(),w,h,length*3/4,worksurface.begin()); + etl::vbox_blur(worksurface.begin(),w,h,(int)(length*3/4),temp_surface.begin()); + etl::vbox_blur(temp_surface.begin(),w,h,(int)(length*3/4),worksurface.begin()); } //else temp_surface2=temp_surface2; @@ -993,24 +993,24 @@ bool Blur::operator ()(const surface &surface, //horizontal part if(size[0]) { - int length=(int)(abs((float)w/(resolution[0]))*size[0]*0.5+1); - length=std::max(1,length); + Real length=abs((float)w/(resolution[0]))*size[0]*0.5+1; + length=std::max(1.0,length); //two box blurs produces: 1 2 1 - etl::hbox_blur(worksurface.begin(),w,h,length*3/4,temp_surface.begin()); - etl::hbox_blur(temp_surface.begin(),w,h,length*3/4,worksurface.begin()); + etl::hbox_blur(worksurface.begin(),w,h,(int)(length*3/4),temp_surface.begin()); + etl::hbox_blur(temp_surface.begin(),w,h,(int)(length*3/4),worksurface.begin()); } //else temp_surface2=worksurface; //vertical part if(size[1]) { - int length=(int)(abs((float)h/(resolution[1]))*size[1]*0.5+1); - length=std::max(1,length); + Real length=abs((float)h/(resolution[1]))*size[1]*0.5+1; + length=std::max(1.0,length); //two box blurs produces: 1 2 1 on the horizontal 1 2 1 - etl::vbox_blur(worksurface.begin(),w,h,length*3/4,temp_surface.begin()); - etl::vbox_blur(temp_surface.begin(),w,h,length*3/4,worksurface.begin()); + etl::vbox_blur(worksurface.begin(),w,h,(int)(length*3/4),temp_surface.begin()); + etl::vbox_blur(temp_surface.begin(),w,h,(int)(length*3/4),worksurface.begin()); } //else temp_surface2=temp_surface2;