Commit graph

4014 commits

Author SHA1 Message Date
hkrish
46a324722a Merge branch 'master' of https://github.com/paperjs/paper.js
* 'master' of https://github.com/paperjs/paper.js: (90 commits)
  Start merging fat-line clipping code into Curve class.
  Fix white-spaces.
  Merge handling of flat curves.
  More getConvexHull() clean up.
  Remove unused variable dqmin.
  Further clean up clipFatLine()
  Some clean up in clipFatLine()
  Merge the two convergence checks to one.
  Simplify convergence checks.
  Rename p\d to part\d
  Rename v\dt to range\d
  Simplify handling of ranges and curve parts.
  Switch to using arrays rather than objects for parameter ranges.
  Reverse logic of v1t / _v1t naming and switch to using Numerical constants.
  Re-implement Curve.getLocation2() as "hub" for all the different intersection methods.
  Use break; instead of return; and untangle unnecessarily nested conditionals.
  Define private addLocation() to reduce code redundancy.
  Correctly handle calculation of CurveLocation point in getCurveIntersections().
  Move Curve.getIntersection2 to private function and better name other private functions.
  Always use parameter in getCurveLineIntersection() by flipping curve1 / 2 values as well.
  ...
2013-05-25 11:37:33 +02:00
Jürg Lehni
502c76dbce Start merging fat-line clipping code into Curve class.
And add a prepro option for now.
2013-05-24 22:30:13 -07:00
Jürg Lehni
7f00ef8f05 Fix white-spaces. 2013-05-24 22:25:22 -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
7e5f846190 Remove debugging code. 2013-05-24 17:57:13 -07:00
tranek
1637127e09 Fixed data URLs src disappearing 2013-05-24 20:55:59 -04:00
Jürg Lehni
bd3ac02bbe Use Curve instead of this.
Compresses better and allows passing on function as callback.
2013-05-24 17:52:05 -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
e359dd038c Add explaining comment. 2013-05-24 17:14:39 -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
Jürg Lehni
c8724aafad Merge 'fatline/master' 2013-05-24 16:59:45 -07:00
Jürg Lehni
8100bb2009 Removing .gitignore 2013-05-24 16:58:24 -07:00
tranek
cd7938e363 Fixed string equals in Raster data URL for Node.js 2013-05-24 16:41:02 -04:00
tranek
269b93e888 Added data URLs for Rasters in Node.js 2013-05-24 16:38:43 -04: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
cfbe6d8312 Merge branch 'master' of https://github.com/paperjs/paper.js
* 'master' of https://github.com/paperjs/paper.js:
  Remove Item#applyMatrix boolean, go back to previous way of directly applying transformations to children in Group and Layer, and introduce new Clip class for non-transformed nested matrices.
  Make sure the Base class is exposed in Node.js
2013-05-16 20:33:13 +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