Jürg Lehni
|
9c09be90f3
|
Fix white-space mix-up.
|
2014-02-20 19:52:09 +01:00 |
|
Jürg Lehni
|
64fa328f65
|
Move all winding related code to PathItem.Boolean and introduce __options.booleanOperations switch.
Fall back to __options.nativeContains if __options.booleanOperations is not included.
|
2014-02-20 19:50:37 +01:00 |
|
Jürg Lehni
|
81b3b756c9
|
Remove need for private scope in boolean operations code.
|
2014-02-20 19:35:11 +01:00 |
|
Jürg Lehni
|
2a4696b865
|
More clean-up in computeBoolean() code.
|
2014-02-20 19:10:46 +01:00 |
|
Jürg Lehni
|
ec621eef81
|
Cleanup computeBoolean() code.
|
2014-02-20 18:44:38 +01:00 |
|
Jürg Lehni
|
c6329e89bb
|
Implement Curve#isHorizontal()
|
2014-02-20 18:44:23 +01:00 |
|
Jürg Lehni
|
b48321e78d
|
Some more code and comments clean-up.
|
2014-02-20 18:00:56 +01:00 |
|
Jürg Lehni
|
bdcfb60a9a
|
Improve handling of tMin and tMax in self-intersection code in PathItem#getIntersections()
|
2014-02-20 17:55:39 +01:00 |
|
Jürg Lehni
|
f782abd0d7
|
Some more clean-up in PathItem#getIntersections()
|
2014-02-20 17:49:19 +01:00 |
|
Jürg Lehni
|
5d2ff7e9ff
|
Merge PathItem#getIntersections() and PathItem. _filterIntersections()
|
2014-02-20 17:03:18 +01:00 |
|
Jürg Lehni
|
0ce89fa47c
|
Simplify self-intersecting code in PathItem#getIntersections() by passing on tMin, tMax, uMin & uMax to Curve#getIntersections().
|
2014-02-20 17:02:32 +01:00 |
|
Jürg Lehni
|
4ec3daf4d1
|
Merge PathItem#getIntersections() and #getSelfIntersections()
|
2014-02-20 16:26:47 +01:00 |
|
Jürg Lehni
|
e11b6138bd
|
Rename PathItem. _conditionIntersections() to _filterIntersections() and clean up code.
|
2014-02-20 15:38:31 +01:00 |
|
Jürg Lehni
|
f1765d1cbf
|
Implement CurveLocation#equals()
|
2014-02-20 15:37:49 +01:00 |
|
Jürg Lehni
|
d9efb888bc
|
Clean up Point#equals() code.
|
2014-02-20 15:37:38 +01:00 |
|
Jürg Lehni
|
5e7b15c64e
|
Remove need for sorted list of intersection curves, use variables instead.
|
2014-02-20 15:17:39 +01:00 |
|
Jürg Lehni
|
b960cbc07b
|
Further simplifications in PathItem._tracePaths()
|
2014-02-20 15:17:08 +01:00 |
|
Jürg Lehni
|
abb2b0dec9
|
Simplify and merge conditions for path removal in _tracePaths()
|
2014-02-20 14:16:04 +01:00 |
|
Jürg Lehni
|
50433400f0
|
More clean-up and some variable renaming.
|
2014-02-20 14:13:43 +01:00 |
|
Jürg Lehni
|
de6650a6ca
|
More simplifications in PathItem._getWinding()
|
2014-02-20 13:46:10 +01:00 |
|
Jürg Lehni
|
a2941472b5
|
More PathItem._tracePaths() streamlining.
Work in progress.
|
2014-02-20 10:16:00 +01:00 |
|
Jürg Lehni
|
2a58828e81
|
Fix issue with curve tangents in rare edge-cases.
We should fix Curve.evaluate() for these instead.
|
2014-02-20 03:22:38 +01:00 |
|
Jürg Lehni
|
b89fc84789
|
Start simplifying PathItem#_tracePaths() code by using improved Curve#evaluate() and relying on Path#reduce().
|
2014-02-20 02:52:20 +01:00 |
|
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 |
|
Matěj Grabovský
|
890eda9197
|
Fix typo in comment
|
2014-01-15 18:04:51 +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 |
|