Commit graph

89 commits

Author SHA1 Message Date
Jürg Lehni
01e48b3322 Improve and clean up fat-line bug fix. 2013-06-13 15:53:28 -07:00
Jürg Lehni
c518a4d74f Clear fill in SVGs for fatline tests. 2013-06-13 14:26:42 -07:00
Jürg Lehni
f8e5fae826 Include two new fail-cases for fat-line code. 2013-06-09 18:36:31 -07:00
Jürg Lehni
cfdc479108 Use paper.js fatline code by default in intersectTests.js 2013-05-27 15:26:20 -07:00
Jürg Lehni
bd33446c7c Do not smooth graphs for clearer results. 2013-05-26 16:59:01 -07:00
Jürg Lehni
c9a669ae37 Improve fat-line charts for better comparison of results. 2013-05-26 16:15:59 -07:00
Jürg Lehni
f28e6ba372 Merge handling of flat curves. 2013-05-24 22:03:42 -07:00
Jürg Lehni
44be94e55e More getConvexHull() clean up. 2013-05-24 21:47:19 -07:00
Jürg Lehni
6374164de7 Remove unused variable dqmin. 2013-05-24 21:32:15 -07:00
Jürg Lehni
b1562d7594 Further clean up clipFatLine() 2013-05-24 21:31:32 -07:00
Jürg Lehni
696887477a Some clean up in clipFatLine() 2013-05-24 21:24:52 -07:00
Jürg Lehni
24f61c854a Merge the two convergence checks to one. 2013-05-24 21:11:10 -07:00
Jürg Lehni
ec1ef905cf Simplify convergence checks. 2013-05-24 21:10:02 -07:00
Jürg Lehni
eeac15ac46 Rename p\d to part\d 2013-05-24 21:05:20 -07:00
Jürg Lehni
9cf6536e5b Rename v\dt to range\d 2013-05-24 21:02:58 -07:00
Jürg Lehni
08245f936b Simplify handling of ranges and curve parts. 2013-05-24 21:01:37 -07:00
Jürg Lehni
1d1375915a Switch to using arrays rather than objects for parameter ranges. 2013-05-24 20:50:28 -07:00
Jürg Lehni
4a53767021 Reverse logic of v1t / _v1t naming and switch to using Numerical constants. 2013-05-24 20:39:40 -07:00
Jürg Lehni
6eab957fce Re-implement Curve.getLocation2() as "hub" for all the different intersection methods. 2013-05-24 20:25:29 -07:00
Jürg Lehni
7ef52b3dd4 Use break; instead of return; and untangle unnecessarily nested conditionals. 2013-05-24 20:12:42 -07:00
Jürg Lehni
d77fc505c7 Define private addLocation() to reduce code redundancy. 2013-05-24 20:04:48 -07:00
Jürg Lehni
be76cf22bb Correctly handle calculation of CurveLocation point in getCurveIntersections(). 2013-05-24 19:56:40 -07:00
Jürg Lehni
7f03ff83af Move Curve.getIntersection2 to private function and better name other private functions. 2013-05-24 19:55:17 -07:00
Jürg Lehni
26d79e6c16 Always use parameter in getCurveLineIntersection() by flipping curve1 / 2 values as well. 2013-05-24 19:53:30 -07:00
Jürg Lehni
d964ca3496 More fat-line refactoring.
Renaming and simple clean ups.
2013-05-24 19:36:26 -07:00
Jürg Lehni
f387d1596e Further simplify fat line code. 2013-05-24 18:00:28 -07:00
Jürg Lehni
fb477da0e4 Scope fat-line code, fix variable leakage and rename private functions. 2013-05-24 17:50:10 -07:00
Jürg Lehni
f33d49acc1 Further clean up code. 2013-05-24 17:43:49 -07:00
Jürg Lehni
1eb1580112 More code clean-up.
Keep it all to 80 chars per line, and some more coding convention enforcements.
2013-05-24 17:40:11 -07:00
Jürg Lehni
662736ebf2 Move getIntersections2 to PathItem.prototype. 2013-05-24 17:27:56 -07:00
Jürg Lehni
ed572e7d48 Do not pre-calculate numeric values, count on optimizing JS engines to do that for us. 2013-05-24 17:14:23 -07:00
Jürg Lehni
aac8bf83fd Convert to Paper.js coding conventions. 2013-05-24 17:08:28 -07:00
Jürg Lehni
eb7ff2dc1d Adjust script urls. 2013-05-24 17:01:48 -07:00
hkrish
239462b5a4 Return only the "valid" intersections, by backtracing, like in paperjs 2013-05-20 19:26:16 +02:00
hkrish
254de9e453 Move the debug helper functions to the test file for now. 2013-05-20 19:21:32 +02:00
hkrish
3e8c6300bc Account for total curves in the random tests. 2013-05-19 18:34:05 +02:00
hkrish
0647792a4f Plot the random test results 2013-05-19 18:22:07 +02:00
hkrish
9806173d3f Increase the recusion depth cut-off. And voilà!! 2013-05-19 18:21:41 +02:00
hkrish
3a881e3a14 Resolve some bad clipping 2013-05-19 16:22:15 +02:00
hkrish
e6a98b4f18 More failure cases 2013-05-16 21:26:20 +02:00
hkrish
f6e474da50 Check curve bounds before recursively clipping.
The speeds are back to "normal"!
2013-05-15 21:53:05 +02:00
hkrish
3449f7e69b Test only bezier-bezier intersections for now. Others are stable. 2013-05-14 23:37:52 +02:00
hkrish
48e5d3aa8e Calculate abscissae directly 2013-05-14 23:37:01 +02:00
hkrish
0a9a0bdb9b Efficient calculation of tmax, tmin 2013-05-14 22:34:25 +02:00
hkrish
ebbe2d7569 Increase stability of the implementation 2013-05-14 22:15:11 +02:00
hkrish
5bdf3bce91 Added Random and Failing Tests 2013-05-14 20:27:37 +02:00
hkrish
4e2680e605 Minor optimizations 2013-05-14 20:27:04 +02:00
hkrish
0dc74280e6 Minor fixes for async tests 2013-05-12 23:58:57 +02:00
hkrish
54eba57881 Minor fixes in the tests 2013-05-12 23:46:03 +02:00
hkrish
18d10ec98c Plot speedups 2013-05-12 23:32:42 +02:00