simplify gm matrices

rm gm that appears to have been there solely for pdf, but we don't use
it for that now.

Bug: skia:
Change-Id: I3cf88db923c2445b7c95dda14da679a594117643
Reviewed-on: https://skia-review.googlesource.com/31760
Reviewed-by: Derek Sollenberger <djsollen@google.com>
Reviewed-by: Mike Klein <mtklein@google.com>
Commit-Queue: Mike Klein <mtklein@google.com>
This commit is contained in:
Mike Reed 2017-08-07 22:12:05 -04:00 committed by Skia Commit-Bot
parent 95db9b3cb1
commit bdc3afa577
6 changed files with 0 additions and 127 deletions

View File

@ -70,7 +70,6 @@ GMSrc::GMSrc(skiagm::GMRegistry::Factory factory) : fFactory(factory) {}
Error GMSrc::draw(SkCanvas* canvas) const {
std::unique_ptr<skiagm::GM> gm(fFactory(nullptr));
canvas->concat(gm->getInitialTransform());
gm->draw(canvas);
return "";
}

View File

@ -16,7 +16,6 @@ GM::GM() {
fBGColor = SK_ColorWHITE;
fCanvasIsDeferred = false;
fHaveCalledOnceBeforeDraw = false;
fStarterMatrix.reset();
}
GM::~GM() {}

17
gm/gm.h
View File

@ -72,16 +72,6 @@ namespace skiagm {
return SkIntToScalar(this->getISize().height());
}
// TODO(vandebo) Instead of exposing this, we should run all the GMs
// with and without an initial transform.
// Most GMs will return the identity matrix, but some PDFs tests
// require setting the initial transform.
SkMatrix getInitialTransform() const {
SkMatrix matrix = fStarterMatrix;
matrix.preConcat(this->onGetInitialTransform());
return matrix;
}
SkColor getBGColor() const { return fBGColor; }
void setBGColor(SkColor);
@ -94,11 +84,6 @@ namespace skiagm {
fCanvasIsDeferred = isDeferred;
}
const SkMatrix& getStarterMatrix() { return fStarterMatrix; }
void setStarterMatrix(const SkMatrix& matrix) {
fStarterMatrix = matrix;
}
bool animate(const SkAnimTimer&);
bool handleKey(SkUnichar uni) {
return this->onHandleKey(uni);
@ -118,7 +103,6 @@ namespace skiagm {
virtual bool onAnimate(const SkAnimTimer&) { return false; }
virtual bool onHandleKey(SkUnichar uni) { return false; }
virtual SkMatrix onGetInitialTransform() const { return SkMatrix::I(); }
private:
Mode fMode;
@ -126,7 +110,6 @@ namespace skiagm {
SkColor fBGColor;
bool fCanvasIsDeferred; // work-around problem in srcmode.cpp
bool fHaveCalledOnceBeforeDraw;
SkMatrix fStarterMatrix;
};
typedef sk_tools::Registry<GM*(*)(void*)> GMRegistry;

View File

@ -1,106 +0,0 @@
/*
* Copyright 2012 Google Inc.
*
* Use of this source code is governed by a BSD-style license that can be
* found in the LICENSE file.
*/
#include "gm.h"
#include "SkGradientShader.h"
namespace skiagm {
static sk_sp<SkShader> MakeLinear(SkScalar width, SkScalar height, bool alternate,
const SkMatrix& localMatrix) {
SkPoint pts[2] = { {0, 0}, {width, height}};
SkColor colors[2] = {SK_ColorRED, SK_ColorGREEN};
if (alternate) {
pts[1].fY = 0;
colors[0] = SK_ColorBLUE;
colors[1] = SK_ColorYELLOW;
}
return SkGradientShader::MakeLinear(pts, colors, nullptr, 2, SkShader::kClamp_TileMode,
0, &localMatrix);
}
///////////////////////////////////////////////////////////////////////////////
class ShaderBoundsGM : public GM {
public:
typedef sk_sp<SkShader> (*ShaderGenFunc)(SkScalar width, SkScalar height,
bool alternate, const SkMatrix& localMatrix);
ShaderBoundsGM(ShaderGenFunc maker, const SkString& name)
: fShaderMaker(maker),
fName(name) {
}
protected:
SkString onShortName() override {
return fName;
}
SkISize onISize() override { return SkISize::Make(320, 240); }
SkMatrix onGetInitialTransform() const override {
SkMatrix result;
SkScalar scale = 0.8f;
result.setScale(scale, scale);
result.postTranslate(SkIntToScalar(7), SkIntToScalar(23));
return result;
}
void onDraw(SkCanvas* canvas) override {
// The PDF device has already clipped to the content area, but we
// do it again here so that the raster and pdf results are consistent.
canvas->clipRect(SkRect::MakeWH(SkIntToScalar(320),
SkIntToScalar(240)));
SkMatrix canvasScale;
SkScalar scale = 0.7f;
canvasScale.setScale(scale, scale);
canvas->concat(canvasScale);
// Background shader.
SkPaint paint;
paint.setShader(MakeShader(559, 387, false));
SkRect r = SkRect::MakeXYWH(SkIntToScalar(-12), SkIntToScalar(-41),
SkIntToScalar(571), SkIntToScalar(428));
canvas->drawRect(r, paint);
// Constrained shader.
paint.setShader(MakeShader(101, 151, true));
r = SkRect::MakeXYWH(SkIntToScalar(43), SkIntToScalar(71),
SkIntToScalar(101), SkIntToScalar(151));
canvas->clipRect(r);
canvas->drawRect(r, paint);
}
sk_sp<SkShader> MakeShader(int width, int height, bool background) {
SkScalar scale = 0.5f;
if (background) {
scale = 0.6f;
}
SkScalar shaderWidth = width / scale;
SkScalar shaderHeight = height / scale;
SkMatrix shaderScale = SkMatrix::MakeScale(scale);
return fShaderMaker(shaderWidth, shaderHeight, background, shaderScale);
}
private:
typedef GM INHERITED;
ShaderGenFunc fShaderMaker;
SkString fName;
sk_sp<SkShader> MakeShader(bool background);
};
///////////////////////////////////////////////////////////////////////////////
static GM* MyFactory(void*) {
return new ShaderBoundsGM(MakeLinear, SkString("shaderbounds_linear"));
}
static GMRegistry reg(MyFactory);
}

View File

@ -252,7 +252,6 @@ gm_sources = [
"$_gm/samplerstress.cpp",
"$_gm/savelayer.cpp",
"$_gm/scaledstrokes.cpp",
"$_gm/shaderbounds.cpp",
"$_gm/shadertext.cpp",
"$_gm/shadertext2.cpp",
"$_gm/shadertext3.cpp",

View File

@ -42,7 +42,6 @@ struct GMStream : Stream {
Status draw(SkCanvas* canvas) override {
this->init();
canvas->clear(0xffffffff);
canvas->concat(gm->getInitialTransform());
gm->draw(canvas);
return Status::OK;
}