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

Side by Side Diff: include/core/SkPath.h

Issue 832083002: Cleanup isRect variants (Closed) Base URL: https://skia.googlesource.com/skia.git@master
Patch Set: Remove old entry points completely Created 5 years, 11 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
« no previous file with comments | « no previous file | src/core/SkPath.cpp » ('j') | src/core/SkPath.cpp » ('J')
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 1
2 /* 2 /*
3 * Copyright 2006 The Android Open Source Project 3 * Copyright 2006 The Android Open Source Project
4 * 4 *
5 * Use of this source code is governed by a BSD-style license that can be 5 * Use of this source code is governed by a BSD-style license that can be
6 * found in the LICENSE file. 6 * found in the LICENSE file.
7 */ 7 */
8 8
9 9
10 #ifndef SkPath_DEFINED 10 #ifndef SkPath_DEFINED
(...skipping 221 matching lines...) Expand 10 before | Expand all | Expand 10 after
232 } 232 }
233 233
234 /** 234 /**
235 * Returns true if the path specifies a single line (i.e. it contains just 235 * Returns true if the path specifies a single line (i.e. it contains just
236 * a moveTo and a lineTo). If so, and line[] is not null, it sets the 2 236 * a moveTo and a lineTo). If so, and line[] is not null, it sets the 2
237 * points in line[] to the end-points of the line. If the path is not a 237 * points in line[] to the end-points of the line. If the path is not a
238 * line, returns false and ignores line[]. 238 * line, returns false and ignores line[].
239 */ 239 */
240 bool isLine(SkPoint line[2]) const; 240 bool isLine(SkPoint line[2]) const;
241 241
242 /** Returns true if the path specifies a rectangle. If so, and if rect is
243 not null, set rect to the bounds of the path. If the path does not
244 specify a rectangle, return false and ignore rect.
245
246 @param rect If not null, returns the bounds of the path if it specifies
247 a rectangle
248 @return true if the path specifies a rectangle
249 */
250 bool isRect(SkRect* rect) const { return this->isRect(rect, NULL, NULL); }
251
252 /** Return the number of points in the path 242 /** Return the number of points in the path
253 */ 243 */
254 int countPoints() const; 244 int countPoints() const;
255 245
256 /** Return the point at the specified index. If the index is out of range 246 /** Return the point at the specified index. If the index is out of range
257 (i.e. is not 0 <= index < countPoints()) then the returned coordinates 247 (i.e. is not 0 <= index < countPoints()) then the returned coordinates
258 will be (0,0) 248 will be (0,0)
259 */ 249 */
260 SkPoint getPoint(int index) const; 250 SkPoint getPoint(int index) const;
261 251
(...skipping 323 matching lines...) Expand 10 before | Expand all | Expand 10 after
585 /** Returns kFill_PathAsRect or kStroke_PathAsRect if drawing the path (eith er filled or 575 /** Returns kFill_PathAsRect or kStroke_PathAsRect if drawing the path (eith er filled or
586 stroked) will be equivalent to filling/stroking the path's bounding rect . If 576 stroked) will be equivalent to filling/stroking the path's bounding rect . If
587 either is true, and direction is not null, sets the direction of the con tour. If the 577 either is true, and direction is not null, sets the direction of the con tour. If the
588 path is not drawn equivalent to a rect, returns kNone_PathAsRect and ign ores direction. 578 path is not drawn equivalent to a rect, returns kNone_PathAsRect and ign ores direction.
589 579
590 @param direction If not null, set to the contour's direction when it is drawn as a rect 580 @param direction If not null, set to the contour's direction when it is drawn as a rect
591 @return the path's PathAsRect type 581 @return the path's PathAsRect type
592 */ 582 */
593 PathAsRect asRect(Direction* direction = NULL) const; 583 PathAsRect asRect(Direction* direction = NULL) const;
594 584
595 /** Returns true if the path specifies a rectangle. If so, and if isClosed i s
596 not null, set isClosed to true if the path is closed. Also, if returning true
597 and direction is not null, return the rect direction. If the path does n ot
598 specify a rectangle, return false and ignore isClosed and direction.
599
600 @param isClosed If not null, set to true if the path is closed
601 @param direction If not null, set to the rectangle's direction
602 @return true if the path specifies a rectangle
603 */
604 bool isRect(bool* isClosed, Direction* direction) const {
605 return this->isRect(NULL, isClosed, direction);
606 }
607
608 /** 585 /**
609 * Returns true if the path specifies a rectangle. 586 * Returns true if the path specifies a rectangle.
610 * 587 *
611 * If this returns false, then all output parameters are ignored, and left 588 * If this returns false, then all output parameters are ignored, and left
612 * unchanged. If this returns true, then each of the output parameters 589 * unchanged. If this returns true, then each of the output parameters
613 * are checked for NULL. If they are not, they return their value. 590 * are checked for NULL. If they are not, they return their value.
614 * 591 *
615 * @param rect If not null, set to the bounds of the rectangle 592 * @param rect If not null, set to the bounds of the rectangle
reed1 2015/01/05 17:03:20 rect: Note : this bounds may be smaller than the p
616 * @param isClosed If not null, set to true if the path is closed 593 * @param isClosed If not null, set to true if the path is closed
617 * @param direction If not null, set to the rectangle's direction 594 * @param direction If not null, set to the rectangle's direction
618 * @return true if the path specifies a rectangle 595 * @return true if the path specifies a rectangle
619 */ 596 */
620 bool isRect(SkRect* rect, bool* isClosed, Direction* direction) const; 597 bool isRect(SkRect* rect, bool* isClosed = NULL, Direction* direction = NULL ) const;
621 598
622 /** Returns true if the path specifies a pair of nested rectangles. If so, a nd if 599 /** Returns true if the path specifies a pair of nested rectangles. If so, a nd if
623 rect is not null, set rect[0] to the outer rectangle and rect[1] to the inner 600 rect is not null, set rect[0] to the outer rectangle and rect[1] to the inner
624 rectangle. If so, and dirs is not null, set dirs[0] to the direction of 601 rectangle. If so, and dirs is not null, set dirs[0] to the direction of
625 the outer rectangle and dirs[1] to the direction of the inner rectangle. If 602 the outer rectangle and dirs[1] to the direction of the inner rectangle. If
626 the path does not specify a pair of nested rectangles, return 603 the path does not specify a pair of nested rectangles, return
627 false and ignore rect and dirs. 604 false and ignore rect and dirs.
628 605
629 @param rect If not null, returns the path as a pair of nested rectangles 606 @param rect If not null, returns the path as a pair of nested rectangles
630 @param dirs If not null, returns the direction of the rects 607 @param dirs If not null, returns the direction of the rects
(...skipping 445 matching lines...) Expand 10 before | Expand all | Expand 10 after
1076 } 1053 }
1077 1054
1078 friend class SkAutoPathBoundsUpdate; 1055 friend class SkAutoPathBoundsUpdate;
1079 friend class SkAutoDisableOvalCheck; 1056 friend class SkAutoDisableOvalCheck;
1080 friend class SkAutoDisableDirectionCheck; 1057 friend class SkAutoDisableDirectionCheck;
1081 friend class SkBench_AddPathTest; // perf test reversePathTo 1058 friend class SkBench_AddPathTest; // perf test reversePathTo
1082 friend class PathTest_Private; // unit test reversePathTo 1059 friend class PathTest_Private; // unit test reversePathTo
1083 }; 1060 };
1084 1061
1085 #endif 1062 #endif
OLDNEW
« no previous file with comments | « no previous file | src/core/SkPath.cpp » ('j') | src/core/SkPath.cpp » ('J')

Powered by Google App Engine
This is Rietveld 408576698