RRect_transform.cpp 1.1 KB

123456789101112131415161718192021222324
  1. #if 0 // Disabled until updated to use current API.
  2. // Copyright 2019 Google LLC.
  3. // Use of this source code is governed by a BSD-style license that can be found in the LICENSE file.
  4. #include "tools/fiddle/examples.h"
  5. // HASH=68a5d24f22e2d798608fce8a20e47fd0
  6. REG_FIDDLE(RRect_transform, 256, 110, false, 0) {
  7. void draw(SkCanvas* canvas) {
  8. SkVector radii[] = {{5, 5}, {10, 10}, {15, 15}, {5, 5}};
  9. SkRRect rrect;
  10. rrect.setRectRadii({10, 10, 110, 80}, radii);
  11. SkRRect transformed;
  12. SkMatrix matrix = SkMatrix::MakeRectToRect(rrect.rect(), {140, 30, 220, 80},
  13. SkMatrix::kCenter_ScaleToFit);
  14. bool success = rrect.transform(matrix, &transformed);
  15. SkPaint paint;
  16. paint.setAntiAlias(true);
  17. canvas->drawString("rrect", 55, 100, paint);
  18. canvas->drawString(success ? "transformed" : "transform failed", 185, 100, paint);
  19. paint.setStyle(SkPaint::kStroke_Style);
  20. canvas->drawRRect(rrect, paint);
  21. canvas->drawRRect(transformed, paint);
  22. }
  23. } // END FIDDLE
  24. #endif // Disabled until updated to use current API.