reed
6e43465039
simplify RawIter - don't return a pt in kClose
...
BUG=skia:
TBR=
Review URL: https://codereview.chromium.org/1156893003
2015-05-27 19:53:25 -07:00
reed
b56158118c
simplify RawIter
...
BUG=skia:
Review URL: https://codereview.chromium.org/1137783006
2015-05-13 07:55:48 -07:00
caryclark
aec2510125
minor fixes to cubics code and overall alignment of how bounds and tops are computed for all curve types
...
All but 17 extended tests work.
A helper function is privately added to SkPath.h to permit a test to modify a given point in a path.
BUG=skia:3588
Review URL: https://codereview.chromium.org/1107353004
2015-04-29 08:28:30 -07:00
caryclark
95bc5f3495
change isNestedRect to isNestedFillRect
...
R=reed@google.com , bsalomon@google.com
Let isNested(Fill)Rect return true if drawn path describes filled
rectangles.
Review URL: https://codereview.chromium.org/1073473002
2015-04-08 08:34:15 -07:00
caryclark
63c684a8a6
fuzzer fixes
...
Fix path bugs exposed by the path fuzzer.
Changes to existing gm and samplecode files defer their calls to construct
SkPath objects until the first draw instead of at test initialization.
Add an experimental call to SkPath to validate the internal SkPathRef.
Fix SkPath::addPoly to set the last moveto after adding a close verb.
Fix stroke to handle failures when computing the unit normal.
Add a unit test for the unit normal failure.
R=reed@google.com
Review URL: https://codereview.chromium.org/953383002
2015-02-25 09:04:04 -08:00
reed
9e779d4951
add gm for path-arcs, and catch degenerate arc in conic-case
...
BUG=skia:3428
Review URL: https://codereview.chromium.org/931183002
2015-02-17 11:43:14 -08:00
djsollen
523cda3943
Remove android specific srcPath from SkPath
...
Review URL: https://codereview.chromium.org/926693002
2015-02-17 08:06:33 -08:00
djsollen
90b5c0ced0
Expose SkPathRef::unique through SkPath.
...
This allows for the removal of SkPath::mSourcePath on Android
as they now have a better indicator of whether or not the path
can be used again via the Java API.
Review URL: https://codereview.chromium.org/913413004
2015-02-12 12:08:40 -08:00
reed
c778904a5b
share code between arcTo and addArc, update dox
...
BUG=skia:
Review URL: https://codereview.chromium.org/863123005
2015-01-29 12:59:11 -08:00
mtklein
6f07665768
Simplify SkInstCnt
...
This code requires fewer macros to use it (just one), has less code in macro
definitions, and has simpler synchronization code (just atomic ints, no SkOnce,
no SkMutex, etc.)
A minor downside, we lose indentation and reverse-ordering in the final report:
Leaked SkRefCntBase: 7
Leaked SkFontMgr: 1
Leaked SkWeakRefCnt: 1
Leaked SkTypeface: 1
Leaked SkFlattenable: 3
Leaked SkXfermode: 3
Leaked SkPathRef: 1
Leaked SkPixelRef: 1
Leaked SkMallocPixelRef: 1
becomes
Leaked SkXfermode: 3
Leaked SkMallocPixelRef: 1
Leaked SkPixelRef: 1
Leaked SkPathRef: 1
Leaked SkFlattenable: 3
Leaked SkTypeface: 1
Leaked SkWeakRefCnt: 1
Leaked SkFontMgr: 1
Leaked SkRefCntBase: 7
This is motivated by wanting to land https://codereview.chromium.org/806473006/ ,
which makes sure all static use of SkOnce are in global scope. The current
implementation of SkInstCnt uses them in function scope, which isn't safe.
BUG=skia:
No public API changes.
TBR=reed@google.com
Review URL: https://codereview.chromium.org/841263004
2015-01-13 08:22:44 -08:00
robertphillips
2b6ab61e22
Remove SkPath::asRect
...
AFAICT the asRect entry point is not needed.
Greg: GPU
Reed: API
Cary: Path
Review URL: https://codereview.chromium.org/833193002
2015-01-05 12:22:14 -08:00
robertphillips
91b0a35873
Cleanup isRect variants
...
Review URL: https://codereview.chromium.org/832083002
2015-01-05 10:13:46 -08:00
robertphillips
4f662e62cd
Update stroke path to use rect returned from isRect (to fix trailing moveTo bug)
...
This basically recreates what was done in:
https://codereview.chromium.org/16950021/ (add rect-output parameter to isRect, allowing us to return the correct bounds even if a rectagular path has a trailing moveTo) with the addition of GM representation
BUG=skia:247770
Review URL: https://codereview.chromium.org/834503002
2014-12-29 14:06:51 -08:00
jvanverth
b3eb687f8a
Set temporary paths volatile so we don't cache them.
...
Any path that is generated frame-to-frame should not be rendered by using the
DistanceFieldPathRenderer, because generating the initial distance field,
uploading it and rendering it takes longer than the SoftwarePathRenderer.
BUG=skia:2935
Review URL: https://codereview.chromium.org/677463002
2014-10-24 07:12:51 -07:00
caryclark
e956259c5a
add dumpHex() option to SkPath
...
This provides exact precision
to help debugging when the float
representation of a SkScalar may
introduce error.
R=reed@google.com
Author: caryclark@google.com
Review URL: https://codereview.chromium.org/571973003
2014-09-15 09:26:09 -07:00
caryclark
66a5d8bf13
add path dump test
...
Add a unit test for SkPath::dump(). The unit test exposed a minor
bug (inconsistent CRs) and an unused parameter (title).
R=bsalomon@google.com
TBR=bsalomon
BUG=skia:1836
Author: caryclark@google.com
Review URL: https://codereview.chromium.org/351833003
2014-06-24 08:30:18 -07:00
commit-bot@chromium.org
5e1a7f2cc6
Revert of r13379 (Move fLastMoveToIndex from SkPath to SkPathRef - https://codereview.chromium.org/146913002/ ) due to image quality regression in Chromium. See crbug.com/343123 (Regression - UI issue observed for any "Notification infobars" in Chrome browser)
...
R=bsalomon@google.com
TBR=bsalomon@google.com
Author: robertphillips@google.com
Review URL: https://codereview.chromium.org/137863006
git-svn-id: http://skia.googlecode.com/svn/trunk@13421 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-02-12 17:44:30 +00:00
skia.committer@gmail.com
877c44956d
Sanitizing source files in Housekeeper-Nightly
...
git-svn-id: http://skia.googlecode.com/svn/trunk@13418 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-02-12 03:02:04 +00:00
commit-bot@chromium.org
14747e58f8
Adding new 'extend' mode to SkPath::addPath
...
BUG=261727
R=reed@google.com , caryclark@google.com , schenney@chromium.org , robertphillips@google.com
Author: junov@chromium.org
Review URL: https://codereview.chromium.org/151353006
git-svn-id: http://skia.googlecode.com/svn/trunk@13415 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-02-11 21:16:29 +00:00
commit-bot@chromium.org
7e90e8dbb9
fix minor error between kStroke_PathAsRect and kFill_PathAsRect in SkPath::asRect
...
R=caryclark@google.com , reed@google.com
Author: yunchao.he@intel.com
Review URL: https://codereview.chromium.org/138703008
git-svn-id: http://skia.googlecode.com/svn/trunk@13390 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-02-11 01:38:30 +00:00
robertphillips@google.com
f66cf72c68
Move fLastMoveToIndex from SkPath to SkPathRef
...
https://codereview.chromium.org/146913002/
git-svn-id: http://skia.googlecode.com/svn/trunk@13379 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-02-10 13:51:32 +00:00
commit-bot@chromium.org
c2abd54eda
add alternative to isRect named asRect
...
This defines yunchao's proposed interface in terms of
an existing implementation.
BUG=skia:
R=reed@google.com , yunchao.he@intel.com
Author: caryclark@google.com
Review URL: https://codereview.chromium.org/140953003
git-svn-id: http://skia.googlecode.com/svn/trunk@13183 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-01-25 16:54:31 +00:00
commit-bot@chromium.org
fed2ab6483
No deduping dictionaries for matrices and regions.
...
There's little benefit to deduping matrices and regions: they're infrequently
used, and doubly infrequently reused. Their use-weighted byte cost is tiny.
There is some downside to deduping matrices and regions. Even when they're not
used, we prepare dictionaries for deduping them for every picture. Each of
these dictionaries costs 160 bytes, so two unused dictionaries make a big chunk
of the ~1100 bytes it takes to allocate an SkPictureRecord. (~330 come from
parent class SkCanvas, 768 from SkPictureRecord itself, here reduced to 448).
One side benefit of not deduping these guys is that the change weighs -140 lines of code.
It may go without saying, but this breaks the picture format.
Testing: out/Debug/tests && out/Debug/dm (which runs all picture modes by default)
BUG=skia:1850
R=reed@google.com , bensong@google.com , robertphillips@google.com
Author: mtklein@google.com
Review URL: https://codereview.chromium.org/143883006
git-svn-id: http://skia.googlecode.com/svn/trunk@13149 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-01-23 15:16:05 +00:00
robertphillips@google.com
0efb21bd1c
Improved SkPathRef interface security
...
https://codereview.chromium.org/115323004/
git-svn-id: http://skia.googlecode.com/svn/trunk@12676 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-12-13 19:36:25 +00:00
robertphillips@google.com
6b8dbb668f
Move segment mask from SkPath to SkPathRef
...
https://codereview.chromium.org/105083003/
git-svn-id: http://skia.googlecode.com/svn/trunk@12660 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-12-12 23:03:51 +00:00
robertphillips@google.com
11e055518a
Code cleanup following recapture of skps
...
https://codereview.chromium.org/88233003/
git-svn-id: http://skia.googlecode.com/svn/trunk@12472 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-12-03 19:46:58 +00:00
robertphillips@google.com
466310dbd3
Move fIsOval from SkPath to SkPathRef
...
https://codereview.chromium.org/89123002/
git-svn-id: http://skia.googlecode.com/svn/trunk@12463 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-12-03 16:43:54 +00:00
robertphillips@google.com
ca316f576e
Revert of r12450 (Move fIsOval from SkPath to SkPathRef)
...
git-svn-id: http://skia.googlecode.com/svn/trunk@12452 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-12-03 00:23:39 +00:00
robertphillips@google.com
31f0ffc9c3
Move fIsOval from SkPath to SkPathRef
...
https://codereview.chromium.org/89123002/
git-svn-id: http://skia.googlecode.com/svn/trunk@12450 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-12-02 23:55:11 +00:00
commit-bot@chromium.org
a1a097ee81
increase coverage of SkPath.cpp, remove unused code
...
Using Mike Klein's excellent coverage tool, increase the
unit testing of SkPath.cpp from 70% to 95%.
Along the way, determined that these functions were not
maintained or used:
SkPath::pathTo
SkPath::contains
as well as a large block of SkPath::cheapGetDirection().
Changed SkPath::validate() to permit infinities in
the path data points.
Fixed errors in preserving direction.
Fixed error setting direction when convexity is unknown.
Added missing conic to moveTo only detector.
BUG=
R=bsalomon@google.com , reed@google.com
Author: caryclark@google.com
Review URL: https://codereview.chromium.org/65493004
git-svn-id: http://skia.googlecode.com/svn/trunk@12291 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-11-14 16:53:22 +00:00
commit-bot@chromium.org
4faa869cda
Checking structure sizes before reading them from memory to avoid overflowing the buffer's stream.
...
BUG=
R=reed@google.com , mtklein@google.com , senorblanco@chromium.org
Committed: https://code.google.com/p/skia/source/detail?r=12114
Committed: https://code.google.com/p/skia/source/detail?r=12119
Author: sugoi@chromium.org
Review URL: https://codereview.chromium.org/41253002
git-svn-id: http://skia.googlecode.com/svn/trunk@12130 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-11-05 15:46:56 +00:00
reed@google.com
12a23866fe
Revert "Checking structure sizes before reading them from memory to avoid overflowing the buffer's stream."
...
This reverts commit 6bc22e8ef1ea70a1b58409aa21254358c50f149a.
git-svn-id: http://skia.googlecode.com/svn/trunk@12124 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-11-04 21:35:55 +00:00
sugoi@google.com
b48a59ae81
Checking structure sizes before reading them from memory to avoid overflowing the buffer's stream.
...
BUG=
R=reed@google.com
Committed: https://code.google.com/p/skia/source/detail?r=12114
Review URL: https://codereview.chromium.org/41253002
git-svn-id: http://skia.googlecode.com/svn/trunk@12119 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-11-04 20:28:23 +00:00
epoger@google.com
eb221268ab
Revert r12114 due to https://code.google.com/p/skia/issues/detail?id=1794 ('Assertion failures on various buildbots as of r12114')
...
git-svn-id: http://skia.googlecode.com/svn/trunk@12115 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-11-04 18:06:12 +00:00
sugoi@google.com
305f78e8c1
Checking structure sizes before reading them from memory to avoid overflowing the buffer's stream.
...
BUG=
R=reed@google.com
Review URL: https://codereview.chromium.org/41253002
git-svn-id: http://skia.googlecode.com/svn/trunk@12114 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-11-04 16:18:15 +00:00
reed@google.com
4469938e92
Revert "Revert "add SK_ATTR_DEPRECATED -- will need to disable for chrome, since it triggers a warning""
...
This reverts commit 1e787c38fa71f2a21fd728f1b1d620b9b09b0d3d.
BUG=
Review URL: https://codereview.chromium.org/54603004
git-svn-id: http://skia.googlecode.com/svn/trunk@12057 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-10-31 17:28:30 +00:00
reed@google.com
6fcbfcead5
Revert "add SK_ATTR_DEPRECATED -- will need to disable for chrome, since it triggers a warning"
...
This reverts commit 1d22c4aaf9d8f053f25194a1ed74b137bfb19497.
git-svn-id: http://skia.googlecode.com/svn/trunk@12056 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-10-31 16:31:11 +00:00
reed@google.com
081560e3ab
add SK_ATTR_DEPRECATED -- will need to disable for chrome, since it triggers a warning
...
BUG=
R=robertphillips@google.com , senorblanco@chromium.org , vandebo@chromium.org
Review URL: https://codereview.chromium.org/51033004
git-svn-id: http://skia.googlecode.com/svn/trunk@12055 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-10-31 16:24:08 +00:00
skia.committer@gmail.com
7ed98df9ba
Sanitizing source files in Housekeeper-Nightly
...
git-svn-id: http://skia.googlecode.com/svn/trunk@12043 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-10-31 07:01:53 +00:00
commit-bot@chromium.org
1ab9f737f0
Use SkPathRef gen id for SkPath::getGenerationID
...
R=mtklein@google.com , robertphillips@google.com
Author: bsalomon@google.com
Review URL: https://codereview.chromium.org/49693002
git-svn-id: http://skia.googlecode.com/svn/trunk@12029 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-10-30 18:57:55 +00:00
robertphillips@google.com
7101abe5b3
Reverting r12010 (Use SkPathRef gen id for SkPath::getGenerationID https://codereview.chromium.org/49693002 ) due to test failures in PathTest on Android
...
git-svn-id: http://skia.googlecode.com/svn/trunk@12012 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-10-29 22:45:37 +00:00
commit-bot@chromium.org
4cc7518d9b
Use SkPathRef gen id for SkPath::getGenerationID
...
R=mtklein@google.com
Author: bsalomon@google.com
Review URL: https://codereview.chromium.org/49693002
git-svn-id: http://skia.googlecode.com/svn/trunk@12010 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-10-29 21:34:55 +00:00
robertphillips@google.com
ca0c8389e2
Move bound and isFinite into pathref
...
https://codereview.chromium.org/24350006/
git-svn-id: http://skia.googlecode.com/svn/trunk@11467 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-09-26 12:18:23 +00:00
mtklein@google.com
cb8b0eeacf
Update how SkPath handles fGenerationID and fSourcePath, and add tests to cover.
...
BUG=
R=bungeman@google.com , reed@google.com
Review URL: https://codereview.chromium.org/22911002
git-svn-id: http://skia.googlecode.com/svn/trunk@10756 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-08-15 21:14:51 +00:00
mtklein@google.com
9c9d4a7002
Restore SkPath(const SkPath&) to copy the generation ID on Android.
...
BUG=
R=bsalomon@google.com , bungeman@google.com , reed@google.com
Review URL: https://codereview.chromium.org/22471002
git-svn-id: http://skia.googlecode.com/svn/trunk@10622 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-08-07 19:17:53 +00:00
commit-bot@chromium.org
f48e475528
Remove SK_DEBUG_PATH_REF
...
R=bungeman@google.com
Author: bsalomon@google.com
Review URL: https://chromiumcodereview.appspot.com/18029006
git-svn-id: http://skia.googlecode.com/svn/trunk@9795 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-06-27 18:39:39 +00:00
bungeman@google.com
dd68f4533b
Fix PathRefDebugRef (SK_DEBUG_PATH_REF) case for SkPath copy constructor.
...
Review URL: https://codereview.chromium.org/17902003
git-svn-id: http://skia.googlecode.com/svn/trunk@9768 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-06-26 15:53:29 +00:00
robertphillips@google.com
8fd160350c
Revert r9724 (add rect-output parameter to isRect) to allow the DEPS roll
...
git-svn-id: http://skia.googlecode.com/svn/trunk@9750 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-06-25 15:39:58 +00:00
skia.committer@gmail.com
020b25becb
Sanitizing source files in Housekeeper-Nightly
...
git-svn-id: http://skia.googlecode.com/svn/trunk@9738 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-06-22 07:00:58 +00:00
reed@google.com
da2b21fa9b
add rect-output parameter to isRect, allowing us to return the correct bounds even if a rectagular path has a trailing moveTo
...
https://code.google.com/p/chromium/issues/detail?id=247770
R=caryclark@google.com
Review URL: https://codereview.chromium.org/16950021
git-svn-id: http://skia.googlecode.com/svn/trunk@9724 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-06-21 17:32:32 +00:00
bungeman@google.com
28eadc9e4d
Fix macro for r9718.
...
git-svn-id: http://skia.googlecode.com/svn/trunk@9720 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-06-21 15:28:54 +00:00
bungeman@google.com
a5809a3e4c
SkPath::rewind needs to have same reset as SkPath::reset.
...
R=caryclark@google.com , reed@google.com
Review URL: https://codereview.chromium.org/17432003
git-svn-id: http://skia.googlecode.com/svn/trunk@9718 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-06-21 15:13:34 +00:00
skia.committer@gmail.com
26da7f00ae
Sanitizing source files in Housekeeper-Nightly
...
git-svn-id: http://skia.googlecode.com/svn/trunk@9387 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-06-01 07:01:39 +00:00
reed@google.com
277c3f8765
bump picture version since SkPath has changed (conics)
...
enable conics in SkPath
git-svn-id: http://skia.googlecode.com/svn/trunk@9370 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-05-31 15:17:50 +00:00
reed@google.com
fa2f2a48f6
Revert "add asserts to point<-->verb helpers"
...
This reverts commit b4775ac7b55802e87231768f002e4b42f233b0aa.
git-svn-id: http://skia.googlecode.com/svn/trunk@9347 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-05-30 15:29:48 +00:00
reed@google.com
7950a9eba7
add asserts to point<-->verb helpers
...
patch from issue 16153005
BUG=
Review URL: https://codereview.chromium.org/16195004
git-svn-id: http://skia.googlecode.com/svn/trunk@9344 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-05-30 14:57:55 +00:00
skia.committer@gmail.com
845220b817
Sanitizing source files in Housekeeper-Nightly
...
git-svn-id: http://skia.googlecode.com/svn/trunk@9189 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-05-20 11:51:35 +00:00
robertphillips@google.com
83d1a68141
Add special handling of rectori case for gpu
...
https://codereview.chromium.org/15080010/
git-svn-id: http://skia.googlecode.com/svn/trunk@9175 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-05-17 12:50:27 +00:00
robertphillips@google.com
4e18c7a9bb
Add RRect GM
...
https://codereview.appspot.com/6945063/
git-svn-id: http://skia.googlecode.com/svn/trunk@6866 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-12-17 21:48:19 +00:00
sugoi@google.com
5f74cf8c49
Follow up on the previous patch :
...
- Moved the SkStrokeRec class in its own file
- Replaced SkStroke by SkStrokeRec in Ganesh
- Moved path stroking to the Ganesh level in some cases (everytime it isn't required to do it directly in SkGpuDevice). PathEffect and MaskFilter still require path stroking at the SkGpuDevice for now.
- Renamed static functions in SkPath with proper names
* No functionality shold have changed with this patch. This is a step towards enabling Ganesh Path Renderers to decide whether or not to stroke the path rather than always receiving the stroked path as an input argument.
BUG=chromium:135111
TEST=Try path rendering tests from the gm
Review URL: https://codereview.appspot.com/6946072
git-svn-id: http://skia.googlecode.com/svn/trunk@6861 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-12-17 21:16:45 +00:00
reed@google.com
4ed0fb7684
revert 6766, thereby re-landing 6762-6763 now that the bots are ready
...
git-svn-id: http://skia.googlecode.com/svn/trunk@6770 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-12-12 20:48:18 +00:00
reed@google.com
25c1408c3d
revert 6762-6763, since those require new skps to be generated, and we can't
...
do that immediately right now... will re-submit when we can.
git-svn-id: http://skia.googlecode.com/svn/trunk@6766 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-12-12 19:15:31 +00:00
reed@google.com
68d61ed83e
make RRect and Oval first-class drawing primitives in SkCanvas.
...
add RRect as a first-class clip primitive.
Review URL: https://codereview.appspot.com/6923058
git-svn-id: http://skia.googlecode.com/svn/trunk@6762 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-12-12 19:02:53 +00:00
sugoi@google.com
12b4e27ae1
As part of preliminary groundwork for a chromium fix, this changelist is deprecating GrPathFill so that SkPath::FillType is used everywhere in order to remove some code duplication between Skia and Ganesh.
...
BUG=chromium:135111
TEST=Try path rendering tests from the gm
Review URL: https://codereview.appspot.com/6875058
git-svn-id: http://skia.googlecode.com/svn/trunk@6693 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-12-06 20:13:11 +00:00
reed@google.com
a8a3b3d9a0
check for bad enum use when adding contours
...
Review URL: https://codereview.appspot.com/6849103
git-svn-id: http://skia.googlecode.com/svn/trunk@6547 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-11-26 18:16:27 +00:00
caryclark@google.com
f68154a3cf
Add isRect variant that returns path closure and direction.
...
Add path test to verify that when isRect() returns false,
output parameters are unchanged.
Review URL: https://codereview.appspot.com/6855074
git-svn-id: http://skia.googlecode.com/svn/trunk@6524 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-11-21 15:18:06 +00:00
skia.committer@gmail.com
3458716b52
Sanitizing source files in Skia_Periodic_House_Keeping
...
git-svn-id: http://skia.googlecode.com/svn/trunk@6500 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-11-20 02:01:23 +00:00
caryclark@google.com
56f233ab54
add two nested rect detector to path
...
Tease apart existing one rect path detector so
that a new variant can detect two nested rects as well.
Add tests to verify that both one and two rect
detectors both work and return the correct results.
Suppress other warnings in PathTest.
Review URL: https://codereview.appspot.com/6850059
git-svn-id: http://skia.googlecode.com/svn/trunk@6475 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-11-19 13:06:06 +00:00
bsalomon@google.com
9bee33afbe
Add a conservativelyContainsRect function to SkPath.
...
Review URL: https://codereview.appspot.com/6852044
git-svn-id: http://skia.googlecode.com/svn/trunk@6411 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-11-13 21:51:38 +00:00
bsalomon@google.com
30c174b9ce
Make SkPath cache the result of cheapComputeDirection.
...
Review URL: https://codereview.appspot.com/6810111
git-svn-id: http://skia.googlecode.com/svn/trunk@6394 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-11-13 14:36:42 +00:00
bsalomon@google.com
7823d9a07f
Disable SK_DEBUG_PATH_REF in debug builds.
...
R=reed@google.com
Review URL: https://codereview.appspot.com/6602056
git-svn-id: http://skia.googlecode.com/svn/trunk@5810 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-10-04 17:55:30 +00:00
skia.committer@gmail.com
7cc7f49479
Sanitizing source files in Skia_Periodic_House_Keeping
...
git-svn-id: http://skia.googlecode.com/svn/trunk@5798 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-10-04 02:01:34 +00:00
bsalomon@google.com
ae09f2dc3f
Adds extra debugging to SkPathRef that can optionally be turned on in a release build.
...
This is pretty hacky but hopefully will be quite short-lived.
Review URL: https://codereview.appspot.com/6584074
git-svn-id: http://skia.googlecode.com/svn/trunk@5793 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-10-03 19:57:01 +00:00
bsalomon@google.com
1dfe88e00a
Revert r5557 (which itself was a revert of r5433). Relands SkPathRef. Will follow with change for extra debug checks to attempt to ferret out http://www.crbug.com/148637 .
...
git-svn-id: http://skia.googlecode.com/svn/trunk@5783 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-10-03 13:46:20 +00:00
bsalomon@google.com
6c5418e6c2
Temporarily revert r5433 due to http://www.crbug.com/148637 until after M23 branch.
...
git-svn-id: http://skia.googlecode.com/svn/trunk@5557 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-09-14 20:30:37 +00:00
bsalomon@google.com
69aca79b5c
SkPathRef: one allocation for pts+verbs, path GenID, copy-on-write
...
Review URL: https://codereview.appspot.com/6488063/
git-svn-id: http://skia.googlecode.com/svn/trunk@5433 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-09-07 15:35:06 +00:00
bsalomon@google.com
5e72845024
Add SK_API to path == decl.
...
Over-the-shoulder review from robertphillips@
git-svn-id: http://skia.googlecode.com/svn/trunk@5426 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-09-07 13:32:37 +00:00
rmistry@google.com
fbfcd56021
Result of running tools/sanitize_source_files.py (which was added in https://codereview.appspot.com/6465078/ )
...
This CL is part I of IV (I broke down the 1280 files into 4 CLs).
Review URL: https://codereview.appspot.com/6485054
git-svn-id: http://skia.googlecode.com/svn/trunk@5262 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-08-23 18:09:54 +00:00
bsalomon@google.com
607d08b7db
Set LF property on a bunch of files.
...
Review URL: http://codereview.appspot.com/6461094/
git-svn-id: http://skia.googlecode.com/svn/trunk@5168 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-08-20 13:55:09 +00:00
robertphillips@google.com
01ec2eb42e
Added Serialization of SkPath's bound
...
http://codereview.appspot.com/6458143/
git-svn-id: http://skia.googlecode.com/svn/trunk@5143 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-08-17 10:58:49 +00:00
bsalomon@google.com
65a87cc13d
Add inst counting to bench and count SkPaths
...
Review URL: http://codereview.appspot.com/6450129/
git-svn-id: http://skia.googlecode.com/svn/trunk@5076 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-08-14 13:15:44 +00:00
bsalomon@google.com
30e6d2c205
Adds a bunch of benchmarks around creating, transforming, testing path equality,
...
and concatting paths. Also allows benchs to do setup / tear down steps outside
of the cons/destructor via new SkBenchmark virtuals.
Review URL: http://codereview.appspot.com/6454137/
git-svn-id: http://skia.googlecode.com/svn/trunk@5054 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-08-13 14:03:31 +00:00
robertphillips@google.com
fc91dc7004
Windows compiler complaint cleanup
...
http://codereview.appspot.com/6441055/
git-svn-id: http://skia.googlecode.com/svn/trunk@4796 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-07-26 21:18:31 +00:00
reed@google.com
0bb18bb264
explicitly track if a path is finite or not
...
we need this (it appears) so we can definitively reject non-finite paths
in canvas, before passing them down into the guts.
Review URL: https://codereview.appspot.com/6453047
git-svn-id: http://skia.googlecode.com/svn/trunk@4784 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-07-26 15:20:36 +00:00
mike@reedtribe.org
bad1b2ff1d
add SkPath::contains(x, y)
...
git-svn-id: http://skia.googlecode.com/svn/trunk@4526 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-07-11 01:51:33 +00:00
djsollen@google.com
94e75ee46a
Rename the existing flatten(void*) methods.
...
This change avoids naminc confusion with the SkFlattenable flatten methods and
also changes SkPath to use the void* model instead of taking a SkReader32.
Review URL: https://codereview.appspot.com/6299062
git-svn-id: http://skia.googlecode.com/svn/trunk@4215 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-06-08 18:30:46 +00:00
bsalomon@google.com
df9d656c35
Add SkPath::getVerbs/countVerbs
...
Review URL: http://codereview.appspot.com/6306053/
git-svn-id: http://skia.googlecode.com/svn/trunk@4209 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-06-07 21:43:15 +00:00
bsalomon@google.com
f6d3c5aa5f
Make SkPath::RawIter require a non-NULL pts pointer.
...
Review URL: http://codereview.appspot.com/6301060/
git-svn-id: http://skia.googlecode.com/svn/trunk@4206 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-06-07 17:47:33 +00:00
reed@google.com
744fabad47
addPoly() entry-point, to quickly add MoveTo+N*LineTo (useful in dashing)
...
Review URL: https://codereview.appspot.com/6256063
git-svn-id: http://skia.googlecode.com/svn/trunk@4061 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-05-29 19:54:52 +00:00
reed@google.com
4a3b714d73
Iter::next takes a bool (defaults to true for now) if we want to consume degenerates.
...
path-filling and stroking pass false, as they already are written to handle
small segments (and it makes next() run 2x faster if you pass false).
Review URL: https://codereview.appspot.com/6214049
git-svn-id: http://skia.googlecode.com/svn/trunk@3974 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-05-16 17:16:46 +00:00
reed@google.com
9e25dbf589
remove null-check in SKPath::Iter::next() -- not needed, and slows us down a little
...
git-svn-id: http://skia.googlecode.com/svn/trunk@3944 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-05-15 17:05:38 +00:00
reed@google.com
7e6c4d1601
add SkPath::isLine(), similar to isRect()
...
git-svn-id: http://skia.googlecode.com/svn/trunk@3892 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-05-10 14:05:43 +00:00
bsalomon@google.com
6aa2965ca8
Track oval in SkPath
...
Committed on behalf of Guanqun.Lu@gmail.com
Review URL:http://codereview.appspot.com/6012047/
git-svn-id: http://skia.googlecode.com/svn/trunk@3716 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-04-18 13:29:52 +00:00
bsalomon@google.com
f3488ebaac
Revert r3705 for fixed pt failures.
...
git-svn-id: http://skia.googlecode.com/svn/trunk@3706 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-04-17 15:38:20 +00:00
bsalomon@google.com
c047d414a4
track oval in SkPath
...
Committed on behalf of Guanqun.Lu@gmail.com
Review URL: http://codereview.appspot.com/6012047/
git-svn-id: http://skia.googlecode.com/svn/trunk@3705 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-04-17 15:22:06 +00:00
epoger@google.com
94fa43c625
Fix SkPathStroker::lineTo() for line with length SK_ScalarNearlyZero
...
Review URL: https://codereview.appspot.com/5992077
git-svn-id: http://skia.googlecode.com/svn/trunk@3650 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-04-11 17:51:01 +00:00
djsollen@google.com
e63793a2c8
Upstream changes from Android repository.
...
Review URL: https://codereview.appspot.com/5752055
git-svn-id: http://skia.googlecode.com/svn/trunk@3449 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-03-21 15:39:03 +00:00
schenney@chromium.org
a6d04d90e2
Fixing the behavior of SkPathMeasure to reflect changes in SkPath::Iter.
...
This implementation modifies SkPath::Iter extensively to avoid copying
the points when used to measure path length.
BUG=446
TEST=tests/PathMeasureTest.cpp
Review URL: https://codereview.appspot.com/5533074
git-svn-id: http://skia.googlecode.com/svn/trunk@3062 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-01-18 18:02:10 +00:00
reed@google.com
d335d1d784
automatically inject a moveTo if we see a close followed by a line/quad/cubic
...
git-svn-id: http://skia.googlecode.com/svn/trunk@3027 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-01-12 18:17:11 +00:00
reed@google.com
69a9943b67
add SkPath::cheapComputeDirection() plus unittests
...
git-svn-id: http://skia.googlecode.com/svn/trunk@2996 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-01-10 18:00:10 +00:00