| OLD | NEW |
| 1 /* | 1 /* |
| 2 * Copyright 2015 Google Inc. | 2 * Copyright 2015 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 "SkAnimTimer.h" | 9 #include "SkAnimTimer.h" |
| 10 #include "SkView.h" | 10 #include "SkView.h" |
| (...skipping 78 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 89 if (fAlpha > 1) { | 89 if (fAlpha > 1) { |
| 90 fAlpha = 1; | 90 fAlpha = 1; |
| 91 fDAlpha = -fDAlpha; | 91 fDAlpha = -fDAlpha; |
| 92 } else if (fAlpha < 0) { | 92 } else if (fAlpha < 0) { |
| 93 fAlpha = 0; | 93 fAlpha = 0; |
| 94 fDAlpha = -fDAlpha; | 94 fDAlpha = -fDAlpha; |
| 95 } | 95 } |
| 96 } | 96 } |
| 97 | 97 |
| 98 SkRSXform asRSXform() const { | 98 SkRSXform asRSXform() const { |
| 99 SkMatrix m; | 99 return SkRSXform::MakeFromRadians(fScale, fRadian, fCenter.x(), fCen
ter.y(), |
| 100 m.setTranslate(-8, -8); | 100 SkScalarHalf(kCellSize), SkScalarH
alf(kCellSize)); |
| 101 m.postScale(fScale, fScale); | |
| 102 m.postRotate(SkRadiansToDegrees(fRadian)); | |
| 103 m.postTranslate(fCenter.fX, fCenter.fY); | |
| 104 | |
| 105 SkRSXform x; | |
| 106 x.fSCos = m.getScaleX(); | |
| 107 x.fSSin = m.getSkewY(); | |
| 108 x.fTx = m.getTranslateX(); | |
| 109 x.fTy = m.getTranslateY(); | |
| 110 return x; | |
| 111 } | 101 } |
| 112 }; | 102 }; |
| 113 | 103 |
| 114 enum { | 104 enum { |
| 115 N = 256, | 105 N = 256, |
| 116 }; | 106 }; |
| 117 | 107 |
| 118 SkAutoTUnref<SkImage> fAtlas; | 108 SkAutoTUnref<SkImage> fAtlas; |
| 119 Rec fRec[N]; | 109 Rec fRec[N]; |
| 120 SkRect fTex[N]; | 110 SkRect fTex[N]; |
| (...skipping 10 matching lines...) Expand all Loading... |
| 131 for (int y = 0; y < kAtlasSize; y += kCellSize) { | 121 for (int y = 0; y < kAtlasSize; y += kCellSize) { |
| 132 for (int x = 0; x < kAtlasSize; x += kCellSize) { | 122 for (int x = 0; x < kAtlasSize; x += kCellSize) { |
| 133 const SkScalar sx = SkIntToScalar(x); | 123 const SkScalar sx = SkIntToScalar(x); |
| 134 const SkScalar sy = SkIntToScalar(y); | 124 const SkScalar sy = SkIntToScalar(y); |
| 135 fTex[i].setXYWH(sx, sy, cell, cell); | 125 fTex[i].setXYWH(sx, sy, cell, cell); |
| 136 | 126 |
| 137 fRec[i].fCenter.set(sx + cell/2, sy + 3*cell/4); | 127 fRec[i].fCenter.set(sx + cell/2, sy + 3*cell/4); |
| 138 fRec[i].fVelocity.fX = rand.nextSScalar1() * kMaxSpeed; | 128 fRec[i].fVelocity.fX = rand.nextSScalar1() * kMaxSpeed; |
| 139 fRec[i].fVelocity.fY = rand.nextSScalar1() * kMaxSpeed; | 129 fRec[i].fVelocity.fY = rand.nextSScalar1() * kMaxSpeed; |
| 140 fRec[i].fScale = 1; | 130 fRec[i].fScale = 1; |
| 141 fRec[i].fDScale = rand.nextSScalar1() / 4; | 131 fRec[i].fDScale = rand.nextSScalar1() / 16; |
| 142 fRec[i].fRadian = 0; | 132 fRec[i].fRadian = 0; |
| 143 fRec[i].fDRadian = rand.nextSScalar1() / 8; | 133 fRec[i].fDRadian = rand.nextSScalar1() / 8; |
| 144 fRec[i].fAlpha = rand.nextUScalar1(); | 134 fRec[i].fAlpha = rand.nextUScalar1(); |
| 145 fRec[i].fDAlpha = rand.nextSScalar1() / 10; | 135 fRec[i].fDAlpha = rand.nextSScalar1() / 10; |
| 146 i += 1; | 136 i += 1; |
| 147 } | 137 } |
| 148 } | 138 } |
| 149 } | 139 } |
| 150 | 140 |
| 151 void toggleUseColors() { | 141 void toggleUseColors() { |
| (...skipping 75 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 227 #endif | 217 #endif |
| 228 | 218 |
| 229 private: | 219 private: |
| 230 typedef SampleView INHERITED; | 220 typedef SampleView INHERITED; |
| 231 }; | 221 }; |
| 232 | 222 |
| 233 ////////////////////////////////////////////////////////////////////////////// | 223 ////////////////////////////////////////////////////////////////////////////// |
| 234 | 224 |
| 235 static SkView* MyFactory() { return new DrawAtlasView; } | 225 static SkView* MyFactory() { return new DrawAtlasView; } |
| 236 static SkViewRegister reg(MyFactory); | 226 static SkViewRegister reg(MyFactory); |
| OLD | NEW |