Flutter Engine
The Flutter Engine
Loading...
Searching...
No Matches
Private Member Functions | List of all members
skiagm::CroppedRectsGM Class Reference
Inheritance diagram for skiagm::CroppedRectsGM:
skiagm::GM

Private Member Functions

SkString getName () const override
 
SkISize getISize () override
 
void onDraw (SkCanvas *canvas) override
 

Additional Inherited Members

- Public Types inherited from skiagm::GM
enum  Mode { kGM_Mode , kSample_Mode , kBench_Mode }
 
using DrawResult = skiagm::DrawResult
 
using GraphiteTestContext = skiatest::graphite::GraphiteTestContext
 
- Public Member Functions inherited from skiagm::GM
 GM (SkColor backgroundColor=SK_ColorWHITE)
 
virtual ~GM ()
 
void setMode (Mode mode)
 
Mode getMode () const
 
DrawResult gpuSetup (SkCanvas *, SkString *errorMsg, GraphiteTestContext *=nullptr)
 
void gpuTeardown ()
 
void onceBeforeDraw ()
 
DrawResult draw (SkCanvas *canvas)
 
DrawResult draw (SkCanvas *, SkString *errorMsg)
 
void drawBackground (SkCanvas *)
 
DrawResult drawContent (SkCanvas *canvas)
 
DrawResult drawContent (SkCanvas *, SkString *errorMsg)
 
virtual bool runAsBench () const
 
SkScalar width ()
 
SkScalar height ()
 
SkColor getBGColor () const
 
void setBGColor (SkColor)
 
void drawSizeBounds (SkCanvas *, SkColor)
 
bool animate (double)
 
virtual bool onChar (SkUnichar)
 
bool getControls (SkMetaData *controls)
 
void setControls (const SkMetaData &controls)
 
virtual void modifyGrContextOptions (GrContextOptions *)
 
virtual void modifyGraphiteContextOptions (skgpu::graphite::ContextOptions *) const
 
virtual bool isBazelOnly () const
 
virtual std::map< std::string, std::string > getGoldKeys () const
 
- Static Public Attributes inherited from skiagm::GM
static constexpr char kErrorMsg_DrawSkippedGpuOnly []
 
- Protected Member Functions inherited from skiagm::GM
virtual DrawResult onGpuSetup (SkCanvas *, SkString *, GraphiteTestContext *)
 
virtual void onGpuTeardown ()
 
virtual void onOnceBeforeDraw ()
 
virtual DrawResult onDraw (SkCanvas *, SkString *errorMsg)
 
virtual bool onAnimate (double)
 
virtual bool onGetControls (SkMetaData *)
 
virtual void onSetControls (const SkMetaData &)
 
GraphiteTestContextgraphiteTestContext () const
 

Detailed Description

Definition at line 57 of file croppedrects.cpp.

Member Function Documentation

◆ getISize()

SkISize skiagm::CroppedRectsGM::getISize ( )
inlineoverrideprivatevirtual

Implements skiagm::GM.

Definition at line 60 of file croppedrects.cpp.

60{ return SkISize::Make(500, 500); }
static constexpr SkISize Make(int32_t w, int32_t h)
Definition SkSize.h:20

◆ getName()

SkString skiagm::CroppedRectsGM::getName ( ) const
inlineoverrideprivatevirtual

Implements skiagm::GM.

Definition at line 59 of file croppedrects.cpp.

59{ return SkString("croppedrects"); }

◆ onDraw()

void skiagm::CroppedRectsGM::onDraw ( SkCanvas canvas)
inlineoverrideprivatevirtual

Reimplemented from skiagm::GM.

Definition at line 62 of file croppedrects.cpp.

62 {
63 if (!fSrcImage) {
64 fSrcImage = create_image(canvas);
65 if (fSrcImage) {
66 fSrcImageShader = fSrcImage->makeShader(SkSamplingOptions());
67 }
68 }
69
70 canvas->clear(SK_ColorWHITE);
71
72 {
73 // skgpu::ganesh::SurfaceDrawContext::drawFilledRect.
74 SkAutoCanvasRestore acr(canvas, true);
76 paint.setShader(fSrcImageShader);
77 canvas->clipRect(kSrcImageClip);
78 canvas->drawPaint(paint);
79 }
80
81 {
82 // skgpu::ganesh::SurfaceDrawContext::fillRectToRect.
83 SkAutoCanvasRestore acr(canvas, true);
84 SkRect drawRect = SkRect::MakeXYWH(350, 100, 100, 300);
85 canvas->clipRect(drawRect);
86 canvas->drawImageRect(fSrcImage.get(),
89 drawRect.makeOutset(0.5f * drawRect.width(), drawRect.height()),
90 SkSamplingOptions(), nullptr,
92 }
93
94 {
95 // skgpu::ganesh::SurfaceDrawContext::fillRectWithLocalMatrix.
96 SkAutoCanvasRestore acr(canvas, true);
102 paint.setStrokeWidth(2 * kSrcImageClip.height());
103 paint.setShader(fSrcImageShader);
104 canvas->translate(23, 301);
105 canvas->scale(300 / kSrcImageClip.width(), 100 / kSrcImageClip.height());
107 canvas->clipRect(kSrcImageClip);
108 canvas->drawPath(path, paint);
109 }
110
111 // TODO: assert the draw target only has one op in the post-MDB world.
112 }
static sk_sp< SkImage > create_image()
constexpr SkColor SK_ColorWHITE
Definition SkColor.h:122
void clipRect(const SkRect &rect, SkClipOp op, bool doAntiAlias)
void translate(SkScalar dx, SkScalar dy)
void drawPaint(const SkPaint &paint)
@ kStrict_SrcRectConstraint
sample only inside bounds; slower
Definition SkCanvas.h:1542
void clear(SkColor color)
Definition SkCanvas.h:1199
void drawImageRect(const SkImage *, const SkRect &src, const SkRect &dst, const SkSamplingOptions &, const SkPaint *, SrcRectConstraint)
void drawPath(const SkPath &path, const SkPaint &paint)
void scale(SkScalar sx, SkScalar sy)
sk_sp< SkShader > makeShader(SkTileMode tmx, SkTileMode tmy, const SkSamplingOptions &, const SkMatrix *localMatrix=nullptr) const
Definition SkImage.cpp:179
@ kStroke_Style
set to stroke geometry
Definition SkPaint.h:194
static SkPath Line(const SkPoint a, const SkPoint b)
Definition SkPath.h:106
T * get() const
Definition SkRefCnt.h:303
const Paint & paint
DEF_SWITCHES_START aot vmservice shared library Name of the *so containing AOT compiled Dart assets for launching the service isolate vm snapshot The VM snapshot data that will be memory mapped as read only SnapshotAssetPath must be present isolate snapshot The isolate snapshot data that will be memory mapped as read only SnapshotAssetPath must be present cache dir path
Definition switches.h:57
constexpr SkRect kSrcImageClip
constexpr float left() const
Definition SkRect.h:734
constexpr float top() const
Definition SkRect.h:741
SkScalar fLeft
smaller x-axis bounds
Definition extension.cpp:14
SkRect makeOutset(float dx, float dy) const
Definition SkRect.h:1002
static constexpr SkRect MakeXYWH(float x, float y, float w, float h)
Definition SkRect.h:659
SkScalar fRight
larger x-axis bounds
Definition extension.cpp:16
constexpr float height() const
Definition SkRect.h:769
constexpr float centerY() const
Definition SkRect.h:785
constexpr float width() const
Definition SkRect.h:762

The documentation for this class was generated from the following file: