Jürg Lehni
|
f790ede7a8
|
Use Path#reduce() to make sure there are no curves with zero length in boolean code.
|
2014-02-20 02:51:35 +01:00 |
|
Jürg Lehni
|
e54691214a
|
Only preserve angle in Point#normalize() if direction doesn't change.
|
2014-02-20 02:51:02 +01:00 |
|
Jürg Lehni
|
86e4d2a6b9
|
Implement Curve#remove() and Path#reduce().
Also have Item#reduce() recursively call #reduce() on reduced children.
|
2014-02-20 02:50:39 +01:00 |
|
Jürg Lehni
|
4453f68cfa
|
Revert handling of linear segment reseting, as it broke some rare boolean tests.
|
2014-02-20 02:13:55 +01:00 |
|
Jürg Lehni
|
d730b75073
|
Simplify and clean-up PathItem._splitPath() code.
|
2014-02-20 01:56:49 +01:00 |
|
Jürg Lehni
|
4e5644f264
|
Simplify intersection sort function.
|
2014-02-20 00:32:15 +01:00 |
|
Jürg Lehni
|
56bf87ce84
|
Rename _getMonotoneCurves() to _getMonoCurves()
Shorter is better...
|
2014-02-20 00:24:09 +01:00 |
|
Jürg Lehni
|
36394c4c56
|
Simplify and clean-up PathItem._getWinding() code.
|
2014-02-20 00:19:44 +01:00 |
|
Jürg Lehni
|
6af639946b
|
Simplify and streamline Path._getMonotoneCurves() code.
|
2014-02-19 23:55:56 +01:00 |
|
Jürg Lehni
|
e6b7e9b2eb
|
Remove unused Curve#_getWinding() and commented out CompoundPath#_getWinding() code.
|
2014-02-19 23:51:21 +01:00 |
|
Jürg Lehni
|
cc0f088a11
|
Improve evaluation of tangents and normals at t == 0 and 1.
|
2014-02-19 23:49:34 +01:00 |
|
Jürg Lehni
|
1a0eead28c
|
Various code and comment clean-ups in new bool-op code.
|
2014-02-19 23:18:14 +01:00 |
|
Jürg Lehni
|
8726a3f082
|
Reformat documentation comments and change wording to follow existing documentation convention.
|
2014-02-19 23:17:59 +01:00 |
|
Jürg Lehni
|
19d84a8a8d
|
Rename Path._getWindingNumber to _getWinding (to reflect the naming of the existing Path#_getWinding).
|
2014-02-19 22:18:51 +01:00 |
|
Jürg Lehni
|
093aae0836
|
Merge remote-tracking branch 'origin/master' into bool-new-2
|
2014-02-19 14:35:52 +01:00 |
|
Jürg Lehni
|
ea89498e48
|
Remove debug logging.
|
2014-02-19 14:31:32 +01:00 |
|
Jürg Lehni
|
9de4189233
|
Minor simplification.
|
2014-02-19 14:28:35 +01:00 |
|
Jürg Lehni
|
74a153dd88
|
Some code clean-up.
More to come.
|
2014-02-17 20:59:38 +01:00 |
|
Jürg Lehni
|
73627346c0
|
Remove unnecessary paper namespace prefixes inside the library.
|
2014-02-17 20:36:41 +01:00 |
|
hkrish
|
92c13ae48b
|
Resolve selfIntersections if both operands to a boolean op is the same path
|
2014-02-16 19:02:07 +01:00 |
|
hkrish
|
e88ae54a22
|
_tracePaths: support self-intersections
|
2014-02-16 18:47:11 +01:00 |
|
hkrish
|
a62a54d7c1
|
Simplify the horizontal curve case in _getWinding method
|
2014-02-16 18:46:31 +01:00 |
|
Jürg Lehni
|
ad801fa786
|
Use parameter tolerances in Path#slipt()
Required because CurveLocation objects as returned by Path#getLocationAt() have some imprecision in their #parameter values. Fixes #401.
|
2014-02-15 23:37:41 +01:00 |
|
hkrish
|
16ecbbafad
|
Remove debug notes and helpers
|
2014-02-15 23:19:27 +01:00 |
|
hkrish
|
83eaf70ee4
|
Fix regression: getLength has been split to getLength and getPartLength in master branch
|
2014-02-15 00:04:05 +01:00 |
|
hkrish
|
87ded4dcff
|
Merge master
|
2014-02-15 00:02:02 +01:00 |
|
hkrish
|
a798b553a2
|
Remove old tracePaths method
|
2014-02-14 22:52:32 +01:00 |
|
hkrish
|
cc2e1921f9
|
Remove checks from boolean path operations
|
2014-02-14 22:51:34 +01:00 |
|
hkrish
|
ea29e65e6b
|
_tracePaths: Switch contours only if necessary
|
2014-02-14 22:50:55 +01:00 |
|
Jürg Lehni
|
2010fefcbe
|
Include importSVG() fix for Opera browser.
|
2014-02-12 09:47:43 +01:00 |
|
Jürg Lehni
|
568bb06853
|
Add comments about missing #importSVG() documentation.
|
2014-02-12 09:39:34 +01:00 |
|
hkrish
|
26ef85930d
|
_tracePaths: Calculate correct entry&exit tangents.
|
2014-02-11 19:18:54 +01:00 |
|
hkrish
|
099f2d411e
|
_tracePaths: Optimize contour selection a bit.
|
2014-02-10 22:13:03 +01:00 |
|
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 |
|
Jürg Lehni
|
5a131930fb
|
Add _dontNotify parameter to Matrix#reset() and use it in Item#applyMatrix()
|
2014-01-06 00:18:40 +01:00 |
|
Jürg Lehni
|
4a95f6e4a6
|
Some more optimizations for JS minifier and V8.
|
2014-01-05 21:07:11 +01:00 |
|
Jürg Lehni
|
1bf7107918
|
Fix issue in Point#getDirectedAngle()
|
2014-01-05 20:54:19 +01:00 |
|
Jürg Lehni
|
51eff78919
|
Minor PaperScript clean-ups.
|
2014-01-05 20:53:18 +01:00 |
|
Jürg Lehni
|
7291956155
|
Prevent unnecessary beans from being created.
|
2014-01-05 20:42:28 +01:00 |
|
Jürg Lehni
|
dd37704f2c
|
Use the same filtering for UpdateExpression and AssignmentExpression.
|
2014-01-05 20:23:11 +01:00 |
|
Jürg Lehni
|
cd7604952c
|
Filter out loop statements in operator overloading code, to optimize loop execution speed.
|
2014-01-05 20:15:57 +01:00 |
|
Jürg Lehni
|
6ad2105110
|
Replace delete in favor of setting to undefined to prevent V8 deoptimization.
|
2014-01-05 19:16:48 +01:00 |
|
Jürg Lehni
|
132f6df6c8
|
Prevent overriding of global variables with undefined values during development.
|
2014-01-05 18:57:36 +01:00 |
|
Jürg Lehni
|
73f857170d
|
Remove unused arguments._read value and rename _index to __index.
|
2014-01-05 18:34:08 +01:00 |
|
Jürg Lehni
|
706fe2c77d
|
Rearrange Base.read argument sequence.
options are used more often than length.
|
2014-01-05 18:31:24 +01:00 |
|
Jürg Lehni
|
cd6bfa0b77
|
Move Curve#getLength(from, to) to Curve#getPartLength(from, to).
Clears up the Curve#getLength() getter and removes the need for accessing arguments[]
|
2014-01-05 18:06:45 +01:00 |
|
Jürg Lehni
|
b66c41e1c9
|
Remove need for arguments[1] in Item#transform()
|
2014-01-05 18:05:47 +01:00 |
|
Jürg Lehni
|
8d08d3c014
|
Remove the need for arguments[0] in bounds getters.
|
2014-01-05 18:01:38 +01:00 |
|
Jürg Lehni
|
e3f3a9c9d2
|
Merge branch 'refs/heads/master' into v8-optimizations
|
2014-01-05 17:42:59 +01:00 |
|
Jürg Lehni
|
1d37944c89
|
Fix alpha support in new Color#toCSS() code.
|
2014-01-05 17:42:46 +01:00 |
|
Jürg Lehni
|
1ee5b2c126
|
Fix references to Bootstrap.js in comments.
|
2014-01-05 17:41:38 +01:00 |
|
Jürg Lehni
|
6cb25fafe3
|
Use changes in latest Straps.js to remove as many hidden parameters as possible.
Hidden parameters through arguments[] are bad news for JS optimizer engines.
|
2014-01-05 17:40:54 +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 |
|
Jürg Lehni
|
6ed264a775
|
No need to clamp colors in conversions, just make sure hue stays within 360°
|
2014-01-05 05:10:42 +01:00 |
|
Jürg Lehni
|
ea63d4c288
|
Merge branch 'refs/heads/master' into v8-optimizations
Conflicts:
src/core/Base.js
src/style/Color.js
|
2014-01-05 05:01:13 +01:00 |
|
Jürg Lehni
|
22e62a0527
|
Only expose globals if they are in use in the PaperScript code.
|
2014-01-04 22:22:19 +01:00 |
|
Jürg Lehni
|
227d511fc0
|
Only include the global handlers in the return statement that actually seem to be defined.
|
2014-01-04 22:10:16 +01:00 |
|
Jürg Lehni
|
4302682c1c
|
Implement a better way of handling exceptions in PaperScript on Firefox and Chrome.
Use dynamically inserted script tag rather than compiled function since Firefox reports correct line numbers there.
|
2014-01-04 21:57:29 +01:00 |
|
Jürg Lehni
|
9dea3f3b74
|
Implement Color component clamping for color conversion.
|
2014-01-04 19:10:52 +01:00 |
|
Jürg Lehni
|
42bed58624
|
Fix scoping issues in PaperScript code.
|
2014-01-04 19:01:17 +01:00 |
|
Jürg Lehni
|
0dddd897ab
|
Remove internal clamping of color values to facilitate proper mathematical calculations with colors.
Clamp only when producing CSS values. Closes #271.
|
2014-01-04 18:16:52 +01:00 |
|
Jürg Lehni
|
bd4f48ca1a
|
Fix bounds check for mousemove events.
Closes #369
|
2014-01-04 17:33:20 +01:00 |
|
Jürg Lehni
|
e22fa3a664
|
Update copyright notice.
|
2014-01-04 01:47:16 +01:00 |
|
Jürg Lehni
|
4594b66fd6
|
Fix comments.
|
2014-01-03 19:45:00 +01:00 |
|
Jürg Lehni
|
de939ab939
|
Clean up code and comments.
|
2014-01-03 18:31:07 +01:00 |
|
Jürg Lehni
|
57f1763abe
|
Merge branch 'refs/heads/paperscript-refactoring'
Conflicts:
src/core/PaperScope.js
|
2014-01-03 12:34:07 +01:00 |
|
Jürg Lehni
|
541ac6acce
|
Shorten code a bit.
|
2014-01-02 21:47:20 +01:00 |
|
Jürg Lehni
|
ad34bbf7aa
|
Bail out of Item#transform() immediately if there is nothing to do.
|
2014-01-02 21:47:00 +01:00 |
|
Jürg Lehni
|
c197f531a4
|
Implement options.asString for Item#exportJSON()
|
2013-12-30 23:34:19 +01:00 |
|
Jürg Lehni
|
6a11547942
|
Fix issue in Curve.getLength() for linear curves with sub-ranges.
Closes #376.
|
2013-12-30 14:20:05 +01:00 |
|
Jürg Lehni
|
6654dca6bf
|
Improve precision of Numerical.findRoot()
|
2013-12-30 14:18:33 +01:00 |
|
Jürg Lehni
|
f97056e4b7
|
Change the way PaperScripts are executed in Node.js
Requiring a PaperScript returns an initialize method which receives the Canvas argument.
|
2013-12-29 16:36:23 +01:00 |
|
Jürg Lehni
|
35890383d8
|
Merge branch 'refs/heads/paperscript-refactoring' into v8-optimizations
|
2013-12-29 15:54:54 +01:00 |
|
Jürg Lehni
|
8395541298
|
Clean up docs and fix spelling mistakes.
|
2013-12-29 15:44:26 +01:00 |
|
Jürg Lehni
|
976b24b34c
|
Execute PaperScript using new Function() rather than eval() and with() {}
This results in some impressive speeding improvements, as modern JS engines are finally able to optimize the resulting code.
|
2013-12-29 15:32:23 +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 |
|
Jürg Lehni
|
5f466bbc7e
|
Move documentation for PaperScope#tools to the right place.
|
2013-12-28 22:48:50 +01:00 |
|