Lines Matching refs:Direction
300 SkPathPriv::FirstDirection direction;
301 if (!SkPathPriv::CheapComputeFirstDirection(*this, &direction)) {
352 if (!check_edge_against_rect(quadPts[0], quadPts[2], rect, direction)) {
355 if (!check_edge_against_rect(quadPts[2], quadPts[4], rect, direction)) {
359 if (!check_edge_against_rect(prevPt, pts[nextPt], rect, direction)) {
368 return check_edge_against_rect(prevPt, firstPt, rect, direction);
425 Determines if path is a rect by keeping track of changes in direction
428 The direction is computed such that:
440 There's more than four changes of direction.
442 The line reverses direction.
455 The direction takes advantage of the corners found since opposite sides
475 bool* isClosed, Direction* direction, SkRect* rect) const {
553 return false; // too many direction changes
605 if (direction) {
606 *direction = directions[0] == ((directions[1] + 1) & 3) ? kCW_Direction : kCCW_Direction;
611 bool SkPath::isRect(SkRect* rect, bool* isClosed, Direction* direction) const {
615 return this->isRectContour(false, &currVerb, &pts, isClosed, direction, rect);
618 bool SkPath::isNestedFillRects(SkRect rects[2], Direction dirs[2]) const {
622 Direction testDirs[2];
952 PointIterator(SkPath::Direction dir, unsigned startIndex)
976 RectPointIterator(const SkRect& rect, SkPath::Direction dir, unsigned startIndex)
988 OvalPointIterator(const SkRect& oval, SkPath::Direction dir, unsigned startIndex)
1003 RRectPointIterator(const SkRRect& rrect, SkPath::Direction dir, unsigned startIndex)
1029 SkPath& SkPath::addRect(const SkRect& rect, Direction dir) {
1034 SkScalar bottom, Direction dir) {
1038 SkPath& SkPath::addRect(const SkRect &rect, Direction dir, unsigned startIndex) {
1163 Direction dir) {
1169 SkPath& SkPath::addRRect(const SkRRect& rrect, Direction dir) {
1174 SkPath& SkPath::addRRect(const SkRRect &rrect, Direction dir, unsigned startIndex) {
1266 Direction dir) {
1278 SkPath& SkPath::addOval(const SkRect& oval, Direction dir) {
1283 SkPath& SkPath::addOval(const SkRect &oval, Direction dir, unsigned startPointIndex) {
1325 SkPath& SkPath::addCircle(SkScalar x, SkScalar y, SkScalar r, Direction dir) {
1407 SkPath::Direction arcSweep, SkScalar x, SkScalar y) {
1522 SkPath::Direction sweep, SkScalar dx, SkScalar dy) {
2355 /** The direction returned is only valid if the path is determined convex */
2482 SK_ABORT("Use of invalid direction change flag");
2621 /** The direction returned is only valid if the path is determined convex */
2769 // allow path to reverse direction twice
2771 // - 1st reversal: direction change formed by line (0,0 1,1), line (1,1 0,0)
2772 // - 2nd reversal: direction change formed by line (1,1 0,0), line (0,0 1,1)
2777 SK_ABORT("Use of invalid direction change flag");
2805 // Check to see if path changes direction more than three times as quick concave test
3126 // SkScalar, since we just want - or + to signal the direction.
3148 // x-direction. We really should continue to walk away from the degeneracy until
3151 // construct the subtract so we get the correct Direction below
3682 bool SkPathPriv::IsSimpleClosedRect(const SkPath& path, SkRect* rect, SkPath::Direction* direction,
3752 *direction = vec03IsVertical ? SkPath::kCW_Direction : SkPath::kCCW_Direction;
3757 *direction = vec03IsVertical ? SkPath::kCCW_Direction : SkPath::kCW_Direction;
3762 *direction = vec03IsVertical ? SkPath::kCCW_Direction : SkPath::kCW_Direction;
3767 *direction = vec03IsVertical ? SkPath::kCW_Direction : SkPath::kCCW_Direction;