Commit graph

3696 commits

Author SHA1 Message Date
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
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
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
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
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
8d35d92946 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
hkrish
1e8e045f5e Updated tests: changed to #importSVG from #importSvg 2013-04-23 22:58:25 +02:00
hkrish
8f6b8c738a added a failing test case - Paths that just touch each other 2013-04-23 19:46:41 +02:00
Jürg Lehni
69512ac396 Simplify and document Segment#_serialize(). 2013-04-23 07:39:31 -07:00
Jürg Lehni
6029f59494 More uppercase changes. 2013-04-23 07:29:30 -07:00
Jürg Lehni
96d9b6730f Rename Svg acronyms in API to SVG. 2013-04-23 07:19:08 -07:00
Jürg Lehni
cebeb11301 Rename Json acronyms in API to JSON. 2013-04-23 07:13:51 -07:00
Jürg Lehni
86e77e12bc Use new Project#clear() instead of activeLayer.remove(). 2013-04-23 07:11:23 -07:00
Jürg Lehni
faecb7e78a Allow creation of items when project has no layers. 2013-04-22 23:25:34 -07:00
Jürg Lehni
1b61e4333c Implement Project#clear(). 2013-04-22 22:48:36 -07:00
Jürg Lehni
885d75296d Fix Layer#isInserted() for nested Layers. 2013-04-22 22:47:48 -07:00
Jürg Lehni
0c114883e1 Add unique ids to CurveLocation. 2013-04-22 19:11:42 -07:00
Jürg Lehni
6800a6d534 Use separate id ranges for different classes. 2013-04-22 19:09:59 -07:00
Jürg Lehni
2a53dbe60f Restructure Color constructor to remove need for Color.create(). 2013-04-22 19:07:38 -07:00
hkrish
95506e37a9 Remove overloaded Curve._addIntersections, use paperjs' native method 2013-04-22 21:05:29 +02:00