Jürg Lehni
|
979428b6dc
|
Merge branch 'refs/heads/intersect-fix'
Conflicts:
src/path/Curve.js
|
2013-10-29 15:15:59 +01:00 |
|
Jürg Lehni
|
fb27f92ede
|
Clean up intersection-fix code.
|
2013-10-29 10:16:20 +01:00 |
|
Jürg Lehni
|
8ae1105236
|
Merge branch 'refs/heads/intersection-fix'
|
2013-10-29 10:03:26 +01:00 |
|
Jürg Lehni
|
5a462f42b7
|
Improve some comments / docs.
|
2013-10-29 09:42:59 +01:00 |
|
Jürg Lehni
|
c579433b3d
|
Fix bug in Raster.onLoad()
It was executing in wrong scope on websites with multiple scopes.
|
2013-10-29 09:42:58 +01:00 |
|
Jürg Lehni
|
160fe25cd1
|
Improve documentation of #importSVG() methods.
|
2013-10-29 09:42:58 +01:00 |
|
hkrish
|
bec1a91812
|
Calculate correct parameter for Curve-Line intersections
|
2013-10-29 00:10:20 +01:00 |
|
Jonathan Puckey
|
61ecf44140
|
Fix spelling mistake in CanvasView#initialize. Closes #316.
|
2013-10-25 17:15:54 +02:00 |
|
Jürg Lehni
|
b4850b572a
|
Improve variable naming.
|
2013-10-20 01:57:11 +02:00 |
|
Jürg Lehni
|
cc201655af
|
Fix comment.
|
2013-10-20 01:54:53 +02:00 |
|
Jürg Lehni
|
e6ef5e7e17
|
Fix hit-test for compound paths again.
|
2013-10-20 01:54:20 +02:00 |
|
Jürg Lehni
|
ddeacb1763
|
More code clean up.
|
2013-10-20 01:41:31 +02:00 |
|
Jürg Lehni
|
caa50236dd
|
Simplify winding algorithm by reusing orientation check.
|
2013-10-20 01:24:07 +02:00 |
|
Jürg Lehni
|
7c4518e4d0
|
Clean up some variable names.
|
2013-10-20 00:59:12 +02:00 |
|
Jürg Lehni
|
b4651a18c6
|
Implement #getItem() on Project and Item, similar to #getItems() but returning only the first match.
|
2013-10-19 13:02:53 +02:00 |
|
Jürg Lehni
|
1a645a1adb
|
Implement function callbacks for item matching.
|
2013-10-19 12:38:36 +02:00 |
|
Jürg Lehni
|
4fb6a5d949
|
Implement #getItems(match) on Project and Item as a simple and efficient query interface.
|
2013-10-19 12:27:13 +02:00 |
|
Jürg Lehni
|
49a8ea24af
|
No need for Object.getPrototypeOf().
Simply point _filtering directly at the original object.
|
2013-10-19 12:08:04 +02:00 |
|
Jürg Lehni
|
d59ed6d7c0
|
Implement a way to use fast _filtered inheritance trick and still use #hasOwnProperty() checks in Base#_set()
|
2013-10-19 12:05:53 +02:00 |
|
Jürg Lehni
|
0b7e128426
|
Only rely on _drawCount for drawing related things, and caching where it allows.
Project#selectedItems was out of sync until the next draw loop.
|
2013-10-18 21:52:22 +02:00 |
|
Jürg Lehni
|
5db6db3b76
|
Improve selection serialization to JSON and fix issue in deserialization.
|
2013-10-18 21:12:25 +02:00 |
|
Jürg Lehni
|
782f5c8f7e
|
Fix issue with reading selected segment points from JSON when there are no handles.
The segment short form was misunderstood by the constructor.
|
2013-10-18 20:58:06 +02:00 |
|
Jürg Lehni
|
f7c21144a1
|
Improve handling of strokes in Path#hitTest().
Have it match stroke locations when option.stroke is set even when the path has no stroke.
|
2013-10-18 20:27:47 +02:00 |
|
Jürg Lehni
|
b91c8f93f8
|
Remove Curve. _getEdgeSum() again, and inline code in Path.isClockwise()
|
2013-10-18 19:51:54 +02:00 |
|
Jürg Lehni
|
1fc9f882ca
|
Fix a minor bug in CompoundPath#contains(), improve comments and clean up code.
|
2013-10-18 19:49:05 +02:00 |
|
Jürg Lehni
|
304ecbc3be
|
Define compoundChildren hitTest option to get matching children instead of parent.
|
2013-10-18 15:40:41 +02:00 |
|
Jürg Lehni
|
f8106ae18f
|
Improve code handling special winding cases.
|
2013-10-18 15:20:32 +02:00 |
|
Jürg Lehni
|
75a209c002
|
Handle more special cases in winding algorithm.
|
2013-10-18 15:15:54 +02:00 |
|
Jürg Lehni
|
5d0fd8f970
|
Implement Style#windingRule and use it in Path#contains().
|
2013-10-18 14:54:13 +02:00 |
|
Jürg Lehni
|
4f27be8f12
|
Include new, improved point in path algorithm based on winding number.
It's also possible to switch to using the canvas's native isPointInPath() through options.nativeContains
|
2013-10-18 14:22:59 +02:00 |
|
Jürg Lehni
|
eae526f38c
|
Update Numerical.solveQuadratic() / solveCubic() to optionally filter results to be in a given range.
|
2013-10-18 13:52:01 +02:00 |
|
Jürg Lehni
|
523b9ea592
|
Fix syntax error.
|
2013-10-18 11:50:36 +02:00 |
|
Jürg Lehni
|
89704243b1
|
Simplify Numerical.solveQuadratic()
|
2013-10-18 11:48:23 +02:00 |
|
Jürg Lehni
|
a07538b205
|
Use same tolerance in Curve.isLinear() as in Curve#isLinear().
|
2013-10-17 20:19:34 +02:00 |
|
Jürg Lehni
|
085fa3e1c6
|
Set named arguments at the end, since some depend on geometry to be defined (e.g. #clockwise).
|
2013-10-17 14:03:05 +02:00 |
|
Jürg Lehni
|
73d2c34088
|
Implement item-level #equals() method and clean up other equals methods.
|
2013-10-17 13:08:54 +02:00 |
|
Jürg Lehni
|
9976033655
|
Implement serialization of selection.
|
2013-10-17 12:04:11 +02:00 |
|
Jürg Lehni
|
3958d35f28
|
Change behavior of Path#fullySelected.
Setting it on empty paths does the same as Path#selected.
|
2013-10-17 12:03:46 +02:00 |
|
Jürg Lehni
|
c2a34d9f1f
|
Implement an easier approach in serialization to handle the default value of leading.
|
2013-10-17 11:53:34 +02:00 |
|
Jürg Lehni
|
1eb6b49e8a
|
Allow serialization values to mark themselves as _default.
Solves unnecessarily serialized leading values.
|
2013-10-17 11:47:46 +02:00 |
|
Jürg Lehni
|
efe8bab129
|
Revert previous Style change.
|
2013-10-17 11:40:44 +02:00 |
|
Jürg Lehni
|
2324fbc565
|
Define correct style default for leading.
|
2013-10-17 11:14:34 +02:00 |
|
Jürg Lehni
|
922f224cbd
|
Finally remove the _gradientMatrix hack.
|
2013-10-16 23:47:21 +02:00 |
|
Jürg Lehni
|
9956a6ff51
|
Implement Shape#toPath(), analogue to Path#toShape().
This way is much simpler though.
|
2013-10-16 23:44:50 +02:00 |
|
Jürg Lehni
|
51cf1cfec6
|
Clean up Path#toShape().
|
2013-10-16 23:35:50 +02:00 |
|
Jürg Lehni
|
772f8175e4
|
Remove path to shape guess-work from SVGExport.
|
2013-10-16 23:21:29 +02:00 |
|
Jürg Lehni
|
c4c7a37993
|
Implement Path#toShape(), Segment#isColinear(), Segment#isOrthogonal() and Segment#isArc().
|
2013-10-16 23:10:03 +02:00 |
|
Jürg Lehni
|
751dfe52ea
|
SVG: Define additional orthogonal check when determining shape type.
Closes #283.
|
2013-10-16 17:06:29 +02:00 |
|
Jürg Lehni
|
be5a73a61d
|
SVG: Implement support for Shape.
|
2013-10-16 16:47:00 +02:00 |
|
Jürg Lehni
|
8ab6c61b0d
|
Rename Shape#type to Shape#shape, to avoid clash with Item#type.
|
2013-10-16 16:46:22 +02:00 |
|
Jürg Lehni
|
3c0d1f26db
|
Replace accidental semi-colon.
|
2013-10-16 16:14:37 +02:00 |
|
Jürg Lehni
|
953bba4c7b
|
SVG: Use Shape instead of Path constructors for primitive shapes.
|
2013-10-16 16:12:46 +02:00 |
|
Jürg Lehni
|
392cef3961
|
Add missing colon.
|
2013-10-16 16:11:08 +02:00 |
|
Jürg Lehni
|
b581c84d8b
|
Move CompoundPath#reduce() to Item#reduce().
|
2013-10-16 16:10:28 +02:00 |
|
Jürg Lehni
|
c0c5695b5a
|
Fix indentation.
|
2013-10-16 16:09:34 +02:00 |
|
Jürg Lehni
|
fb6ff59218
|
Improve ProxyContext: Use JSON.stringify() for rendering values correctly, and streamline code.
|
2013-10-16 16:09:11 +02:00 |
|
Jürg Lehni
|
d45ba19914
|
SVG: Use new Path.Ellipse constructor.
|
2013-10-16 15:28:59 +02:00 |
|
Jürg Lehni
|
01a0920c92
|
SVG: Fix faulty parsing of matrix values.
|
2013-10-16 15:27:49 +02:00 |
|
Jürg Lehni
|
f63cb40723
|
Fix SVG error in importing transformed gradients with highlights.
|
2013-10-16 15:09:23 +02:00 |
|
Jürg Lehni
|
1decf451b4
|
Implement efficient filtering of already consumed values in argument reading from object literals.
|
2013-10-16 15:08:44 +02:00 |
|
Jürg Lehni
|
9eb1c104da
|
Implement Shape#clone()
|
2013-10-16 15:04:50 +02:00 |
|
Jürg Lehni
|
b35296ef3e
|
Improve Shape.Ellipse to support center & radius parameters, and update documentation.
|
2013-10-16 15:04:37 +02:00 |
|
Jürg Lehni
|
b325aebc77
|
Docs: More smaller fixes.
|
2013-10-16 15:03:29 +02:00 |
|
Jürg Lehni
|
543609c0c6
|
Have Path.Ellipse constructor support negative radius values correctly.
|
2013-10-16 14:25:14 +02:00 |
|
Jürg Lehni
|
c945bf7908
|
Docs: Various smaller clean ups.
|
2013-10-16 14:20:13 +02:00 |
|
Jürg Lehni
|
3af179e2cf
|
Docs: Improve Path constructors.
|
2013-10-16 14:19:25 +02:00 |
|
Jürg Lehni
|
41d6650666
|
Add support for named center & radius arguments to Path.Ellipse.
|
2013-10-16 13:32:40 +02:00 |
|
Jürg Lehni
|
4b636dd31c
|
Clean up Path constructors code.
|
2013-10-16 13:26:08 +02:00 |
|
Jürg Lehni
|
8fdcbce5ac
|
Improve argument reading in Segment.
|
2013-10-16 13:15:08 +02:00 |
|
Jürg Lehni
|
ac5c45906f
|
Update to latest straps.js, with changed Base.create() method.
|
2013-10-14 23:37:43 +02:00 |
|
Jürg Lehni
|
2263afea59
|
Start implementing rounded rectangles in Shape.Rectangle.
|
2013-10-14 19:57:28 +02:00 |
|
Jürg Lehni
|
7285ec636a
|
Improve CanvasView constructor.
Support canvas / size arguments, but not both together, and throw exception if both fail.
|
2013-10-14 16:06:30 +02:00 |
|
Jürg Lehni
|
a3d0e0d462
|
Clean up throw statements.
Never throw plain strings.
|
2013-10-14 16:05:50 +02:00 |
|
Jürg Lehni
|
b9ba2364fe
|
Move Shape#isEmpty() to right place.
|
2013-10-14 09:15:34 +02:00 |
|
Jürg Lehni
|
198305b75c
|
Remove doc comment since Item#isEmpty() is already documented, and move it to an inline comment.
|
2013-10-14 09:14:59 +02:00 |
|
Oliver Jones
|
df7f1fe874
|
Override default isEmpty method for Shape
Fixes (new Group([new Shape.Rectangle(...)])).bounds throwing ReferenceError when using Item's isEmpty
|
2013-10-12 19:28:45 +01:00 |
|
hkrish
|
e20ff3b0a1
|
Calculate correct parameter for linear segments
|
2013-10-11 22:03:07 +02:00 |
|
hkrish
|
f0434548c6
|
Fix regression issues with Curve-Line intersection code
|
2013-10-11 20:48:34 +02:00 |
|
Jürg Lehni
|
dfa1687a90
|
Adapt to new bower_components directory.
|
2013-10-11 00:20:30 +02:00 |
|
Jürg Lehni
|
60732e8456
|
No need for default parameter.
|
2013-10-10 23:09:18 +02:00 |
|
Jürg Lehni
|
c68a7d33da
|
Switch from options.browser and options.node to options.environment
|
2013-10-10 23:09:00 +02:00 |
|
Jürg Lehni
|
6b45a9382c
|
Replace typeof x !== 'undefined' checks with typeof x === 'object'.
|
2013-10-10 20:36:33 +02:00 |
|
Jürg Lehni
|
94fac965ec
|
Minor improvement in Base.equals()
|
2013-10-10 20:15:56 +02:00 |
|
Jürg Lehni
|
c5e43778bc
|
Allow the minification of the undefined variable by defining it as a local parameter inside the paper scope.
|
2013-10-10 20:15:32 +02:00 |
|
Jürg Lehni
|
d158056899
|
Optimise DomElement.getPrefixValue()
|
2013-10-10 16:40:46 +02:00 |
|
Jürg Lehni
|
22e13df102
|
Implement support for Hi-DPI canvas on Retina screens.
|
2013-10-10 16:31:24 +02:00 |
|
Jürg Lehni
|
03efd56df7
|
Fix strange issue on iOS 7 where a simple regular expression appears to cause a complete browser crash.
Closes #306.
|
2013-10-10 14:47:27 +02:00 |
|
Jürg Lehni
|
24e46bee60
|
Merge branch 'refs/heads/boolean-fix'
|
2013-10-08 20:50:47 +02:00 |
|
Jürg Lehni
|
0860cdd941
|
Clean up code a bit.
|
2013-10-08 20:49:24 +02:00 |
|
Jürg Lehni
|
367aa8ea28
|
Do not allow numeric values for Item#name.
Closes #298.
|
2013-10-08 20:38:16 +02:00 |
|
Jürg Lehni
|
921a68e4a2
|
Rename _removeFromNamed to _removeNamed.
|
2013-10-08 20:25:26 +02:00 |
|
Jürg Lehni
|
9103c19e6f
|
Fix issues with #dashOffset when emulating native dashes.
Closes #303.
|
2013-10-08 10:50:59 +02:00 |
|
Jürg Lehni
|
9c98ef8316
|
Have paper.install() override existing definitions.
And include a warning about this approach in the documentation.
|
2013-09-23 11:49:23 -07:00 |
|
Jürg Lehni
|
1ee6bb7e79
|
Use isZero() when checking for straight curves in Curve.getLength()
|
2013-09-23 08:13:32 -07:00 |
|
Jürg Lehni
|
509ac48951
|
Fix indentation levels.
|
2013-09-22 18:18:22 -07:00 |
|
Jürg Lehni
|
cae4520665
|
Simplify addCurveLineIntersections() code.
|
2013-09-22 18:18:03 -07:00 |
|
Jürg Lehni
|
5f8c00fe8d
|
Start implementing Item#globalToLocal() and #localToGlobal()
|
2013-09-22 18:04:27 -07:00 |
|
hkrish
|
8434b4bebe
|
Fix: Syntax error!
|
2013-09-22 17:49:10 +02:00 |
|
hkrish
|
f9b4321a56
|
Boolean -fix: Interpolate to find the parameter of intersection in linear curve segments
|
2013-09-21 17:26:14 +02:00 |
|
hkrish
|
0a22211393
|
Conform to paperjs coding style.
|
2013-09-21 15:26:14 +02:00 |
|