137 Commits

Author SHA1 Message Date
James Godfrey-Kittle
569872be21 Merge pull request #35 from googlei18n/ufo-benchmark
UFO benchmark module
2016-07-28 10:58:05 -07:00
James Godfrey-Kittle
2a8eb7993e Revert "Change expected test results for travis"
This reverts commit 79beda96a4e26d5d1778f24de673cf14c6bda1ac.

Apparently now Travis expects what my local machine expects. I swear,
Travis is messing with me....
2016-07-27 17:02:44 -07:00
James Godfrey-Kittle
d864619c8b Typo 2016-07-27 16:52:19 -07:00
James Godfrey-Kittle
4d72a44d35 Remove unused code 2016-07-27 16:52:09 -07:00
James Godfrey-Kittle
a91108185f Correct single-segment approximation return 2016-07-27 16:51:45 -07:00
James Godfrey-Kittle
ea08338878 UFO benchmark module 2016-07-27 16:50:57 -07:00
Behdad Esfahbod
8a9cf24429 Fix splitting into one quadratic
Ouch, broke it in 64af3ad4a87 originally.  Caught by James.
2016-07-27 18:53:09 -04:00
James Godfrey-Kittle
d64a3c6619 Show build status in readme 2016-07-27 13:54:27 -07:00
James Godfrey-Kittle
0479616451 Merge pull request #34 from googlei18n/update-tests
Add travis config file
2016-07-27 13:50:59 -07:00
James Godfrey-Kittle
79beda96a4 Change expected test results for travis
This is kind of annoying, because I don't get these results running
the test locally. Hoping it's a user error of some sort on my part.
2016-07-27 13:48:19 -07:00
James Godfrey-Kittle
ac58a7699a Trying to get travis working 2016-07-27 13:43:29 -07:00
James Godfrey-Kittle
d556e8a422 Update expected test results
These have changed with the new conversion method from
https://github.com/googlei18n/cu2qu/pull/33
2016-07-27 13:24:34 -07:00
James Godfrey-Kittle
039e35b212 No error returned from API, update tests 2016-07-27 13:21:47 -07:00
James Godfrey-Kittle
1988c26595 Trying to get travis working 2016-07-27 13:17:55 -07:00
James Godfrey-Kittle
7318a62e80 Trying to get travis working 2016-07-27 13:13:23 -07:00
James Godfrey-Kittle
9626ea9734 Add travis config file 2016-07-27 13:09:58 -07:00
James Godfrey-Kittle
0e10b902a5 Merge pull request #33 from googlei18n/complex-points
Complex points
2016-07-27 13:09:22 -07:00
Behdad Esfahbod
9a2d4b810a Reduce more work 2016-07-26 16:00:49 -04:00
Behdad Esfahbod
f6daaae2f8 Port dot() product to native complex operations
For reference:
http://www.solitaryroad.com/c606.html
2016-07-26 15:43:38 -04:00
Behdad Esfahbod
efb25578a1 Minor 2016-07-25 04:16:02 -04:00
Behdad Esfahbod
0b91ec8024 Remove unuse exception 2016-07-25 04:14:34 -04:00
Behdad Esfahbod
13cd5c3b09 Some more micro-optimization 2016-07-25 04:08:37 -04:00
Behdad Esfahbod
b9dcbb5668 Do some less work! 2016-07-25 04:00:44 -04:00
Behdad Esfahbod
021d8c107d Remove unused code 2016-07-25 03:57:33 -04:00
Behdad Esfahbod
59e8ce6e84 Inline cubic_cubic_fit()
Results in a few percents speedup.
2016-07-25 03:53:23 -04:00
Behdad Esfahbod
3aa4c1e1e4 Remove unused error code 2016-07-25 03:38:13 -04:00
Behdad Esfahbod
612aa2af87 Return results in tuples, not complex points 2016-07-25 03:35:40 -04:00
Behdad Esfahbod
1cc3c5eae8 Inline _splitCubicIntoN() 2016-07-25 03:14:02 -04:00
Behdad Esfahbod
40bba687ab Replace splitCubicAtT() with splitCubicIntoN()
Another 6% speedup.
2016-07-25 03:13:01 -04:00
Behdad Esfahbod
64af3ad4a8 Inline cubic_quadratic_fit()
Another 5%.
2016-07-25 03:04:51 -04:00
Behdad Esfahbod
abc18236af Inline splitCubicIntoTwo()
Saves another 5%.
2016-07-25 02:12:15 -04:00
Behdad Esfahbod
c50d498ea5 Hand-code splitCubicIntoThree() 2016-07-24 14:10:41 -04:00
Behdad Esfahbod
8a13ef1edf Use splitCubicIntoTwo() more
Shaves another 5%.
2016-07-24 13:54:52 -04:00
Behdad Esfahbod
dff2cd8669 Add splitCubicIntoTwo()
Speeds up another 15% or so.
2016-07-24 13:54:52 -04:00
Behdad Esfahbod
12629a715b Whitespace 2016-07-23 17:11:45 -07:00
Behdad Esfahbod
f63a31dd99 Do less work. 2016-07-23 17:11:28 -07:00
Behdad Esfahbod
a412c1c9ec Make benchmark callable from profile / cProfile module 2016-07-23 16:28:28 -07:00
Behdad Esfahbod
d3f566ba54 Use complex numbers to implement points
Shows a 30% speedup for me.
2016-07-22 23:40:44 -07:00
Behdad Esfahbod
46f8416fff Remove more unused code 2016-07-22 23:11:13 -07:00
Behdad Esfahbod
bd52b4d510 Remove unused code 2016-07-22 15:52:00 -07:00
Behdad Esfahbod
49c2d886a0 Use exact error
To me, this looks about 40% faster.

WIP though.  API needs to change to take out error output argument.
Further optimization is possible by merging loops.
2016-07-22 02:21:41 -07:00
Behdad Esfahbod
185216bbfe Remove unused return values 2016-07-22 01:13:12 -07:00
Behdad Esfahbod
2d5e57e973 Make it twice faster by inlining lerp and expanding bezier equations 2016-07-22 00:49:19 -07:00
James Godfrey-Kittle
3cc8db41d8 Merge pull request #30 from anthrotype/normalize-offcurves
cu2qu.pens: make sure closed contour starts with an on-curve
2016-07-21 10:29:07 -07:00
Cosimo Lupo
ae2eb8d4df cu2qu.pens: make sure closed contour starts with an on-curve
This is still the same contour as before, as UFO spec allows both;
it's just normalized so that the first segments' off-curves appear at
the bottom, and the first point in the contour is an on-curve.
2016-07-21 11:35:41 +01:00
James Godfrey-Kittle
c82b78b1b8 Merge pull request #25 from googlei18n/reverse-contours
Add reverse_direction argument
2016-05-11 10:55:50 -07:00
James Godfrey-Kittle
3307c5d62a Add reverse_direction argument
As described in
https://github.com/googlei18n/cu2qu/pull/20#issuecomment-213058410
2016-05-10 18:01:34 -07:00
Behdad Esfahbod
79aaf25ae2 [test] Fix seed in class setup
Fixes https://github.com/googlei18n/cu2qu/issues/24
2016-04-30 17:59:50 +02:00
Behdad Esfahbod
a3922c075e Merge pull request #23 from googlei18n/tests
Simple tests
2016-04-21 12:00:47 -07:00
James Godfrey-Kittle
dc904ef31f Move root module tests to test/ directory 2016-04-21 11:32:36 -07:00