Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(271)

Side by Side Diff: samplecode/SampleFatBits.cpp

Issue 245963010: Move SkShader::fLocalMatrix into SkShader constructor. (Closed) Base URL: https://skia.googlesource.com/skia.git@master
Patch Set: uncomment setLocalMatrix Created 6 years, 8 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
OLDNEW
1 /* 1 /*
2 * Copyright 2012 Google Inc. 2 * Copyright 2012 Google Inc.
3 * 3 *
4 * Use of this source code is governed by a BSD-style license that can be 4 * Use of this source code is governed by a BSD-style license that can be
5 * found in the LICENSE file. 5 * found in the LICENSE file.
6 */ 6 */
7 7
8 #include "SampleCode.h" 8 #include "SampleCode.h"
9 #include "SkView.h" 9 #include "SkView.h"
10 #include "SkCanvas.h" 10 #include "SkCanvas.h"
(...skipping 25 matching lines...) Expand all
36 } 36 }
37 37
38 static SkShader* createChecker() { 38 static SkShader* createChecker() {
39 // SkColor colors[] = { 0xFFFDFDFD, 0xFFF4F4F4 }; 39 // SkColor colors[] = { 0xFFFDFDFD, 0xFFF4F4F4 };
40 SkColor colors[] = { 0xFFFFFFFF, 0xFFFFFFFF }; 40 SkColor colors[] = { 0xFFFFFFFF, 0xFFFFFFFF };
41 SkBitmap bm; 41 SkBitmap bm;
42 bm.allocN32Pixels(2, 2); 42 bm.allocN32Pixels(2, 2);
43 bm.lockPixels(); 43 bm.lockPixels();
44 *bm.getAddr32(0, 0) = *bm.getAddr32(1, 1) = SkPreMultiplyColor(colors[0]); 44 *bm.getAddr32(0, 0) = *bm.getAddr32(1, 1) = SkPreMultiplyColor(colors[0]);
45 *bm.getAddr32(0, 1) = *bm.getAddr32(1, 0) = SkPreMultiplyColor(colors[1]); 45 *bm.getAddr32(0, 1) = *bm.getAddr32(1, 0) = SkPreMultiplyColor(colors[1]);
46 SkShader* s = SkShader::CreateBitmapShader(bm, SkShader::kRepeat_TileMode,
47 SkShader::kRepeat_TileMode);
48
49 SkMatrix m; 46 SkMatrix m;
50 m.setScale(12, 12); 47 m.setScale(12, 12);
51 s->setLocalMatrix(m); 48 return SkShader::CreateBitmapShader(bm, SkShader::kRepeat_TileMode,
52 return s; 49 SkShader::kRepeat_TileMode, &m);
53 } 50 }
54 51
55 class FatBits { 52 class FatBits {
56 public: 53 public:
57 FatBits() : fShader(createChecker()) { 54 FatBits() : fShader(createChecker()) {
58 fAA = false; 55 fAA = false;
59 fStyle = kHair_Style; 56 fStyle = kHair_Style;
60 fGrid = true; 57 fGrid = true;
61 fShowSkeleton = true; 58 fShowSkeleton = true;
62 fUseGPU = false; 59 fUseGPU = false;
(...skipping 33 matching lines...) Expand 10 before | Expand all | Expand 10 after
96 Style getStyle() const { return fStyle; } 93 Style getStyle() const { return fStyle; }
97 void setStyle(Style s) { fStyle = s; } 94 void setStyle(Style s) { fStyle = s; }
98 95
99 void setWHZ(int width, int height, int zoom) { 96 void setWHZ(int width, int height, int zoom) {
100 fW = width; 97 fW = width;
101 fH = height; 98 fH = height;
102 fZoom = zoom; 99 fZoom = zoom;
103 fBounds.set(0, 0, SkIntToScalar(width * zoom), SkIntToScalar(height * zo om)); 100 fBounds.set(0, 0, SkIntToScalar(width * zoom), SkIntToScalar(height * zo om));
104 fMatrix.setScale(SkIntToScalar(zoom), SkIntToScalar(zoom)); 101 fMatrix.setScale(SkIntToScalar(zoom), SkIntToScalar(zoom));
105 fInverse.setScale(SK_Scalar1 / zoom, SK_Scalar1 / zoom); 102 fInverse.setScale(SK_Scalar1 / zoom, SK_Scalar1 / zoom);
103 // TODO(dominikg): The shader is created with a separate local matrix in createChecker().
104 // I think we need a wrapper here.
106 fShader->setLocalMatrix(fMatrix); 105 fShader->setLocalMatrix(fMatrix);
107 106
108 SkImageInfo info = SkImageInfo::MakeN32Premul(width, height); 107 SkImageInfo info = SkImageInfo::MakeN32Premul(width, height);
109 fMinSurface.reset(SkSurface::NewRaster(info)); 108 fMinSurface.reset(SkSurface::NewRaster(info));
110 info.fWidth *= zoom; 109 info.fWidth *= zoom;
111 info.fHeight *= zoom; 110 info.fHeight *= zoom;
112 fMaxSurface.reset(SkSurface::NewRaster(info)); 111 fMaxSurface.reset(SkSurface::NewRaster(info));
113 } 112 }
114 113
115 void drawBG(SkCanvas*); 114 void drawBG(SkCanvas*);
(...skipping 406 matching lines...) Expand 10 before | Expand all | Expand 10 after
522 521
523 private: 522 private:
524 523
525 typedef SampleView INHERITED; 524 typedef SampleView INHERITED;
526 }; 525 };
527 526
528 ////////////////////////////////////////////////////////////////////////////// 527 //////////////////////////////////////////////////////////////////////////////
529 528
530 static SkView* MyFactory() { return new DrawLineView; } 529 static SkView* MyFactory() { return new DrawLineView; }
531 static SkViewRegister reg(MyFactory); 530 static SkViewRegister reg(MyFactory);
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698