aboutsummaryrefslogtreecommitdiffhomepage
path: root/src/utils/SkCurveMeasure.h
Commit message (Collapse)AuthorAge
* Revert "Revert "remove unused SkCurveMeasure""Gravatar Mike Reed2018-01-06
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This reverts commit 4d1d8bcf6df52bd8e9ae5b0289815c1a2527e7c8. Reason for revert: will try a manual roll to update static_initializers.gni Original change's description: > Revert "remove unused SkCurveMeasure" > > This reverts commit 065c2e827e3a5c7aab8f276b1f5358ba3ac33fa8. > > Reason for revert: change static initializer count? > > Original change's description: > > remove unused SkCurveMeasure > > > > Bug: skia: > > Change-Id: I36eb00883bc17e8eef4d1d226972f0125f0e2630 > > Reviewed-on: https://skia-review.googlesource.com/91702 > > Reviewed-by: Mike Reed <reed@google.com> > > Commit-Queue: Mike Reed <reed@google.com> > > TBR=reed@google.com > > Change-Id: I0d8ad2aa8b38a389048ba8bf5cafafea5788c3e1 > No-Presubmit: true > No-Tree-Checks: true > No-Try: true > Bug: skia: > Reviewed-on: https://skia-review.googlesource.com/91343 > Reviewed-by: Mike Reed <reed@google.com> > Commit-Queue: Mike Reed <reed@google.com> TBR=reed@google.com Change-Id: I7e6dfc5841b089dff047cd1d78dcebb722cdf8a4 No-Presubmit: true No-Tree-Checks: true No-Try: true Bug: skia: Reviewed-on: https://skia-review.googlesource.com/91361 Reviewed-by: Mike Reed <reed@google.com> Commit-Queue: Mike Reed <reed@google.com>
* Revert "remove unused SkCurveMeasure"Gravatar Mike Reed2018-01-06
| | | | | | | | | | | | | | | | | | | | | | | | | | This reverts commit 065c2e827e3a5c7aab8f276b1f5358ba3ac33fa8. Reason for revert: change static initializer count? Original change's description: > remove unused SkCurveMeasure > > Bug: skia: > Change-Id: I36eb00883bc17e8eef4d1d226972f0125f0e2630 > Reviewed-on: https://skia-review.googlesource.com/91702 > Reviewed-by: Mike Reed <reed@google.com> > Commit-Queue: Mike Reed <reed@google.com> TBR=reed@google.com Change-Id: I0d8ad2aa8b38a389048ba8bf5cafafea5788c3e1 No-Presubmit: true No-Tree-Checks: true No-Try: true Bug: skia: Reviewed-on: https://skia-review.googlesource.com/91343 Reviewed-by: Mike Reed <reed@google.com> Commit-Queue: Mike Reed <reed@google.com>
* remove unused SkCurveMeasureGravatar Mike Reed2018-01-05
| | | | | | | | Bug: skia: Change-Id: I36eb00883bc17e8eef4d1d226972f0125f0e2630 Reviewed-on: https://skia-review.googlesource.com/91702 Reviewed-by: Mike Reed <reed@google.com> Commit-Queue: Mike Reed <reed@google.com>
* Wrap SkNx types in anonymous namespace again.Gravatar Mike Klein2016-10-14
| | | | | | | | | | | | | | | | | | | | | This should make each compilation unit's SkNx types distinct from each other's as far as C++ cares. This keeps us from violating the One Definition Rule with different implementations for the same function. Here's an example I like. Sk4i SkNx_cast(Sk4b) has at least 4 different sensible implementations: - SSE2: punpcklbw xmm, zero; punpcklbw xmm, zero - SSSE3: load mask; pshufb xmm, mask - SSE4.1: pmovzxbd - AVX2: vpmovzxbd We really want all these to inline, but if for some reason they don't (Debug build, poor inliner) and they're compiled in SkOpts.cpp, SkOpts_ssse3.cpp, SkOpts_sse41.cpp, SkOpts_hsw.cpp... boom! BUG=skia: GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=3461 Change-Id: I0088ebfd7640c1b0de989738ed43c81b530dc0d9 Reviewed-on: https://skia-review.googlesource.com/3461 Reviewed-by: Matt Sarett <msarett@google.com> Commit-Queue: Mike Klein <mtklein@chromium.org>
* Add better bounds checks for getTime to fix perf debug assert belowGravatar hstern2016-08-10
| | | | | | | | | | | | | | | | Due to rounding, we request a length slightly larger than the total length in MeasureBench. This will be fixed in a following CL and there will be another CL adding unit tests for bounds checking and other problems. Revert "Revert 386ba54 and 4ab47e0 : perf debug assert." This reverts commit 69aaa5a49a10454d573cbd8c5d980029d78ae459. BUG=skia: GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2233983003 Review-Url: https://codereview.chromium.org/2233983003
* Revert 386ba54 and 4ab47e0 : perf debug assert.Gravatar halcanary2016-08-10
| | | | | | | | | | | | | | | | Revert "Refactor SkCurveMeasure to use existing eval code" This reverts commit 4ab47e087ecfc82f070cbbaef4d9eb562d3fd163. Revert "Fastpath lines in SkCurveMeasure" This reverts commit 386ba540612defc7808edc28126b9b8afcf45b89. TBR= NOTRY=true GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2233683004 Review-Url: https://codereview.chromium.org/2233683004
* Refactor SkCurveMeasure to use existing eval codeGravatar hstern2016-08-10
| | | | | | | | | | - Use quad, cubic, conic eval code from SkGeometry.h - Implement evaluateDerivativeLength, evaluateDerivative and evaluate switch cases for lines along with the refactor BUG=skia: GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2226973004 Review-Url: https://codereview.chromium.org/2226973004
* Add time return argument to SkCurveMeasure's getPosTan, rename to getPosTanTimeGravatar hstern2016-08-10
| | | | | | | BUG=skia: GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2229893002 Review-Url: https://codereview.chromium.org/2229893002
* Move seg_to to a new header, define SkSegType enum thereGravatar hstern2016-08-09
| | | | | | | BUG=skia: GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2221203002 Review-Url: https://codereview.chromium.org/2221203002
* Add initial CurveMeasure codeGravatar hstern2016-08-08
- This code is entirely private and is not being used by anything. - In a future CL we will write a class that uses CurveMeasure to compute dash points. In order to determine whether CurveMeasure or PathMeasure should be faster, we need the dash info (the sum of the on/off intervals and how many there are) BUG=skia: GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2187083002 Review-Url: https://codereview.chromium.org/2187083002