Commit graph

4036 commits

Author SHA1 Message Date
Jürg Lehni
90e3dd201a Move boolean code into its own file, and add information comments again. 2013-05-03 16:16:52 -07:00
Jürg Lehni
ac9e4926bd Add 'boolean/' from commit '26c48786c8c1dd9f99f8c0abc24700197c443539'
git-subtree-dir: boolean
git-subtree-mainline: 7d54bb36b1
git-subtree-split: 26c48786c8
2013-05-03 15:23:17 -07:00
Jürg Lehni
639ff7f03f Add 'boolean/' from commit '26c48786c8c1dd9f99f8c0abc24700197c443539'
git-subtree-dir: boolean
git-subtree-mainline: 7d54bb36b1
git-subtree-split: 26c48786c8
2013-05-03 15:23:17 -07:00
Jürg Lehni
7d54bb36b1 Merge pull request #211 from hkrish/master
Merge in the possibly smallest Boolean Operations code ever written = )
2013-05-03 15:16:23 -07:00
Jürg Lehni
857155bb4a Merge pull request #211 from hkrish/master
Merge in the possibly smallest Boolean Operations code ever written = )
2013-05-03 15:16:23 -07:00
hkrish
6b44c98169 Almost working. And is Super-fast!!! 2013-05-03 22:23:00 +02:00
hkrish
b966aafd0f _intersectLine returns a point 2013-05-03 19:42:40 +02:00
hkrish
3804531906 remove old fatline code 2013-05-03 19:39:32 +02:00
hkrish
d9d86f4ff7 Merge branch 'master' of https://github.com/paperjs/paper.js
* 'master' of https://github.com/paperjs/paper.js:
  Undo recent change to Curve#getIntersection() since it breaks some boolean operations.

€ý5:q
2013-05-03 19:24:03 +02:00
hkrish
e75cc32a3b Merge branch 'master' of https://github.com/paperjs/paper.js
* 'master' of https://github.com/paperjs/paper.js:
  Undo recent change to Curve#getIntersection() since it breaks some boolean operations.

€ý5:q
2013-05-03 19:24:03 +02:00
Jürg Lehni
9e3b7eef50 Undo recent change to Curve#getIntersection() since it breaks some boolean operations. 2013-05-02 11:32:24 -07:00
Jürg Lehni
840e879ba8 Undo recent change to Curve#getIntersection() since it breaks some boolean operations. 2013-05-02 11:32:24 -07:00
hkrish
392eff499f Merge branch 'master' of https://github.com/hkrish/paper.js
* 'master' of https://github.com/hkrish/paper.js:

€ý5q:q:qq
:q
:q
2013-05-02 14:29:35 +02:00
hkrish
427ba628e1 Merge branch 'master' of https://github.com/hkrish/paper.js
* 'master' of https://github.com/hkrish/paper.js:

€ý5q:q:qq
:q
:q
2013-05-02 14:29:35 +02:00
hkrish
debce28bc4 Merge upstream 2013-05-02 14:18:24 +02:00
hkrish
10553c1bd8 Merge upstream 2013-05-02 14:18:24 +02:00
hkrish
2be9724a25 Merge upstream 2013-05-02 14:03:16 +02:00
hkrish
a52c030f37 Merge upstream 2013-05-02 14:03:16 +02:00
hkrish
381ee98cbc Updated boolean operation methods.
The algorithm is based on paperjs' native segment and curve objects
rather than the generic Node and Link objects.
Also this is much smaller and faster! :)
2013-05-02 13:49:07 +02:00
hkrish
73b018f006 Updated boolean operation methods.
The algorithm is based on paperjs' native segment and curve objects
rather than the generic Node and Link objects.
Also this is much smaller and faster! :)
2013-05-02 13:49:07 +02:00
Jürg Lehni
f425c931a8 Improve Curve#getIntersections() by avoiding further subdivision of flat curves. 2013-05-01 18:40:57 -07:00
Jürg Lehni
e8fed1bdf0 Improve Curve#getIntersections() by avoiding further subdivision of flat curves. 2013-05-01 18:40:57 -07:00
Jürg Lehni
023c8b0432 Fix issue with recursive call of Curve.getIntersections(). 2013-05-01 18:24:54 -07:00
Jürg Lehni
c61e8d57b9 Fix issue with recursive call of Curve.getIntersections(). 2013-05-01 18:24:54 -07:00
hkrish
26c48786c8 Remove the proxy paths used for boolean 2013-05-01 23:32:25 +02:00
hkrish
01903a1005 Add tests for Exclusion and Division 2013-05-01 22:55:50 +02:00
hkrish
454632571b Use groups for compound boolean operations 2013-05-01 22:55:05 +02:00
hkrish
1d1bfdc529 Added exclusion and divide operators 2013-05-01 22:35:55 +02:00
hkrish
96ced2bdcf Avoid stray segments and incomplete paths 2013-05-01 22:21:31 +02:00
hkrish
fef7ba076c Add exclusion operator 2013-05-01 22:11:27 +02:00
hkrish
a13e8bda3e Return correct winding after reversing 2013-05-01 22:09:59 +02:00
hkrish
37ad183c02 Resolved an issue where overlapping lines were falsely marked invalid 2013-05-01 22:09:15 +02:00
hkrish
4afe657896 Removed mpatch.js, paperjs supports all requirements of Boolean2.js 2013-05-01 17:20:18 +02:00
hkrish
5b957e9b3f All boolean operations except resolving self-intersection work.
All of my tests are passing.
2013-05-01 17:18:56 +02:00
hkrish
934ec8df7e Fix: Update the getIntersections method signature in recursive calls 2013-05-01 13:29:02 +02:00
hkrish
f239a3980d Fix: Update the getIntersections method signature in recursive calls 2013-05-01 13:29:02 +02:00
hkrish
d8dc762826 Merge branch 'master' of https://github.com/paperjs/paper.js
* 'master' of https://github.com/paperjs/paper.js:
  Define CurveLocation#intersection as a way to retrieve the CurveLocation on the intersecting path when using Path#getIntersections().

€ý5€ý`q€kb:q
2013-05-01 12:39:04 +02:00
hkrish
88b720be76 Merge branch 'master' of https://github.com/paperjs/paper.js
* 'master' of https://github.com/paperjs/paper.js:
  Define CurveLocation#intersection as a way to retrieve the CurveLocation on the intersecting path when using Path#getIntersections().

€ý5€ý`q€kb:q
2013-05-01 12:39:04 +02:00
Jürg Lehni
69f8bdc560 Define CurveLocation#intersection as a way to retrieve the CurveLocation on the intersecting path when using Path#getIntersections(). 2013-04-30 18:41:26 -07:00
Jürg Lehni
883e3ad563 Define CurveLocation#intersection as a way to retrieve the CurveLocation on the intersecting path when using Path#getIntersections(). 2013-04-30 18:41:26 -07:00
hkrish
7a5c352455 Boolean v2 testing 2013-05-01 02:29:18 +02:00
hkrish
487219c26c Union kinda working. Need to figureout the base path 2013-05-01 02:28:48 +02:00
hkrish
dbe07c9efc Curve inside path test 2013-05-01 01:15:47 +02:00
hkrish
fd6dc5dda7 PathSplit working 2013-04-30 22:28:20 +02:00
hkrish
41e913a39a Tests fo paperjs integrated version 2013-04-30 17:51:39 +02:00
hkrish
30d9e322e8 Boolean Operations.
This is probably a crude integration. Need to resolve some issues,
such as finding the right place for constants, private classes etc.
2013-04-29 21:36:12 +02:00
hkrish
b4dd16bbfb Boolean Operations.
This is probably a crude integration. Need to resolve some issues,
such as finding the right place for constants, private classes etc.
2013-04-29 21:36:12 +02:00
hkrish
af7c96039c Filter duplicate intersections returned by curve.addIntersections
In cases where segments and lines overlap!
2013-04-28 21:51:22 +02:00
hkrish
26b5003927 Basic fat-line clipping working. terribly slow. object creation over head 2013-04-28 18:22:09 +02:00
hkrish
e3e827496a Added new failing test cases 2013-04-27 16:27:17 +02:00