Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(1)

Issue 1388823002: add LocalMatrixImageFilter

Created:
5 years, 2 months ago by reed1
Modified:
5 years, 2 months ago
CC:
reviews_skia.org
Base URL:
https://skia.googlesource.com/skia.git@master
Target Ref:
refs/heads/master
Project:
skia
Visibility:
Public.

Description

add LocalMatrixImageFilter BUG=skia:

Patch Set 1 #

Total comments: 26

Patch Set 2 : rename new method to newWithLocalMatrix #

Patch Set 3 : #

Patch Set 4 : #

Patch Set 5 : #

Patch Set 6 : attempted input-based approach (no success yet) #

Patch Set 7 : add gm #

Unified diffs Side-by-side diffs Delta from patch set Stats (+390 lines, -8 lines) Patch
A gm/localmatriximagefilter.cpp View 1 2 3 4 5 6 1 chunk +103 lines, -0 lines 0 comments Download
M gyp/core.gypi View 1 2 3 4 5 6 1 chunk +1 line, -0 lines 0 comments Download
M include/core/SkImageFilter.h View 1 2 3 4 5 6 4 chunks +15 lines, -7 lines 0 comments Download
M src/core/SkCanvas.cpp View 1 2 3 4 5 6 2 chunks +14 lines, -0 lines 0 comments Download
M src/core/SkImageFilter.cpp View 1 2 3 4 5 6 1 chunk +1 line, -1 line 0 comments Download
A src/core/SkLocalMatrixImageFilter.cpp View 1 2 3 4 5 1 chunk +256 lines, -0 lines 0 comments Download

Messages

Total messages: 26 (6 generated)
reed1
The hacks to blurimagefilter are just there for testing. will remove before submitting.
5 years, 2 months ago (2015-10-05 20:30:27 UTC) #2
commit-bot: I haz the power
Dry run: CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/patch-status/1388823002/1 View timeline at https://chromium-cq-status.appspot.com/patch-timeline/1388823002/1
5 years, 2 months ago (2015-10-05 20:30:52 UTC) #4
commit-bot: I haz the power
Dry run: This issue passed the CQ dry run.
5 years, 2 months ago (2015-10-05 20:39:01 UTC) #6
robertphillips
https://codereview.chromium.org/1388823002/diff/1/include/core/SkImageFilter.h File include/core/SkImageFilter.h (right): https://codereview.chromium.org/1388823002/diff/1/include/core/SkImageFilter.h#newcode221 include/core/SkImageFilter.h:221: /** rm "and, if not NULL, the localMatrix" ? ...
5 years, 2 months ago (2015-10-05 20:50:11 UTC) #7
Stephen White
https://codereview.chromium.org/1388823002/diff/1/src/core/SkLocalMatrixImageFilter.cpp File src/core/SkLocalMatrixImageFilter.cpp (right): https://codereview.chromium.org/1388823002/diff/1/src/core/SkLocalMatrixImageFilter.cpp#newcode19 src/core/SkLocalMatrixImageFilter.cpp:19: // return SkRef(base); Remove commented-out code if it doesn't ...
5 years, 2 months ago (2015-10-05 21:00:41 UTC) #9
Stephen White
https://codereview.chromium.org/1388823002/diff/1/include/core/SkImageFilter.h File include/core/SkImageFilter.h (right): https://codereview.chromium.org/1388823002/diff/1/include/core/SkImageFilter.h#newcode228 include/core/SkImageFilter.h:228: virtual SkImageFilter* refWithLocalMatrix(const SkMatrix& localMatrix) const; I find the ...
5 years, 2 months ago (2015-10-05 21:06:23 UTC) #10
reed1
https://codereview.chromium.org/1388823002/diff/1/include/core/SkImageFilter.h File include/core/SkImageFilter.h (right): https://codereview.chromium.org/1388823002/diff/1/include/core/SkImageFilter.h#newcode221 include/core/SkImageFilter.h:221: /** On 2015/10/05 20:50:11, robertphillips wrote: > rm "and, ...
5 years, 2 months ago (2015-10-09 18:56:36 UTC) #11
reed1
Stephen, I *think* I understand the direction of your comments : are you proposing that ...
5 years, 2 months ago (2015-10-09 19:16:35 UTC) #12
commit-bot: I haz the power
Dry run: CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/patch-status/1388823002/80001 View timeline at https://chromium-cq-status.appspot.com/patch-timeline/1388823002/80001
5 years, 2 months ago (2015-10-09 19:16:54 UTC) #14
commit-bot: I haz the power
Dry run: This issue passed the CQ dry run.
5 years, 2 months ago (2015-10-09 19:25:43 UTC) #16
Stephen White
On 2015/10/09 19:16:35, reed1 wrote: > Stephen, > > I *think* I understand the direction ...
5 years, 2 months ago (2015-10-09 19:45:22 UTC) #17
Stephen White
https://codereview.chromium.org/1388823002/diff/1/src/core/SkLocalMatrixImageFilter.cpp File src/core/SkLocalMatrixImageFilter.cpp (right): https://codereview.chromium.org/1388823002/diff/1/src/core/SkLocalMatrixImageFilter.cpp#newcode30 src/core/SkLocalMatrixImageFilter.cpp:30: bool onIsColorFilterNode(SkColorFilter** /*filterPtr*/) const override; On 2015/10/09 18:56:36, reed1 ...
5 years, 2 months ago (2015-10-09 19:54:13 UTC) #18
reed1
On 2015/10/09 19:45:22, Stephen White wrote: > On 2015/10/09 19:16:35, reed1 wrote: > > Stephen, ...
5 years, 2 months ago (2015-10-09 20:01:48 UTC) #19
reed1
On 2015/10/09 19:54:13, Stephen White wrote: > https://codereview.chromium.org/1388823002/diff/1/src/core/SkLocalMatrixImageFilter.cpp > File src/core/SkLocalMatrixImageFilter.cpp (right): > > https://codereview.chromium.org/1388823002/diff/1/src/core/SkLocalMatrixImageFilter.cpp#newcode30 ...
5 years, 2 months ago (2015-10-09 20:02:35 UTC) #20
reed1
On 2015/10/09 20:02:35, reed1 wrote: > On 2015/10/09 19:54:13, Stephen White wrote: > > > ...
5 years, 2 months ago (2015-10-09 20:06:47 UTC) #21
Stephen White
Ahh, I think I see part of my confusion. SkLocalMatrixImageFilter does not use an input, ...
5 years, 2 months ago (2015-10-09 20:12:12 UTC) #22
reed1
I will try it.
5 years, 2 months ago (2015-10-09 20:33:57 UTC) #23
reed1
I must be trying it wrong, because filterImage does not talk to its inputs, it ...
5 years, 2 months ago (2015-10-09 21:17:17 UTC) #24
Stephen White
On 2015/10/09 21:17:17, reed1 wrote: > I must be trying it wrong, because filterImage does ...
5 years, 2 months ago (2015-10-13 12:07:55 UTC) #25
Stephen White
5 years, 2 months ago (2015-10-13 13:18:16 UTC) #26
On 2015/10/13 12:07:55, Stephen White wrote:
> On 2015/10/09 21:17:17, reed1 wrote:
> > I must be trying it wrong, because filterImage does not talk to its inputs,
it
> > relies on the subclasses to do that, so I don't get forwarded for free to
the
> > actual filter.
> 
> Does it not work if you override onFilterImage()?
> 
> Just create a new Context, as you did before, with the modified matrix,
> and
> 
>      return getInput(0)->filterImage(proxy, source, newCtx, ...)
> 
> does that not work?
> 
> > I can upload my attempt, but since it doesn't work, it may not be useful.
> > 
> > I'm happy to look at a different approach if you post one. That said, mine
(so
> > far) seems to be working, though I have yet to try your idea of the
> > blur->colorfilter DAG test.

Here's roughly what I had in mind:

https://codereview.chromium.org/1392833005)

Powered by Google App Engine
This is Rietveld 408576698