aboutsummaryrefslogtreecommitdiffhomepage
path: root/gyp
diff options
context:
space:
mode:
authorGravatar senorblanco@chromium.org <senorblanco@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81>2013-01-18 20:48:20 +0000
committerGravatar senorblanco@chromium.org <senorblanco@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81>2013-01-18 20:48:20 +0000
commit3f2d45aff69260fcf39d4eea8586387ed44402bb (patch)
tree41bb7d9415bca4ffc6279cc91caedb36b0356790 /gyp
parent80d447893e9141e986702842ed6a5603670eb837 (diff)
(Relanding r7275 with assert fix, plus fixes from r7276, r7280, r7283.)
Implement a bicubic resampling image filter, with raster and GPU backends. In order to get this to work on the GPU side, I had to modify the width and height of the drawn texture in drawSprite() and drawDevice() to use the filtered texture's dimensions, instead of the source texture. (This wasn't a problem before since all other image filters produce results the same dimensions as their input texture.) For now, this implementation only does axis-aligned scaling (same as the Lanczos-3 implementation in Chrome). It's also done for correctness and clarity, not speed, so there are lots of opportunities for speedups. Committed: https://code.google.com/p/skia/source/detail?r=7275 Review URL: https://codereview.appspot.com/7033049 git-svn-id: http://skia.googlecode.com/svn/trunk@7287 2bbb7eff-a529-9590-31e7-b0007b416f81
Diffstat (limited to 'gyp')
-rw-r--r--gyp/effects.gypi1
-rw-r--r--gyp/gmslides.gypi1
2 files changed, 2 insertions, 0 deletions
diff --git a/gyp/effects.gypi b/gyp/effects.gypi
index b8defb4a6a..8c61c34568 100644
--- a/gyp/effects.gypi
+++ b/gyp/effects.gypi
@@ -11,6 +11,7 @@
'<(skia_src_path)/effects/Sk2DPathEffect.cpp',
'<(skia_src_path)/effects/SkAvoidXfermode.cpp',
'<(skia_src_path)/effects/SkArithmeticMode.cpp',
+ '<(skia_src_path)/effects/SkBicubicImageFilter.cpp',
'<(skia_src_path)/effects/SkBitmapSource.cpp',
'<(skia_src_path)/effects/SkBlendImageFilter.cpp',
'<(skia_src_path)/effects/SkBlurDrawLooper.cpp',
diff --git a/gyp/gmslides.gypi b/gyp/gmslides.gypi
index a50d084b1e..8d772f336f 100644
--- a/gyp/gmslides.gypi
+++ b/gyp/gmslides.gypi
@@ -4,6 +4,7 @@
'../gm/aaclip.cpp',
'../gm/aarectmodes.cpp',
'../gm/arithmode.cpp',
+ '../gm/bicubicfilter.cpp',
'../gm/bigmatrix.cpp',
'../gm/bitmapcopy.cpp',
'../gm/bitmapmatrix.cpp',