Lines Matching refs:circle

49  * The output of this effect is a modulation of the input color and coverage for a circle. It
50 * operates in a space normalized by the circle radius (outer radius in the case of a stroke)
51 * with origin at the circle center. Three vertex attributes are used:
63 * Round caps for stroking are allowed as well. The caps are specified as two circle center points
408 // circle.
478 // Clip the end of the next dash to the end of the circle
491 // Clip the start previous dash to the start of the circle
636 // For filled ellipses we can use a unit circle equation (x^2 + y^2 = 1), and warp
736 * implict equation used is for a unit circle (x^2 + y^2 - 1 = 0) and the edge corrected by
930 // We have two possible cases for geometry for a circle:
932 // In the case of a normal fill, we draw geometry for the circle as an octagon.
958 // Normalized geometry for octagons that circumscribe and lie on a circle:
1012 /** Optional extra params to render a partial arc rather than a full circle. */
1098 // rendered and the outset ensures the box will cover all partially covered by the circle.
1112 // The shader operates in a space where the circle is translated to be centered at the
1113 // origin. Here we compute points on the unit circle at the starting and ending angles.
1152 // However, in both cases we have to be careful about the half-circle.
1196 // We clip to a secant of the original circle.
1327 for (const auto& circle : fCircles) {
1328 SkScalar innerRadius = circle.fInnerRadius;
1329 SkScalar outerRadius = circle.fOuterRadius;
1330 GrVertexColor color(circle.fColor, fWideColor);
1331 const SkRect& bounds = circle.fDevBounds;
1342 if (!circle.fStroked && fClipPlane && fClipPlaneIsect &&
1343 (circle.fClipPlane[0] * circle.fIsectPlane[0] +
1344 circle.fClipPlane[1] * circle.fIsectPlane[1]) < 0.0f) {
1348 // the AA can extend just past the center of the circle.
1349 geoClipPlane.set(circle.fClipPlane[1] - circle.fIsectPlane[1],
1350 circle.fIsectPlane[0] - circle.fClipPlane[0]);
1365 vertices << circle.fClipPlane;
1368 vertices << circle.fIsectPlane;
1371 vertices << circle.fUnionPlane;
1374 vertices << circle.fRoundCapCenters;
1378 if (circle.fStroked) {
1382 vertices << (center + kOctagonInner[i] * circle.fInnerRadius)
1387 vertices << circle.fClipPlane;
1390 vertices << circle.fIsectPlane;
1393 vertices << circle.fUnionPlane;
1396 vertices << circle.fRoundCapCenters;
1403 vertices << circle.fClipPlane;
1406 vertices << circle.fIsectPlane;
1409 vertices << circle.fUnionPlane;
1412 vertices << circle.fRoundCapCenters;
1416 const uint16_t* primIndices = circle_type_to_indices(circle.fStroked);
1417 const int primIndexCount = circle_type_to_index_count(circle.fStroked);
1422 currStartVertex += circle_type_to_vert_count(circle.fStroked);
1555 // Determine the angle where the circle starts in device space and whether its orientation
1586 // rendered and the outset ensures the box will cover all partially covered by the circle.
1699 for (const auto& circle : fCircles) {
1703 auto normInnerRadius = circle.fInnerRadius / circle.fOuterRadius;
1704 const SkRect& bounds = circle.fDevBounds;
1707 circle.fOnAngle, circle.fTotalAngle, circle.fStartAngle, circle.fPhaseAngle
1715 GrVertexColor color(circle.fColor, fWideColor);
1717 // The bounding geometry for the circle is composed of an outer bounding octagon and
1732 << circle.fOuterRadius
1739 vertices << (center + kOctagonInner[i] * circle.fInnerRadius)
1742 << circle.fOuterRadius
2044 // For filled ellipses we map a unit circle in the vertex attributes rather than
3077 // For filled rrects we map a unit circle in the vertex attributes rather than
3232 // The way the effect interpolates the offset-to-ellipse/circle-center attribute only works on
3299 // The way the effect interpolates the offset-to-ellipse/circle-center attribute only works on
3308 // if the corners are circles, use the circle renderer
3452 SkRect circle = GrTest::TestSquare(random);
3453 SkPoint center = {circle.centerX(), circle.centerY()};
3454 SkScalar radius = circle.width() / 2.f;
3490 SkRect circle = GrTest::TestSquare(random);
3491 SkPoint center = {circle.centerX(), circle.centerY()};
3492 SkScalar radius = circle.width() / 2.f;