hkrish
2121b564d0
_tracePaths: Avoid traversing to visited segments
2014-02-10 22:12:32 +01:00
hkrish
dfd1c97a4f
Bug fixes in the tracePath method to work with self-Intersection resolution
2014-02-10 22:12:13 +01:00
hkrish
f8f31349d9
Modified tracePath method for supporting self-intersection resolution and offset curves
2014-02-10 22:11:43 +01:00
hkrish
ccb9f518b8
Fix monotoneCurve calculation for open paths
2014-02-10 22:11:29 +01:00
hkrish
de0cfb7e3d
Refactor code common to getIntersections and getSelfIntersections.
...
Conflicts:
src/path/PathItem.js
2014-02-10 22:10:55 +01:00
hkrish
74c4df9b8c
Fix winding contribution case for horizontal curves
2014-01-28 18:04:09 +01:00
hkrish
acaf637f26
Keep exclude as a compound boolean operator for now.
2014-01-27 21:32:25 +01:00
hkrish
85736d4e84
Remove debug helpers
2014-01-26 05:44:55 +01:00
hkrish
aea9a5cd6c
Minor Fixes
2014-01-26 05:39:51 +01:00
hkrish
758cf67f6e
Move sorting and expansion of intersections to the getIntersections method
2014-01-26 05:39:00 +01:00
hkrish
c5ddbf19da
Remove duplicate intersections in #getIntersections
2014-01-26 05:38:09 +01:00
hkrish
cf9aec9233
Remove addLocation helper. We have to remove duplicates once we have all the intersections.
2014-01-25 23:50:29 +01:00
hkrish
24cbf3b079
Correct winding contribution calculation for horizontal curves
2014-01-16 20:02:26 +01:00
hkrish
df7e8e43b2
More explanation and indentation fixes
2014-01-05 15:59:21 +01:00
hkrish
bcdec37b1a
Do a much simpler but thorough check for winding contribution, instead of trying to be clever :)
2014-01-05 14:38:15 +01:00
hkrish
f2168b48cb
new Boolean operator functions
2013-12-29 13:40:22 +01:00
hkrish
3b85d3d990
Remove TestOnCurve method
2013-12-29 13:38:33 +01:00
hkrish
9831720c9c
New computeBooleean method
2013-12-29 13:38:04 +01:00
hkrish
7af091ca5b
Dont alter the winding direction for paths within compoundPaths if they are not completely contained
2013-12-29 13:36:43 +01:00
hkrish
d02e0dcecf
Remove old SplitPath method
2013-12-29 13:32:12 +01:00
hkrish
3f6562d5b3
Method for tracing a set of connected segments and producing paths; used in boolean ops and path offsetting methods.
2013-12-29 13:29:54 +01:00
hkrish
7c75dcee97
New Split path method
2013-12-29 13:25:48 +01:00
hkrish
1be669396e
First cut at a new winding number calculation algorithm
2013-12-29 13:21:08 +01:00
hkrish
a88d7f5eae
Rudimentary self-intersection calculation
2013-12-29 13:06:25 +01:00
hkrish
1bacbc32e9
Link previous & next curves while returning monotone curves
2013-12-29 13:03:39 +01:00
hkrish
0b4da28c1e
Optimize handling of horizontal curves in Curve#_getWinding
2013-12-29 12:38:59 +01:00
hkrish
a8a4a6fd03
Return horizontal curves as well, with monotonic curves
2013-12-26 18:03:23 +01:00
hkrish
4562b104f2
Winding number calculation for a given point
2013-12-25 20:46:13 +01:00
hkrish
39c52f326e
New _getWinding method in Curve. This method return the winding contribution of this curve w.r.t. the resulting PathItem
2013-12-25 20:41:19 +01:00
hkrish
0134596f66
_getMonotoneCurves method which returns and caches curves that are monotonic in Y direction
2013-12-25 20:38:48 +01:00
hkrish
b4c7bcae5e
Indent with Tabs like rest of paperjs code.
2013-12-25 20:33:51 +01:00
hkrish
70070c14d2
Avoid creating proxy array objects
2013-12-24 19:00:33 +01:00
hkrish
f23303e371
Merge branch 'master' into bool-new
...
* master:
Share code that handles bounds in roots between solveQuadratic() and solveCubic()
Inline EPSILON and TOLERANCE for better performance in Numerical.
Clean up code a bit.
Filter out insert property in Item#set()
Typo Paelette -> Palette
Rename Item#anchor -> Item#pivot
Minor documentation fixes.
2013-12-24 00:02:15 +01:00
hkrish
3b013c0720
Add an optional ignoreLinear parameter to Curve#divide, so that new segments on linear curves will keep their correct bezier handles.
2013-12-23 23:38:12 +01:00
hkrish
20b6d699db
Consistently return curve parameter on Line intersections as well, so that sorting intersections wouldn't fail.
2013-12-23 23:34:26 +01:00
hkrish
20fbdcffda
Subdivide only if tDiff on both curves have failed to converge more than 80%
2013-12-23 23:27:23 +01:00
Jürg Lehni
99d7b5cfdb
Merge branch 'refs/heads/fatline'
2013-12-17 22:07:34 +01:00
Jürg Lehni
a6b3a3a2ec
Share code that handles bounds in roots between solveQuadratic() and solveCubic()
2013-12-17 15:38:22 +01:00
Jürg Lehni
76ea7ef066
Inline EPSILON and TOLERANCE for better performance in Numerical.
2013-12-17 15:27:55 +01:00
Jürg Lehni
6b4917f4a8
Clean up code a bit.
2013-12-17 15:23:07 +01:00
Jürg Lehni
e2b06b8e54
Filter out insert property in Item#set()
2013-12-16 22:03:33 +01:00
Jürg Lehni
45ed406aa3
Remove unnecessary exports.
2013-12-16 21:58:32 +01:00
Jürg Lehni
94b27e933a
Some more variable renaming.
2013-12-16 21:56:41 +01:00
Jürg Lehni
e9d2c6cfd4
Further simplify code a bit.
2013-12-16 21:45:06 +01:00
Jürg Lehni
d984a2cd87
Use correct value for tolerance in non-fatline code again.
2013-12-16 21:41:46 +01:00
Jürg Lehni
a59a42376a
Clean up coding style a bit.
2013-12-16 21:40:40 +01:00
Jürg Lehni
f7a1af4fda
Merge pull request #364 from christophknoth/patch-2
...
Typo Paelette -> Palette
2013-12-16 02:24:53 -08:00
Christoph Knoth
39c1e76d4c
Typo Paelette -> Palette
2013-12-16 02:27:07 +01:00
hkrish
5fe092672e
Fatline clipping: fix c-hull corner case.
2013-12-14 00:31:42 +01:00
Jürg Lehni
a51f8d4ee8
Rename Item#anchor -> Item#pivot
2013-12-13 20:50:58 +01:00