Path_ConvertToNonInverseFillType.cpp 1019 B

123456789101112131415161718192021222324252627
  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=319f6b124458dcc0f9ce4d7bbde65810
  5. REG_FIDDLE(Path_ConvertToNonInverseFillType, 256, 256, true, 0) {
  6. #define nameValue(fill) { SkPath::fill, #fill }
  7. void draw(SkCanvas* canvas) {
  8. struct {
  9. SkPath::FillType fill;
  10. const char* name;
  11. } fills[] = {
  12. nameValue(kWinding_FillType),
  13. nameValue(kEvenOdd_FillType),
  14. nameValue(kInverseWinding_FillType),
  15. nameValue(kInverseEvenOdd_FillType),
  16. };
  17. for (unsigned i = 0; i < SK_ARRAY_COUNT(fills); ++i) {
  18. if (fills[i].fill != (SkPath::FillType) i) {
  19. SkDebugf("fills array order does not match FillType enum order");
  20. break;
  21. }
  22. SkDebugf("ConvertToNonInverseFillType(%s) == %s\n", fills[i].name,
  23. fills[(int) SkPath::ConvertToNonInverseFillType(fills[i].fill)].name);
  24. }
  25. }
  26. } // END FIDDLE