Path_cubicTo.cpp 881 B

12345678910111213141516171819202122
  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=3e476378e3e0550ab134bbaf61112d98
  5. REG_FIDDLE(Path_cubicTo, 256, 256, false, 0) {
  6. void draw(SkCanvas* canvas) {
  7. SkPaint paint;
  8. paint.setAntiAlias(true);
  9. paint.setStyle(SkPaint::kStroke_Style);
  10. SkPath path;
  11. path.moveTo(0, -10);
  12. for (int i = 0; i < 128; i += 16) {
  13. SkScalar c = i * 0.5f;
  14. path.cubicTo( 10 + c, -10 - i, 10 + i, -10 - c, 10 + i, 0);
  15. path.cubicTo( 14 + i, 14 + c, 14 + c, 14 + i, 0, 14 + i);
  16. path.cubicTo(-18 - c, 18 + i, -18 - i, 18 + c, -18 - i, 0);
  17. path.cubicTo(-22 - i, -22 - c, -22 - c, -22 - i, 0, -22 - i);
  18. }
  19. path.offset(128, 128);
  20. canvas->drawPath(path, paint);
  21. }
  22. } // END FIDDLE