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

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

Issue 1484373002: Add an SkPath conic conversion utility. (Closed) Base URL: https://chromium.googlesource.com/skia.git@master
Patch Set: Created 5 years 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') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 /* 1 /*
2 * Copyright 2006 The Android Open Source Project 2 * Copyright 2006 The Android Open Source Project
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 #ifndef SkPath_DEFINED 8 #ifndef SkPath_DEFINED
9 #define SkPath_DEFINED 9 #define SkPath_DEFINED
10 10
(...skipping 522 matching lines...) Expand 10 before | Expand all | Expand 10 after
533 */ 533 */
534 static FillType ConvertToNonInverseFillType(FillType fill) { 534 static FillType ConvertToNonInverseFillType(FillType fill) {
535 static_assert(0 == kWinding_FillType, "fill_type_mismatch"); 535 static_assert(0 == kWinding_FillType, "fill_type_mismatch");
536 static_assert(1 == kEvenOdd_FillType, "fill_type_mismatch"); 536 static_assert(1 == kEvenOdd_FillType, "fill_type_mismatch");
537 static_assert(2 == kInverseWinding_FillType, "fill_type_mismatch"); 537 static_assert(2 == kInverseWinding_FillType, "fill_type_mismatch");
538 static_assert(3 == kInverseEvenOdd_FillType, "fill_type_mismatch"); 538 static_assert(3 == kInverseEvenOdd_FillType, "fill_type_mismatch");
539 return (FillType)(fill & 1); 539 return (FillType)(fill & 1);
540 } 540 }
541 541
542 /** 542 /**
543 * Chop a conic into N quads, stored continguously in pts[], where
544 * N = 1 << pow2. The amount of storage needed is (1 + 2 * N)
545 */
546 static int ConvertConicToQuads(const SkPoint& p0, const SkPoint& p1, const S kPoint& p2,
547 SkScalar w, SkPoint pts[], int pow2);
548
549 /**
543 * Returns true if the path specifies a rectangle. 550 * Returns true if the path specifies a rectangle.
544 * 551 *
545 * If this returns false, then all output parameters are ignored, and left 552 * If this returns false, then all output parameters are ignored, and left
546 * unchanged. If this returns true, then each of the output parameters 553 * unchanged. If this returns true, then each of the output parameters
547 * are checked for NULL. If they are not, they return their value. 554 * are checked for NULL. If they are not, they return their value.
548 * 555 *
549 * @param rect If not null, set to the bounds of the rectangle. 556 * @param rect If not null, set to the bounds of the rectangle.
550 * Note : this bounds may be smaller than the path's bounds, si nce it is just 557 * Note : this bounds may be smaller than the path's bounds, si nce it is just
551 * the bounds of the "drawable" parts of the path. e.g. a trail ing MoveTo would 558 * the bounds of the "drawable" parts of the path. e.g. a trail ing MoveTo would
552 * be ignored in this rect, but not by the path's bounds 559 * be ignored in this rect, but not by the path's bounds
(...skipping 527 matching lines...) Expand 10 before | Expand all | Expand 10 after
1080 1087
1081 friend class SkAutoPathBoundsUpdate; 1088 friend class SkAutoPathBoundsUpdate;
1082 friend class SkAutoDisableOvalCheck; 1089 friend class SkAutoDisableOvalCheck;
1083 friend class SkAutoDisableDirectionCheck; 1090 friend class SkAutoDisableDirectionCheck;
1084 friend class SkBench_AddPathTest; // perf test reversePathTo 1091 friend class SkBench_AddPathTest; // perf test reversePathTo
1085 friend class PathTest_Private; // unit test reversePathTo 1092 friend class PathTest_Private; // unit test reversePathTo
1086 friend class ForceIsRRect_Private; // unit test isRRect 1093 friend class ForceIsRRect_Private; // unit test isRRect
1087 }; 1094 };
1088 1095
1089 #endif 1096 #endif
OLDNEW
« no previous file with comments | « no previous file | src/core/SkPath.cpp » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698