Jürg Lehni
|
5beb0f17ed
|
Fix hit-testing on paths with a matrix that is not the identity.
|
2013-11-26 23:13:11 +01:00 |
|
Jürg Lehni
|
97d94e8401
|
Allow Path#transformContent to be set to false too.
|
2013-11-26 23:12:55 +01:00 |
|
Jürg Lehni
|
f3832e0780
|
Implement setters for Matrix#translation, #rotation and #scaling.
Propagating the changes down to the owning Item too.
|
2013-11-26 19:28:18 +01:00 |
|
Jürg Lehni
|
b96f9ff57b
|
Rearrange method sequence in Item.
|
2013-11-26 19:27:09 +01:00 |
|
Jürg Lehni
|
56f25e8742
|
Implement change propagation in matrices.
|
2013-11-26 19:03:58 +01:00 |
|
Jürg Lehni
|
8e44049f42
|
Clean up smooth() code.
|
2013-11-26 17:32:52 +01:00 |
|
Jürg Lehni
|
78e4f3e1b2
|
Fix recently introduced issue with Node.js
|
2013-11-26 17:32:41 +01:00 |
|
Jürg Lehni
|
adac126e6c
|
Rename Ast -> AST
|
2013-11-25 19:34:39 +01:00 |
|
Jürg Lehni
|
d079e179ac
|
Fix Path#arcBy(to, boolean)
|
2013-11-25 01:04:51 +01:00 |
|
Jürg Lehni
|
02f46b7ac2
|
Prevent issues with repeated PaperScript execution on same canvas and HiDPI related scaling.
|
2013-11-24 23:08:08 +01:00 |
|
Jürg Lehni
|
da9e1f8de7
|
Define Project#isEmpty()
|
2013-11-24 22:53:41 +01:00 |
|
hkrish
|
d64df44a78
|
Correct tolrance check (±EPSILON) in numerical solving methods.
|
2013-11-24 21:40:22 +01:00 |
|
Jürg Lehni
|
ea62b570f3
|
Handle _dontFire for all component types.
|
2013-11-24 16:43:07 +01:00 |
|
msand
|
22a918190d
|
Fix indent.
|
2013-11-24 17:36:35 +02:00 |
|
msand
|
3b22f185ce
|
Fix to make sure that attribute methods exists before calling. Check of hidpi attribute in canvas was crashing in Node.js, as the getAttribute method is undefined in node-canvas.
|
2013-11-24 17:26:09 +02:00 |
|
Jürg Lehni
|
af4410953f
|
Various clean-ups regarding the handling of activeLayer, JSON deserialization, DOM insertion and and layer reusing.
JSON deserialization does no longer insert items into DOM twice now, and should therefore be faster.
|
2013-11-24 16:25:13 +01:00 |
|
msand
|
900cea3123
|
Fix async loading of PaperScript to use correct scope.
|
2013-11-24 17:19:45 +02:00 |
|
Jürg Lehni
|
42ec121c0a
|
Optimize Base#merge() to not use Base#each()
|
2013-11-24 15:03:51 +01:00 |
|
hkrish
|
274f1a4b55
|
Sort sub-paths before 'reorienting' during boolean calculations
|
2013-11-24 13:32:01 +01:00 |
|
Jürg Lehni
|
f7a473a598
|
Make sure color objects are passed to change events also on color components.
|
2013-11-24 00:53:12 +01:00 |
|
Jürg Lehni
|
8f66f8ac61
|
Add support for color components.
|
2013-11-24 00:46:04 +01:00 |
|
Jürg Lehni
|
d56e5552b0
|
Handle RGB alpha correctly.
|
2013-11-24 00:29:13 +01:00 |
|
Jürg Lehni
|
b8b02417a0
|
Implement proper parsing of rgb / rgba CSS strings.
|
2013-11-24 00:23:32 +01:00 |
|
Jürg Lehni
|
847529eca7
|
Add support for hex output to Color#toCSS()
|
2013-11-23 23:51:59 +01:00 |
|
Jürg Lehni
|
baa022237c
|
Expose Palette#components and #values.
|
2013-11-23 23:00:19 +01:00 |
|
Jürg Lehni
|
8f4b70a7d3
|
Minor clean up.
|
2013-11-14 14:42:28 +01:00 |
|
hkrish
|
492e78df7d
|
Handle intersection special case, when two curves' start and end points overlap
|
2013-11-11 21:20:32 +01:00 |
|
Jürg Lehni
|
1f98d72c5b
|
Switch HiDPI on by default.
Allow deactivation by setting the hidpi attribute to "off" on the canvas.
|
2013-11-06 15:32:08 +01:00 |
|
Jürg Lehni
|
5439f6ba45
|
We need to take pixel ratio into account when directly blitting blend-modes onto canvas.
|
2013-11-06 13:11:54 +01:00 |
|
Jürg Lehni
|
1049214126
|
Remove ctx.currentPath caching again, since it has the current affine transformation factored in and is thus useless to us.
|
2013-11-06 12:53:10 +01:00 |
|
Jürg Lehni
|
8d7fc43de2
|
Implement proper support for HiDPI screens.
For performance reason optional for now, activated by setting the hidpi attribute on the canvas element.
|
2013-11-06 11:54:05 +01:00 |
|
Jürg Lehni
|
b514d04f58
|
Export Http so the separate PaperScript scope can reach it.
|
2013-11-06 02:22:24 +01:00 |
|
Jürg Lehni
|
5630b7e415
|
Implement caching of drawn Canvas Path objects for better performance.
Already supported on recent Chrome and Safari.
|
2013-11-04 11:46:20 +01:00 |
|
Jürg Lehni
|
d6be004ee6
|
Setting a matrix on an item with #transformContent = true should immediately apply it.
|
2013-11-04 11:43:17 +01:00 |
|
Jürg Lehni
|
73fe0899ae
|
Improve exception when passing an invalid canvas.
|
2013-11-04 11:42:41 +01:00 |
|
Jürg Lehni
|
67d969ba56
|
Fix issue with displaying Stats.
|
2013-11-04 11:42:25 +01:00 |
|
Jürg Lehni
|
dba5a8a9e7
|
Deactivate Hi-DPI support for now.
|
2013-11-03 13:29:13 +01:00 |
|
Jürg Lehni
|
893f8fb2cc
|
Fix issues with importing full SVG documents where default styles would not be detected.
|
2013-11-03 13:20:51 +01:00 |
|
Jürg Lehni
|
1301aea47d
|
Fix issues with importing Ghostscript Tiger.
|
2013-11-03 12:52:00 +01:00 |
|
Jürg Lehni
|
4320ef76ff
|
Merge #document handling code into importGroup()
|
2013-11-03 12:36:43 +01:00 |
|
Jürg Lehni
|
7430c3f159
|
Fix #document importing for all browsers.
Safari doesn't know document.children...
|
2013-11-03 12:30:49 +01:00 |
|
Jürg Lehni
|
c5262e02bd
|
Make importing SVG documents work for documents with doctypes and comments in the beginning.
|
2013-11-03 12:23:20 +01:00 |
|
Jürg Lehni
|
1637a31ad7
|
Allow #importSVG() to import from File objects too.
|
2013-11-03 12:10:19 +01:00 |
|
Jürg Lehni
|
20253e58a7
|
Avoid multiple onLoad calls when remote SVG cannot be loaded.
|
2013-11-03 00:00:46 +01:00 |
|
Jürg Lehni
|
af1c6830e0
|
Small variable name change.
|
2013-11-02 21:26:32 +01:00 |
|
Jürg Lehni
|
056dcceacc
|
Implement #importSVG() from external URL.
|
2013-11-02 21:17:11 +01:00 |
|
Jürg Lehni
|
b8ab0f36f9
|
Remove unused local variable and comment.
|
2013-11-02 20:37:23 +01:00 |
|
Jürg Lehni
|
c797f2f0ad
|
Keep the native animation loop running as long as there are unprocessed callbacks.
|
2013-11-02 20:26:06 +01:00 |
|
Jürg Lehni
|
a6c175c82c
|
Improve DomEvent.requestAnimationFrame() code to only handle canvases that are actually visible.
|
2013-11-02 20:10:35 +01:00 |
|
Jürg Lehni
|
7e660b05e3
|
Avoid using the wrong PaperScope in keyboard events.
|
2013-11-02 14:36:44 +01:00 |
|
Jürg Lehni
|
4f32cc2eea
|
No need for RegExp group in match statement.
|
2013-11-02 13:25:03 +01:00 |
|
Jürg Lehni
|
7b1f118aed
|
Use same command sequence as in switch statement.
|
2013-11-02 09:45:11 +01:00 |
|
Jürg Lehni
|
97a29e6ada
|
Improve SVG path data parser.
|
2013-11-02 09:30:40 +01:00 |
|
Jürg Lehni
|
c99d13178b
|
Consider a Point or Size null if one of the components is null.
|
2013-11-01 19:25:41 +01:00 |
|
Jürg Lehni
|
4b97d3a6e0
|
Make sure that the default SVG settings are not lost on import.
|
2013-11-01 19:00:37 +01:00 |
|
Jürg Lehni
|
9b75362f3e
|
Always respect options.asString
|
2013-11-01 18:27:20 +01:00 |
|
Jürg Lehni
|
29c00584be
|
Fix SVG parsing issues with multiple concatenated coordinate values
e.g. "1.5.5", is to be read as "1.5" and ".5"
|
2013-11-01 17:56:16 +01:00 |
|
Jürg Lehni
|
ac862f9bc4
|
Some minor code clean up and variable renaming.
|
2013-11-01 17:55:06 +01:00 |
|
Jürg Lehni
|
132f54d362
|
Define Item#clear() as an alias for Item#removeChildren(), or Path#removeSegments() for paths.
|
2013-11-01 17:52:27 +01:00 |
|
Jürg Lehni
|
df80eb2f23
|
Define PaperScope#paper as a reference to the local scope.
And use it to fix Raster JSON example.
|
2013-11-01 11:46:31 +01:00 |
|
Jürg Lehni
|
c76dae5b06
|
Implement a new strategy for importing JSON, where it is imported into the item itself, not its children list, if the class match.
|
2013-11-01 11:26:11 +01:00 |
|
Jürg Lehni
|
70ae7486e9
|
Clean up white-space.
|
2013-10-31 12:17:34 +01:00 |
|
Jürg Lehni
|
2a9fe48cc9
|
Add options.matchShapes support to #exportSVG and improve documentation of various import / export functions.
|
2013-10-30 16:18:59 +01:00 |
|
Jürg Lehni
|
5d7c7a2409
|
Improve documentation of #hitTest()
|
2013-10-30 16:18:15 +01:00 |
|
Jürg Lehni
|
dc732da8d8
|
Clean up documentation for event handler functions on View and Tool.
|
2013-10-30 15:38:08 +01:00 |
|
Jürg Lehni
|
0ded3ae0ba
|
Implement PathItem#cubicCurveBy() and #quadraticCurveBy()
Closes #284.
|
2013-10-30 01:43:55 +01:00 |
|
Jürg Lehni
|
71a7781bdd
|
Fix comment.
|
2013-10-30 01:27:07 +01:00 |
|
Jürg Lehni
|
cabe253dea
|
Remove unused argument.
|
2013-10-30 01:26:05 +01:00 |
|
Jürg Lehni
|
2a88042315
|
Handle importing of SVG gradients for shapes, and drawing of canvas gradients correctly.
Closes #312.
|
2013-10-30 01:25:13 +01:00 |
|
Jürg Lehni
|
4869376c41
|
Fix issue with cloning gradient colors.
|
2013-10-30 00:41:14 +01:00 |
|
Jürg Lehni
|
eecf68b7c3
|
Clear ctx.shadowColor after ctx.fill() to avoid application to both fill and stroke.
Closes #314.
|
2013-10-30 00:00:04 +01:00 |
|
Jürg Lehni
|
db882748b1
|
Fix documentation of Point#angle.
Closes #320.
|
2013-10-29 23:37:05 +01:00 |
|
Jürg Lehni
|
dec7efc939
|
Remove unused variable center.
|
2013-10-29 22:02:29 +01:00 |
|
Jürg Lehni
|
6335393541
|
Remove unused function argument.
|
2013-10-29 22:01:49 +01:00 |
|
Jürg Lehni
|
f211c20e77
|
Make Palette code optional and only include id in paper-full.js
|
2013-10-29 21:56:00 +01:00 |
|
Jürg Lehni
|
4042d4fc2c
|
Only fire change events if values actually change.
|
2013-10-29 21:52:42 +01:00 |
|
Jürg Lehni
|
54a24d97b1
|
Fix typo.
|
2013-10-29 21:34:51 +01:00 |
|
Jürg Lehni
|
a3ec26dace
|
Improve handling of change events in Palette.
|
2013-10-29 21:34:12 +01:00 |
|
Jürg Lehni
|
4e34a27da4
|
Some more work on comments.
|
2013-10-29 21:20:19 +01:00 |
|
Jürg Lehni
|
1871e2f7c4
|
Improve comments.
|
2013-10-29 21:18:09 +01:00 |
|
Jürg Lehni
|
fd96447ac1
|
Share ellipse reading code between Shape.Ellipse and Path.Ellipse.
|
2013-10-29 21:15:28 +01:00 |
|
Jürg Lehni
|
aca9968164
|
Simplify Shape#_contains() code.
|
2013-10-29 21:09:11 +01:00 |
|
Jürg Lehni
|
4333334014
|
Simplify Shape#hitTest() code.
|
2013-10-29 21:06:58 +01:00 |
|
Jürg Lehni
|
6fba727600
|
Add DOCS comments.
|
2013-10-29 21:00:24 +01:00 |
|
Jürg Lehni
|
f8d960d834
|
option.tolerance should always be defined in _hitTest()
|
2013-10-29 21:00:17 +01:00 |
|
Jürg Lehni
|
ae4ddaeae5
|
Implement correct hit-tests for rounded rectangle Shape items.
|
2013-10-29 20:58:30 +01:00 |
|
Jürg Lehni
|
c43752dc3e
|
Use #hasFill() and #hasStroke() more broadly and avoid drawing strokes when strokeWidth is set to 0.
|
2013-10-29 20:05:39 +01:00 |
|
Jürg Lehni
|
94623f6d3f
|
Keep radius and size in sync in Path.Rectangle.
|
2013-10-29 19:42:33 +01:00 |
|
Jürg Lehni
|
b86b66d43d
|
Improve documentation.
|
2013-10-29 19:25:10 +01:00 |
|
Jürg Lehni
|
7f8d9d9e90
|
Support options.tolerance in Shape#hitTest()
|
2013-10-29 19:17:42 +01:00 |
|
Jürg Lehni
|
9d60662a28
|
Check for the occurrence of 'radius' rather than 'center' when deciding to read a center / radius pair for ellipses.
|
2013-10-29 18:53:55 +01:00 |
|
Jürg Lehni
|
c3aed5277d
|
Use center and radius in all ellipse code, rather than bounding rect.
Simplifies things.
|
2013-10-29 18:10:30 +01:00 |
|
Jürg Lehni
|
fc9cad009f
|
Implement CompoundPath#_getWindings() and move #_contains() code for both Path and CompoundPath to PathItem.
|
2013-10-29 17:57:25 +01:00 |
|
Jürg Lehni
|
04286bc1e0
|
Fix issue with param.trackTransforms
We can only pop() if we push()
|
2013-10-29 17:56:43 +01:00 |
|
Jürg Lehni
|
b2188be567
|
Make sure _globalMatrix is not set to false values in Item#rasterize().
|
2013-10-29 17:37:45 +01:00 |
|
Jürg Lehni
|
c765e26a08
|
Implement SVGImport options support.
For now only options.expandShapes, which expands Shape items to Path items.
|
2013-10-29 16:47:02 +01:00 |
|
Jürg Lehni
|
d649b1bb21
|
Define insert argument for Path#toShape() and Shape#toPath()
|
2013-10-29 16:45:50 +01:00 |
|
Jürg Lehni
|
77b142bec4
|
Allow the SVGExport code to assume that the option object is always defined.
|
2013-10-29 16:41:16 +01:00 |
|
Jürg Lehni
|
dc3bd30ee3
|
Rename some variables and clean up code a bit more.
|
2013-10-29 16:19:39 +01:00 |
|
Jürg Lehni
|
de01ef1c21
|
Clean up code from previous merge.
|
2013-10-29 16:09:35 +01:00 |
|