Skip to content

Commit 46f5c5f

Browse files
Make SkM44 public
Need to migrate clients from private/ to core/ include Unexperimentalize concat44() methods on SkCanvas Change-Id: I64b8816722a9d93316cb8b8691d2d9a3e36f167f Reviewed-on: https://skia-review.googlesource.com/c/skia/+/272464 Reviewed-by: Brian Salomon <[email protected]> Commit-Queue: Mike Reed <[email protected]>
1 parent f8f9cd8 commit 46f5c5f

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

56 files changed

+492
-463
lines changed

bench/GameBench.cpp

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,7 @@
88
#include "bench/Benchmark.h"
99
#include "include/core/SkBitmap.h"
1010
#include "include/core/SkCanvas.h"
11-
#include "include/core/SkMatrix44.h"
11+
#include "include/core/SkM44.h"
1212
#include "include/core/SkPaint.h"
1313
#include "include/core/SkShader.h"
1414
#include "include/core/SkString.h"
@@ -368,7 +368,7 @@ class CanvasMatrixBench : public Benchmark {
368368
case kScale_Type: canvas->scale(1.0001f, 0.9999f); break;
369369
case k2x3_Type: canvas->concat(m); break;
370370
case k3x3_Type: canvas->concat(m); break;
371-
case k4x4_Type: canvas->experimental_concat44(m4); break;
371+
case k4x4_Type: canvas->concat44(m4); break;
372372
}
373373
}
374374
canvas->restore();

bench/Matrix44Bench.cpp

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,7 @@
88
#include "bench/Benchmark.h"
99
#include "include/core/SkMatrix44.h"
1010
#include "include/core/SkString.h"
11-
#include "include/private/SkM44.h"
11+
#include "include/core/SkM44.h"
1212
#include "include/utils/SkRandom.h"
1313

1414
class Matrix44Bench : public Benchmark {

gm/3d.cpp

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -49,7 +49,7 @@ static void do_draw(SkCanvas* canvas, SkColor color) {
4949

5050
SkM44 m = SkM44::Rotate({0, 1, 0}, SK_ScalarPI/6);
5151

52-
canvas->experimental_concat44(make_ctm(info, m, {300, 300}));
52+
canvas->concat44(make_ctm(info, m, {300, 300}));
5353

5454
canvas->translate(150, 150);
5555
SkPaint paint;

gm/crbug_224618.cpp

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -12,7 +12,7 @@
1212
#include "include/core/SkMatrix44.h"
1313
#include "include/core/SkSurface.h"
1414
#include "include/effects/SkGradientShader.h"
15-
#include "include/private/SkM44.h"
15+
#include "include/core/SkM44.h"
1616
#include "tools/timer/TimeUtils.h"
1717

1818
static SkM44 rotate_axis_angle(SkScalar x, SkScalar y, SkScalar z, SkScalar radians) {
@@ -101,7 +101,7 @@ class CrBug224618GM : public skiagm::GM {
101101
SkM44::Translate(-radius, -radius); // center content
102102

103103
canvas->save();
104-
canvas->experimental_concat44(model);
104+
canvas->concat44(model);
105105

106106
SkPaint fillPaint;
107107
fillPaint.setAntiAlias(true);

include/core/SkCanvas.h

Lines changed: 22 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -13,6 +13,7 @@
1313
#include "include/core/SkColor.h"
1414
#include "include/core/SkFontTypes.h"
1515
#include "include/core/SkImageInfo.h"
16+
#include "include/core/SkM44.h"
1617
#include "include/core/SkMatrix.h"
1718
#include "include/core/SkPaint.h"
1819
#include "include/core/SkPoint.h"
@@ -26,7 +27,6 @@
2627
#include "include/core/SkTypes.h"
2728
#include "include/core/SkVertices.h"
2829
#include "include/private/SkDeque.h"
29-
#include "include/private/SkM44.h"
3030
#include "include/private/SkMacros.h"
3131

3232
#include <cstring>
@@ -44,7 +44,6 @@ class SkFont;
4444
class SkGlyphRunBuilder;
4545
class SkImage;
4646
class SkImageFilter;
47-
class SkM44;
4847
class SkPaintFilterCanvas;
4948
class SkPath;
5049
class SkPicture;
@@ -880,9 +879,17 @@ class SK_API SkCanvas {
880879
example: https://fiddle.skia.org/c/@Canvas_concat
881880
*/
882881
void concat(const SkMatrix& matrix);
882+
void concat44(const SkM44&);
883+
void concat44(const SkScalar[]); // column-major
883884

884-
void experimental_concat44(const SkM44&);
885-
void experimental_concat44(const SkScalar[]); // column-major
885+
#ifdef SK_SUPPORT_EXPERIMENTAL_CANVAS44
886+
void experimental_concat44(const SkM44& m) {
887+
this->concat44(m);
888+
}
889+
void experimental_concat44(const SkScalar colMajor[]) {
890+
this->concat44(colMajor);
891+
}
892+
#endif
886893

887894
/** Replaces SkMatrix with matrix.
888895
Unlike concat(), any prior matrix state is overwritten.
@@ -2508,12 +2515,21 @@ class SK_API SkCanvas {
25082515
example: https://fiddle.skia.org/c/@Clip
25092516
*/
25102517
SkMatrix getTotalMatrix() const;
2518+
SkM44 getLocalToDevice() const; // entire matrix stack
2519+
void getLocalToDevice(SkScalar colMajor[16]) const;
2520+
2521+
#ifdef SK_SUPPORT_EXPERIMENTAL_CANVAS44
2522+
SkM44 experimental_getLocalToDevice() const {
2523+
return this->getLocalToDevice();
2524+
}
2525+
void experimental_getLocalToDevice(SkScalar colMajor[16]) const {
2526+
this->getLocalToDevice(colMajor);
2527+
}
2528+
#endif
25112529

2512-
SkM44 experimental_getLocalToDevice() const; // entire matrix stack
25132530
SkM44 experimental_getLocalToWorld() const; // up to but not including top-most camera
25142531
SkM44 experimental_getLocalToCamera() const; // up to and including top-most camera
25152532

2516-
void experimental_getLocalToDevice(SkScalar colMajor[16]) const;
25172533
void experimental_getLocalToWorld(SkScalar colMajor[16]) const;
25182534
void experimental_getLocalToCamera(SkScalar colMajor[16]) const;
25192535

0 commit comments

Comments
 (0)