skia2/samplecode
Michael Ludwig aa861a1907 Change SkMatrix::decomposeScale to use preScale
While most callers of decomposeScale only depend on the scale factors
that are returned, image filter decomposition depends on the remaining
matrix as well. Hence, the following necessary updates to work with
the new behavior of decomposeScale:

* Update imagefilter DAG sample to reflect prescaling
* Correct embedded matrix in SkApplyCTMToFilter
* Add comment to clipRectBounds() clarifying coordinate spaces and image filters

But, we want to have decomposeScale using preScale() because it then
produces a remainder matrix that can be used as the transform for the
image filter draw, instead of wrapping the image filter in an
SkMatrixImageFilter as currently done by SkApplyCTMToFilter.

Bug: skia:7211
Change-Id: If14570afb4189cebc75f3815e8ccdde05cb074e1
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/228438
Reviewed-by: Mike Reed <reed@google.com>
Reviewed-by: Robert Phillips <robertphillips@google.com>
Commit-Queue: Michael Ludwig <michaelludwig@google.com>
2019-07-19 15:41:11 +00:00
..
DecodeFile.h Sample/Filter2View: make it work without /skimages 2019-07-08 17:05:23 +00:00
PerlinPatch.cpp Sample not RefCnted; ClickHandling moved out of viewer 2019-07-15 17:59:15 +00:00
Sample2PtRadial.cpp Samples: add name() virtual 2019-07-03 17:41:16 +00:00
Sample.cpp Samle:🐭 fix wrong assert 2019-07-16 14:12:36 +00:00
Sample.h [reland] SkMetaData: move from src/ to tools/ 2019-07-17 13:14:38 +00:00
SampleAAClip.cpp Samples: clean up cruft 2019-07-17 18:29:50 +00:00
SampleAAGeometry.cpp Sample not RefCnted; ClickHandling moved out of viewer 2019-07-15 17:59:15 +00:00
SampleAARectModes.cpp Samples: clean up cruft 2019-07-17 18:29:50 +00:00
SampleAARects.cpp Samples: clean up cruft 2019-07-17 18:29:50 +00:00
SampleAndroidShadows.cpp Samples: clean up cruft 2019-07-17 18:29:50 +00:00
SampleAnimatedImage.cpp Samples: clean up cruft 2019-07-17 18:29:50 +00:00
SampleAnimatedText.cpp Samples: clean up cruft 2019-07-17 18:29:50 +00:00
SampleAnimBlur.cpp Samples: clean up cruft 2019-07-17 18:29:50 +00:00
SampleArc.cpp Samples: clean up cruft 2019-07-17 18:29:50 +00:00
SampleAtlas.cpp tools: separate TimeUtils from AnimTimer 2019-07-12 15:05:01 +00:00
SampleBitmapRect.cpp Samples: clean up cruft 2019-07-17 18:29:50 +00:00
SampleCamera.cpp tools: separate TimeUtils from AnimTimer 2019-07-12 15:05:01 +00:00
SampleCCPRGeometry.cpp Samples: clean up cruft 2019-07-17 18:29:50 +00:00
SampleChart.cpp Samples: clean up cruft 2019-07-17 18:29:50 +00:00
SampleChineseFling.cpp Samples: clean up cruft 2019-07-17 18:29:50 +00:00
SampleCircle.cpp Samples: clean up cruft 2019-07-17 18:29:50 +00:00
SampleClip.cpp Samples: clean up cruft 2019-07-17 18:29:50 +00:00
SampleClipDrawMatch.cpp Samples: clean up cruft 2019-07-17 18:29:50 +00:00
SampleClock.cpp Samples: clean up cruft 2019-07-17 18:29:50 +00:00
SampleColorFilter.cpp Samples: clean up cruft 2019-07-17 18:29:50 +00:00
SampleComplexClip.cpp Samples: clean up cruft 2019-07-17 18:29:50 +00:00
SampleCowboy.cpp Samples: clean up cruft 2019-07-17 18:29:50 +00:00
SampleCusp.cpp tools: separate TimeUtils from AnimTimer 2019-07-12 15:05:01 +00:00
SampleDegenerateQuads.cpp Sample not RefCnted; ClickHandling moved out of viewer 2019-07-15 17:59:15 +00:00
SampleDegenerateTwoPtRadials.cpp tools: separate TimeUtils from AnimTimer 2019-07-12 15:05:01 +00:00
SampleEffects.cpp Samples: add name() virtual 2019-07-03 17:41:16 +00:00
SampleEmboss.cpp Samples: add name() virtual 2019-07-03 17:41:16 +00:00
SampleFatBits.cpp Sample not RefCnted; ClickHandling moved out of viewer 2019-07-15 17:59:15 +00:00
SampleFillType.cpp Samples: add name() virtual 2019-07-03 17:41:16 +00:00
SampleFilter2.cpp Sample/Filter2View: make it work without /skimages 2019-07-08 17:05:23 +00:00
SampleFilterQuality.cpp tools: separate TimeUtils from AnimTimer 2019-07-12 15:05:01 +00:00
SampleFlutterAnimate.cpp tools: separate TimeUtils from AnimTimer 2019-07-12 15:05:01 +00:00
SampleFontCache.cpp Samples: add name() virtual 2019-07-03 17:41:16 +00:00
SampleGlyphTransform.cpp tools: separate TimeUtils from AnimTimer 2019-07-12 15:05:01 +00:00
SampleGradients.cpp Samples: add name() virtual 2019-07-03 17:41:16 +00:00
SampleHairCurves.cpp Samples: add name() virtual 2019-07-03 17:41:16 +00:00
SampleHairline.cpp tools: separate TimeUtils from AnimTimer 2019-07-12 15:05:01 +00:00
SampleHairModes.cpp Samples: add name() virtual 2019-07-03 17:41:16 +00:00
SampleHT.cpp tools: separate TimeUtils from AnimTimer 2019-07-12 15:05:01 +00:00
SampleIdentityScale.cpp Samples: add name() virtual 2019-07-03 17:41:16 +00:00
SampleImageFilterDAG.cpp Change SkMatrix::decomposeScale to use preScale 2019-07-19 15:41:11 +00:00
SampleLayerMask.cpp Samples: add name() virtual 2019-07-03 17:41:16 +00:00
SampleLayers.cpp Sample not RefCnted; ClickHandling moved out of viewer 2019-07-15 17:59:15 +00:00
SampleLCD.cpp Samples: add name() virtual 2019-07-03 17:41:16 +00:00
SampleLighting.cpp tools: separate TimeUtils from AnimTimer 2019-07-12 15:05:01 +00:00
SampleLitAtlas.cpp tools: separate TimeUtils from AnimTimer 2019-07-12 15:05:01 +00:00
SampleLua.cpp Sample not RefCnted; ClickHandling moved out of viewer 2019-07-15 17:59:15 +00:00
SampleManyRects.cpp Samples: add name() virtual 2019-07-03 17:41:16 +00:00
SampleMegaStroke.cpp tools: separate TimeUtils from AnimTimer 2019-07-12 15:05:01 +00:00
SampleMixer.cpp Sample not RefCnted; ClickHandling moved out of viewer 2019-07-15 17:59:15 +00:00
SampleParagraph.cpp Adding locale 2019-07-09 20:55:51 +00:00
SamplePatch.cpp Sample not RefCnted; ClickHandling moved out of viewer 2019-07-15 17:59:15 +00:00
SamplePath.cpp Sample not RefCnted; ClickHandling moved out of viewer 2019-07-15 17:59:15 +00:00
SamplePathClip.cpp Sample not RefCnted; ClickHandling moved out of viewer 2019-07-15 17:59:15 +00:00
SamplePathEffects.cpp tools: separate TimeUtils from AnimTimer 2019-07-12 15:05:01 +00:00
SamplePathOverstroke.cpp Samples: simplify Sample::Event 2019-07-08 19:09:42 +00:00
SamplePathText.cpp tools: separate TimeUtils from AnimTimer 2019-07-12 15:05:01 +00:00
SamplePolyToPoly.cpp Samples: add name() virtual 2019-07-03 17:41:16 +00:00
SampleQuadStroker.cpp Sample not RefCnted; ClickHandling moved out of viewer 2019-07-15 17:59:15 +00:00
SampleRectanizer.cpp Samples: simplify Sample::Event 2019-07-08 19:09:42 +00:00
SampleRegion.cpp Sample not RefCnted; ClickHandling moved out of viewer 2019-07-15 17:59:15 +00:00
SampleRepeatTile.cpp Samples: add name() virtual 2019-07-03 17:41:16 +00:00
SampleSG.cpp Sample not RefCnted; ClickHandling moved out of viewer 2019-07-15 17:59:15 +00:00
SampleShaders.cpp Sample/Shaders: use resources; cleanup code 2019-07-08 19:31:42 +00:00
SampleShadowColor.cpp Samples: simplify Sample::Event 2019-07-08 19:09:42 +00:00
SampleShadowReference.cpp Samples: simplify Sample::Event 2019-07-08 19:09:42 +00:00
SampleShadowUtils.cpp tools: separate TimeUtils from AnimTimer 2019-07-12 15:05:01 +00:00
SampleShip.cpp Remove WallTimer class. 2019-07-15 16:06:11 +00:00
SampleSlides.cpp ModifierKey unifies sk_app::Window::ModifierKey & Sample::Click::ModifierKey 2019-07-09 16:16:41 +00:00
SampleStringArt.cpp ModifierKey unifies sk_app::Window::ModifierKey & Sample::Click::ModifierKey 2019-07-09 16:16:41 +00:00
SampleStrokePath.cpp Samples: add name() virtual 2019-07-03 17:41:16 +00:00
SampleStrokeRect.cpp Samples: add name() virtual 2019-07-03 17:41:16 +00:00
SampleSubpixelTranslate.cpp Samples: add name() virtual 2019-07-03 17:41:16 +00:00
SampleSVGFile.cpp Samples: add name() virtual 2019-07-03 17:41:16 +00:00
SampleTextBox.cpp Samples: add name() virtual 2019-07-03 17:41:16 +00:00
SampleTextEffects.cpp Samples: add name() virtual 2019-07-03 17:41:16 +00:00
SampleTextureDomain.cpp Samples: add name() virtual 2019-07-03 17:41:16 +00:00
SampleThinAA.cpp tools: separate TimeUtils from AnimTimer 2019-07-12 15:05:01 +00:00
SampleTiling.cpp Samples: add name() virtual 2019-07-03 17:41:16 +00:00
SampleUnpremul.cpp Samples: simplify Sample::Event 2019-07-08 19:09:42 +00:00
SampleVertices.cpp Sample not RefCnted; ClickHandling moved out of viewer 2019-07-15 17:59:15 +00:00
SampleWritePixels.cpp Samples: add name() virtual 2019-07-03 17:41:16 +00:00
SampleXfer.cpp Sample not RefCnted; ClickHandling moved out of viewer 2019-07-15 17:59:15 +00:00
SampleXfermodesBlur.cpp Samples: add name() virtual 2019-07-03 17:41:16 +00:00
vertexdump.cpp rewrite includes to not need so much -Ifoo 2019-04-24 16:27:11 +00:00