Matrix_mapRectScaleTranslate.cpp 679 B

123456789101112131415161718
  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=62bc26989c2b4c2a54d516596a71dd97
  5. REG_FIDDLE(Matrix_mapRectScaleTranslate, 256, 256, false, 0) {
  6. void draw(SkCanvas* canvas) {
  7. SkPaint paint;
  8. SkMatrix matrix;
  9. SkRect rect = {100, 50, 150, 180};
  10. matrix.setScale(2, .5f, rect.centerX(), rect.centerY());
  11. SkRect rotated;
  12. matrix.mapRectScaleTranslate(&rotated, rect);
  13. paint.setStyle(SkPaint::kStroke_Style);
  14. canvas->drawRect(rect, paint);
  15. paint.setColor(SK_ColorRED);
  16. canvas->drawRect(rotated, paint);
  17. }
  18. } // END FIDDLE