skia2/samplecode
Michael Ludwig 4e1c1a77ad Implement computeFastBounds for PathEffects
Makes computeFastBounds not part of the public API, it's only accessible
to subclasses of SkPathEffect, GrStyle, and SkPaint. Subclasses can
invoke it other path effects using SkPathEffectPriv::ComputeFastBounds.

Changes the internal function to
  bool computeFastBounds(SkRect* bounds) const;

Subclasses of SkPathEffect must implement this, and can choose to return
false when fast bounds aren't computable.

Provides implementations of computeFastBounds() for path effects
bundled with Skia.

Bug: skia:11974
Change-Id: I545ccf99b4e669d3af9df13acfac28573306fab8
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/406140
Commit-Queue: Michael Ludwig <michaelludwig@google.com>
Reviewed-by: Mike Reed <reed@google.com>
2021-05-11 17:01:59 +00:00
..
DecodeFile.h Sample/Filter2View: make it work without /skimages 2019-07-08 17:05:23 +00:00
Sample2PtRadial.cpp Replace 'typedef xxxxx INHERITED' with 'using INHERITED = xxxx;'. 2020-09-03 03:41:26 +00:00
Sample3D.cpp Convert some SkRuntimeEffect::Make to use stage-specific factories 2021-04-21 16:19:57 +00:00
Sample.cpp Almost remove GrContext 2020-10-20 15:52:01 +00:00
Sample.h add std::function option to Click to simplify callsites 2020-04-22 15:41:28 +00:00
SampleAARectModes.cpp Bitmap should use sampling options 2020-12-12 15:36:21 +00:00
SampleAARects.cpp Bitmap should use sampling options 2020-12-12 15:36:21 +00:00
SampleAndroidShadows.cpp Replace 'typedef xxxxx INHERITED' with 'using INHERITED = xxxx;'. 2020-09-03 03:41:26 +00:00
SampleAnimatedImage.cpp Fix implicit fallthroughs throughout Skia. 2020-06-11 22:29:53 +00:00
SampleAnimatedText.cpp Reland "Add new virts, hide old ones" 2020-12-30 15:21:01 +00:00
SampleAnimBlur.cpp Samples: clean up cruft 2019-07-17 18:29:50 +00:00
SampleArc.cpp more rect api simplifications 2019-08-25 10:12:57 +00:00
SampleAtlas.cpp Migrate to drawImage w/ sampling 2021-01-22 22:38:02 +00:00
SampleAudio.cpp Replace 'typedef xxxxx INHERITED' with 'using INHERITED = xxxx;'. 2020-09-03 03:41:26 +00:00
SampleCamera.cpp Simplify common case for recttorect 2021-01-15 18:37:46 +00:00
SampleChart.cpp Switch over to SkPathBuilder 2020-07-31 02:21:51 +00:00
SampleChineseFling.cpp Migrate to drawImage w/ sampling 2021-01-22 22:38:02 +00:00
SampleCircle.cpp Samples: clean up cruft 2019-07-17 18:29:50 +00:00
SampleClip.cpp Move Sk3Perspective and Sk3Lookat into SkM44 2021-03-24 15:47:22 +00:00
SampleClock.cpp Revert "Reland "Revert "Use flat version of path-direction enum""" 2019-11-22 19:09:54 +00:00
SampleComplexClip.cpp Update complex clip GMs to only use supported clip ops 2020-06-25 14:15:25 +00:00
SampleCowboy.cpp [svg] Allow clients to pass a custom SkFontMgr 2020-11-11 01:51:44 +00:00
SampleCusp.cpp Replace 'typedef xxxxx INHERITED' with 'using INHERITED = xxxx;'. 2020-09-03 03:41:26 +00:00
SampleDegenerateQuads.cpp move SkTPin to include/private 2020-10-16 19:45:11 +00:00
SampleDegenerateTwoPtRadials.cpp Replace 'typedef xxxxx INHERITED' with 'using INHERITED = xxxx;'. 2020-09-03 03:41:26 +00:00
SampleEffects.cpp Replace 'typedef xxxxx INHERITED' with 'using INHERITED = xxxx;'. 2020-09-03 03:41:26 +00:00
SampleEmboss.cpp Replace 'typedef xxxxx INHERITED' with 'using INHERITED = xxxx;'. 2020-09-03 03:41:26 +00:00
SampleFatBits.cpp Pass sampling to surface.draw 2021-01-06 19:05:00 +00:00
SampleFillType.cpp Replace 'typedef xxxxx INHERITED' with 'using INHERITED = xxxx;'. 2020-09-03 03:41:26 +00:00
SampleFilterBounds.cpp Simplify common case of linear filtering with no mips 2021-01-15 16:47:16 +00:00
SampleFitCubicToCircle.cpp Add an interactive sample that fits cubics to circular arcs 2020-06-09 23:04:03 +00:00
SampleFlutterAnimate.cpp Starting to hide setFilterQuality 2020-12-19 20:56:50 +00:00
SampleGlyphTransform.cpp Replace 'typedef xxxxx INHERITED' with 'using INHERITED = xxxx;'. 2020-09-03 03:41:26 +00:00
SampleGradients.cpp Replace 'typedef xxxxx INHERITED' with 'using INHERITED = xxxx;'. 2020-09-03 03:41:26 +00:00
SampleHairCurves.cpp Replace 'typedef xxxxx INHERITED' with 'using INHERITED = xxxx;'. 2020-09-03 03:41:26 +00:00
SampleHairModes.cpp Bitmap should use sampling options 2020-12-12 15:36:21 +00:00
SampleImageFilterDAG.cpp Factor perspective scale into filter matrix decomposition 2020-10-16 18:49:51 +00:00
SampleLayers.cpp Removed unused SkInterpolator 2021-04-13 00:50:11 +00:00
SampleLCD.cpp Replace 'typedef xxxxx INHERITED' with 'using INHERITED = xxxx;'. 2020-09-03 03:41:26 +00:00
SampleManyRects.cpp Replace 'typedef xxxxx INHERITED' with 'using INHERITED = xxxx;'. 2020-09-03 03:41:26 +00:00
SampleMaterialShadows.cpp Add material shadows sample. 2020-12-17 22:33:26 +00:00
SampleMegaStroke.cpp Replace 'typedef xxxxx INHERITED' with 'using INHERITED = xxxx;'. 2020-09-03 03:41:26 +00:00
SampleMixer.cpp Migrate to drawImage w/ sampling 2021-01-22 22:38:02 +00:00
SamplePatch.cpp Simplify common case of linear filtering with no mips 2021-01-15 16:47:16 +00:00
SamplePath.cpp Show cubic made up of 2 quads 2020-10-23 21:03:45 +00:00
SamplePathClip.cpp Replace 'typedef xxxxx INHERITED' with 'using INHERITED = xxxx;'. 2020-09-03 03:41:26 +00:00
SamplePathEffects.cpp Replace 'typedef xxxxx INHERITED' with 'using INHERITED = xxxx;'. 2020-09-03 03:41:26 +00:00
SamplePathOverstroke.cpp Replace 'typedef xxxxx INHERITED' with 'using INHERITED = xxxx;'. 2020-09-03 03:41:26 +00:00
SamplePathText.cpp SkAuto[S]TMalloc only for trivially constructible/destructible. 2021-03-31 13:55:45 +00:00
SamplePolyToPoly.cpp Replace 'typedef xxxxx INHERITED' with 'using INHERITED = xxxx;'. 2020-09-03 03:41:26 +00:00
SampleQuadStroker.cpp Pass sampling to surface.draw 2021-01-06 19:05:00 +00:00
SampleRectanizer.cpp Replace 'typedef xxxxx INHERITED' with 'using INHERITED = xxxx;'. 2020-09-03 03:41:26 +00:00
SampleRepeatTile.cpp Bitmap should use sampling options 2020-12-12 15:36:21 +00:00
SampleSG.cpp Replace 'typedef xxxxx INHERITED' with 'using INHERITED = xxxx;'. 2020-09-03 03:41:26 +00:00
SampleShadowColor.cpp Replace 'typedef xxxxx INHERITED' with 'using INHERITED = xxxx;'. 2020-09-03 03:41:26 +00:00
SampleShadowReference.cpp Replace 'typedef xxxxx INHERITED' with 'using INHERITED = xxxx;'. 2020-09-03 03:41:26 +00:00
SampleShadowUtils.cpp Replace 'typedef xxxxx INHERITED' with 'using INHERITED = xxxx;'. 2020-09-03 03:41:26 +00:00
SampleShip.cpp More hiding of legacy drawImage calls 2021-01-22 13:53:42 +00:00
SampleSimpleStroker.cpp Replace 'typedef xxxxx INHERITED' with 'using INHERITED = xxxx;'. 2020-09-03 03:41:26 +00:00
SampleSlides.cpp Simplify common case of linear filtering with no mips 2021-01-15 16:47:16 +00:00
SampleStringArt.cpp Replace 'typedef xxxxx INHERITED' with 'using INHERITED = xxxx;'. 2020-09-03 03:41:26 +00:00
SampleStrokePath.cpp Simplify common case for recttorect 2021-01-15 18:37:46 +00:00
SampleStrokeRect.cpp Replace 'typedef xxxxx INHERITED' with 'using INHERITED = xxxx;'. 2020-09-03 03:41:26 +00:00
SampleStrokeVerb.cpp Rename SampleCCPRGeometry.cpp -> SampleStrokeVerb.cpp 2021-03-08 16:37:09 +00:00
SampleSVGFile.cpp [svg] Allow clients to pass a custom SkFontMgr 2020-11-11 01:51:44 +00:00
SampleTessellatedWedge.cpp Rename GrTessellatingStencilFillOp -> GrPathStencilFillOp 2021-05-06 22:59:47 +00:00
SampleTextBox.cpp Add SkShaper::PurgeCaches. 2021-01-27 17:50:30 +00:00
SampleTextEffects.cpp Implement computeFastBounds for PathEffects 2021-05-11 17:01:59 +00:00
SampleTextureUpload.cpp Migrate to drawImage w/ sampling 2021-01-22 22:38:02 +00:00
SampleThinAA.cpp Reland "Add new virts, hide old ones" 2020-12-30 15:21:01 +00:00
SampleTiming.cpp Migrate to drawImage w/ sampling 2021-01-22 22:38:02 +00:00
SampleVariableWidthStroker.cpp Handle cubic segments in variable-width stroker 2020-10-30 15:10:30 +00:00
SampleVertices.cpp Simplify common case of linear filtering with no mips 2021-01-15 16:47:16 +00:00
SampleWritePixels.cpp Replace 'typedef xxxxx INHERITED' with 'using INHERITED = xxxx;'. 2020-09-03 03:41:26 +00:00
SampleXfer.cpp Simplify common case for recttorect 2021-01-15 18:37:46 +00:00
SampleXfermodesBlur.cpp Use samplingoptions for bitmap shader 2020-12-12 17:08:11 +00:00
vertexdump.cpp rewrite includes to not need so much -Ifoo 2019-04-24 16:27:11 +00:00