OLD | NEW |
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 "GrAARectRenderer.h" | 8 #include "GrAARectRenderer.h" |
9 #include "GrRefCnt.h" | |
10 #include "GrGpu.h" | 9 #include "GrGpu.h" |
11 #include "gl/GrGLEffect.h" | 10 #include "gl/GrGLEffect.h" |
12 #include "GrTBackendEffectFactory.h" | 11 #include "GrTBackendEffectFactory.h" |
13 #include "SkColorPriv.h" | 12 #include "SkColorPriv.h" |
14 | 13 |
15 SK_DEFINE_INST_COUNT(GrAARectRenderer) | 14 SK_DEFINE_INST_COUNT(GrAARectRenderer) |
16 | 15 |
17 /////////////////////////////////////////////////////////////////////////////// | 16 /////////////////////////////////////////////////////////////////////////////// |
18 class GrGLAlignedRectEffect; | 17 class GrGLAlignedRectEffect; |
19 | 18 |
(...skipping 268 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
288 | 287 |
289 static void set_inset_fan(GrPoint* pts, size_t stride, | 288 static void set_inset_fan(GrPoint* pts, size_t stride, |
290 const SkRect& r, SkScalar dx, SkScalar dy) { | 289 const SkRect& r, SkScalar dx, SkScalar dy) { |
291 pts->setRectFan(r.fLeft + dx, r.fTop + dy, | 290 pts->setRectFan(r.fLeft + dx, r.fTop + dy, |
292 r.fRight - dx, r.fBottom - dy, stride); | 291 r.fRight - dx, r.fBottom - dy, stride); |
293 } | 292 } |
294 | 293 |
295 }; | 294 }; |
296 | 295 |
297 void GrAARectRenderer::reset() { | 296 void GrAARectRenderer::reset() { |
298 GrSafeSetNull(fAAFillRectIndexBuffer); | 297 SkSafeSetNull(fAAFillRectIndexBuffer); |
299 GrSafeSetNull(fAAStrokeRectIndexBuffer); | 298 SkSafeSetNull(fAAStrokeRectIndexBuffer); |
300 } | 299 } |
301 | 300 |
302 static const uint16_t gFillAARectIdx[] = { | 301 static const uint16_t gFillAARectIdx[] = { |
303 0, 1, 5, 5, 4, 0, | 302 0, 1, 5, 5, 4, 0, |
304 1, 2, 6, 6, 5, 1, | 303 1, 2, 6, 6, 5, 1, |
305 2, 3, 7, 7, 6, 2, | 304 2, 3, 7, 7, 6, 2, |
306 3, 0, 4, 4, 7, 3, | 305 3, 0, 4, 4, 7, 3, |
307 4, 5, 6, 6, 7, 4, | 306 4, 5, 6, 6, 7, 4, |
308 }; | 307 }; |
309 | 308 |
(...skipping 503 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
813 // can't call mapRect for devInside since it calls sort | 812 // can't call mapRect for devInside since it calls sort |
814 combinedMatrix.mapPoints((SkPoint*)&devInside, (const SkPoint*)&rects[1], 2)
; | 813 combinedMatrix.mapPoints((SkPoint*)&devInside, (const SkPoint*)&rects[1], 2)
; |
815 | 814 |
816 if (devInside.isEmpty()) { | 815 if (devInside.isEmpty()) { |
817 this->fillAARect(gpu, target, devOutside, SkMatrix::I(), devOutside, use
VertexCoverage); | 816 this->fillAARect(gpu, target, devOutside, SkMatrix::I(), devOutside, use
VertexCoverage); |
818 return; | 817 return; |
819 } | 818 } |
820 | 819 |
821 this->geometryStrokeAARect(gpu, target, devOutside, devInside, useVertexCove
rage); | 820 this->geometryStrokeAARect(gpu, target, devOutside, devInside, useVertexCove
rage); |
822 } | 821 } |
OLD | NEW |