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

Protected Member Functions

void onOnceBeforeDraw () override
 
SkString getName () const override
 
SkISize getISize () override
 
void onDraw (SkCanvas *canvas) override
 
- Protected Member Functions inherited from skiagm::GM
virtual DrawResult onGpuSetup (SkCanvas *, SkString *, GraphiteTestContext *)
 
virtual void onGpuTeardown ()
 
virtual DrawResult onDraw (SkCanvas *, SkString *errorMsg)
 
virtual bool onAnimate (double)
 
virtual bool onGetControls (SkMetaData *)
 
virtual void onSetControls (const SkMetaData &)
 
GraphiteTestContextgraphiteTestContext () const
 

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 []
 

Detailed Description

Definition at line 324 of file smallpaths.cpp.

Member Function Documentation

◆ getISize()

SkISize SmallPathsGM::getISize ( )
inlineoverrideprotectedvirtual

Implements skiagm::GM.

Definition at line 338 of file smallpaths.cpp.

338{ return SkISize::Make(640, 512); }
static constexpr SkISize Make(int32_t w, int32_t h)
Definition SkSize.h:20

◆ getName()

SkString SmallPathsGM::getName ( ) const
inlineoverrideprotectedvirtual

Implements skiagm::GM.

Definition at line 336 of file smallpaths.cpp.

336{ return SkString("smallpaths"); }

◆ onDraw()

void SmallPathsGM::onDraw ( SkCanvas canvas)
inlineoverrideprotectedvirtual

Reimplemented from skiagm::GM.

Definition at line 340 of file smallpaths.cpp.

340 {
342 paint.setAntiAlias(true);
343
344 // first column: filled paths
345 canvas->save();
346 for (size_t i = 0; i < N; i++) {
347 canvas->drawPath(fPath[i], paint);
348 canvas->translate(gXTranslate[i], fDY[i]);
349 }
350 canvas->restore();
351 canvas->translate(SkIntToScalar(120), SkIntToScalar(0));
352
353 // second column: stroked paths
354 canvas->save();
356 paint.setStrokeCap(SkPaint::kButt_Cap);
357 for (size_t i = 0; i < N; i++) {
358 paint.setStrokeWidth(gWidths[i]);
359 paint.setStrokeMiter(gMiters[i]);
360 canvas->drawPath(fPath[i], paint);
361 canvas->translate(gXTranslate[i], fDY[i]);
362 }
363 canvas->restore();
364 canvas->translate(SkIntToScalar(120), SkIntToScalar(0));
365
366 // third column: stroked paths with different widths
367 canvas->save();
369 paint.setStrokeCap(SkPaint::kButt_Cap);
370 for (size_t i = 0; i < N; i++) {
371 paint.setStrokeWidth(gWidths[i] + 2.0f);
372 paint.setStrokeMiter(gMiters[i]);
373 canvas->drawPath(fPath[i], paint);
374 canvas->translate(gXTranslate[i], fDY[i]);
375 }
376 canvas->restore();
377 canvas->translate(SkIntToScalar(120), SkIntToScalar(0));
378
379 // fourth column: stroked and filled paths
381 paint.setStrokeCap(SkPaint::kButt_Cap);
382 for (size_t i = 0; i < N; i++) {
383 paint.setStrokeWidth(gWidths[i]);
384 paint.setStrokeMiter(gMiters[i]);
385 canvas->drawPath(fPath[i], paint);
386 canvas->translate(gXTranslate[i], fDY[i]);
387 }
388
389 }
#define SkIntToScalar(x)
Definition SkScalar.h:57
void restore()
Definition SkCanvas.cpp:465
void translate(SkScalar dx, SkScalar dy)
int save()
Definition SkCanvas.cpp:451
void drawPath(const SkPath &path, const SkPaint &paint)
@ kButt_Cap
no stroke extension
Definition SkPaint.h:334
@ kStroke_Style
set to stroke geometry
Definition SkPaint.h:194
@ kStrokeAndFill_Style
sets to stroke and fill geometry
Definition SkPaint.h:195
const Paint & paint
#define N
constexpr SkScalar gMiters[]
constexpr SkScalar gWidths[]
constexpr SkScalar gXTranslate[]

◆ onOnceBeforeDraw()

void SmallPathsGM::onOnceBeforeDraw ( )
inlineoverrideprotectedvirtual

Reimplemented from skiagm::GM.

Definition at line 328 of file smallpaths.cpp.

328 {
329 for (size_t i = 0; i < N; i++) {
330 auto [path, dy] = gProcs[i]();
331 fPath[i] = path;
332 fDY[i] = dy;
333 }
334 }
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 MakePathProc gProcs[]

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