Lines Matching refs:pts

94 static void adjust_zero_length_line(SkPoint pts[2]) {
95 SkASSERT(pts[0] == pts[1]);
96 pts[1].fX += std::max(1.001f, pts[1].fX) * SK_ScalarNearlyZero;
99 static bool clip_line(SkPoint pts[2], const SkRect& bounds, SkScalar intervalLength,
101 SkVector dxy = pts[1] - pts[0];
109 SkScalar minXY = (&pts[0].fX)[xyOffset];
110 SkScalar maxXY = (&pts[1].fX)[xyOffset];
146 (&pts[0].fX)[xyOffset] = minXY;
147 (&pts[1].fX)[xyOffset] = maxXY;
150 adjust_zero_length_line(pts);
161 SkPoint pts[2];
162 if (srcPath.isLine(pts) && pts[0] == pts[1]) {
163 adjust_zero_length_line(pts);
164 dstPath->moveTo(pts[0]);
165 dstPath->lineTo(pts[1]);
176 SkPoint pts[2];
177 if (srcPath.isLine(pts)) {
178 if (clip_line(pts, bounds, intervalLength, 0)) {
179 dstPath->moveTo(pts[0]);
180 dstPath->lineTo(pts[1]);
191 SkPoint pts[4]; // Rects are all moveTo and lineTo, so we'll only use pts[0] and pts[1].
192 SkAssertResult(SkPath::kMove_Verb == iter.next(pts));
196 while (iter.next(pts) == SkPath::kLine_Verb) {
198 SkVector v = pts[1] - pts[0];
200 if (clip_line(pts, bounds, intervalLength, std::fmod(accum, intervalLength))) {
201 // pts[0] may have just been changed by clip_line().
204 if (!dstPath->getLastPt(&last) || last != pts[0]) {
205 dstPath->moveTo(pts[0]);
207 dstPath->lineTo(pts[1]);
274 SkPoint pts[4];
275 pts[0].set(x0 + fNormal.fX, y0 + fNormal.fY); // moveTo
276 pts[1].set(x1 + fNormal.fX, y1 + fNormal.fY); // lineTo
277 pts[2].set(x1 - fNormal.fX, y1 - fNormal.fY); // lineTo
278 pts[3].set(x0 - fNormal.fX, y0 - fNormal.fY); // lineTo
280 path->addPoly(pts, SK_ARRAY_COUNT(pts), false);