hkrish
10553c1bd8
Merge upstream
2013-05-02 14:18:24 +02:00
hkrish
a52c030f37
Merge upstream
2013-05-02 14:03:16 +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
e8fed1bdf0
Improve Curve#getIntersections() by avoiding further subdivision of flat curves.
2013-05-01 18:40:57 -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
f239a3980d
Fix: Update the getIntersections method signature in recursive calls
2013-05-01 13:29:02 +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ý`qkb:q
2013-05-01 12:39:04 +02: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
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
e3e827496a
Added new failing test cases
2013-04-27 16:27:17 +02:00
hkrish
74b599c805
paperjs updated to rev#8d35d92. Removed getLineIntersections. Needs a better intersection algorithm
2013-04-27 16:26:44 +02:00
Jürg Lehni
0178386a7a
Update JSdoc.
2013-04-26 15:31:39 -07:00
Jürg Lehni
c7ab32c501
Rearrange linear curve conditions.
2013-04-26 14:37:37 -07:00
Jürg Lehni
c513a24f46
Handle intersection between linear curves without recursive subdivision.
...
Closes #207 .
2013-04-26 14:31:42 -07:00
Jürg Lehni
06ffd8089d
Fix issue in Path#removeSegments() where curves are removed wrongly when start index is 0.
...
Closes #200 .
2013-04-26 08:46:57 -07:00
Jürg Lehni
24443c548a
Define failing test for issue #200 .
2013-04-26 08:41:18 -07:00
hkrish
29dffd1984
Update to the latest paperjs api 74f6a93
2013-04-26 09:55:21 +02:00
Jürg Lehni
74f6a93b33
Optimize Curve.getArea().
2013-04-25 17:47:11 -07:00
Jürg Lehni
898e216668
Implement Path#getArea() and CompoundPath#getArea().
2013-04-25 17:37:19 -07:00
Jürg Lehni
80a1129eab
Consistently use 'this' rather than 'Curve'.
2013-04-25 17:19:00 -07:00
Jürg Lehni
1b5ca4dec9
Rename Curve._addIntersections() to Curve.getIntersections()
2013-04-25 17:17:53 -07:00
Jürg Lehni
eaa6e3bb6b
Improve Curve#getCrossings() documentation and code.
2013-04-25 11:08:50 -07:00
Jürg Lehni
d7e075d316
Handle contour edge cases in Path#contains().
...
Closes #208 .
2013-04-25 11:03:49 -07:00
hkrish
019693d144
Remove stray lines and segments in the result
2013-04-25 15:28:49 +02:00
hkrish
59a540a71b
More tests
2013-04-25 14:37:58 +02:00
hkrish
94f69e4649
New #contains method, that returns whether a point is on th path or not.\n\nThis resolves most of the failing tests.
2013-04-25 14:37:37 +02:00
Jürg Lehni
edfd8f53de
Remove accidentally committed debugging code.
2013-04-24 19:28:46 -07:00
Jürg Lehni
c70b9e7d7d
Fix issue with Path#strokeBounds with #strokeJoin == 'miter' and clockwise orientation.
...
Closes #206 .
2013-04-24 19:27:31 -07:00
Jürg Lehni
77292892ca
Define failing test for #206 .
2013-04-24 18:55:00 -07:00
Jürg Lehni
62ffa8749c
Define failing tests for #208 .
2013-04-24 18:35:44 -07:00
Jürg Lehni
420fb49230
Speed up Raster#getPixel().
2013-04-24 18:09:58 -07:00
Jürg Lehni
ead3646581
Handle alpha channels correctly in Raster#get/setPixel.
...
Closes #209 .
2013-04-24 16:29:28 -07:00
hkrish
ecb18af3c2
Ideas for further optimisation
2013-04-24 23:14:11 +02:00
hkrish
a10215915d
Use CurveLocation Objects native _id property
2013-04-23 23:01:21 +02:00