Path_arcTo_2_c.cpp 1.1 KB

123456789101112131415161718192021222324252627282930
  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=498360fa0a201cc5db04b1c27256358f
  5. REG_FIDDLE(Path_arcTo_2_c, 256, 256, true, 0) {
  6. void draw(SkCanvas* canvas) {
  7. SkPath path;
  8. path.moveTo({156, 20});
  9. path.arcTo(200, 20, 170, 50, 50);
  10. SkPath::Iter iter(path, false);
  11. SkPoint p[4];
  12. SkPath::Verb verb;
  13. while (SkPath::kDone_Verb != (verb = iter.next(p))) {
  14. switch (verb) {
  15. case SkPath::kMove_Verb:
  16. SkDebugf("move to (%g,%g)\n", p[0].fX, p[0].fY);
  17. break;
  18. case SkPath::kLine_Verb:
  19. SkDebugf("line (%g,%g),(%g,%g)\n", p[0].fX, p[0].fY, p[1].fX, p[1].fY);
  20. break;
  21. case SkPath::kConic_Verb:
  22. SkDebugf("conic (%g,%g),(%g,%g),(%g,%g) weight %g\n",
  23. p[0].fX, p[0].fY, p[1].fX, p[1].fY, p[2].fX, p[2].fY, iter.conicWeight());
  24. break;
  25. default:
  26. SkDebugf("unexpected verb\n");
  27. }
  28. }
  29. }
  30. } // END FIDDLE