Path_close.cpp 889 B

123456789101112131415161718192021222324
  1. // Copyright 2019 Google LLC.
  2. // Use of this source code is governed by a BSD-style license that can be found in the LICENSE file.
  3. #include "tools/fiddle/examples.h"
  4. // HASH=9235f6309271d6420fa5c45dc28664c5
  5. REG_FIDDLE(Path_close, 256, 256, false, 0) {
  6. void draw(SkCanvas* canvas) {
  7. SkPaint paint;
  8. paint.setStrokeWidth(15);
  9. paint.setStrokeCap(SkPaint::kRound_Cap);
  10. SkPath path;
  11. const SkPoint points[] = {{20, 20}, {70, 20}, {40, 90}};
  12. path.addPoly(points, SK_ARRAY_COUNT(points), false);
  13. for (int loop = 0; loop < 2; ++loop) {
  14. for (auto style : {SkPaint::kStroke_Style, SkPaint::kFill_Style,
  15. SkPaint::kStrokeAndFill_Style} ) {
  16. paint.setStyle(style);
  17. canvas->drawPath(path, paint);
  18. canvas->translate(85, 0);
  19. }
  20. path.close();
  21. canvas->translate(-255, 128);
  22. }
  23. }
  24. } // END FIDDLE