Commit graph

615 commits

Author SHA1 Message Date
Jürg Lehni
d6ce4705b7 Travis CI: Use Arial in all SVG tests and reduce tolerance. 2016-03-17 11:35:06 +01:00
Jürg Lehni
17555b1879 Travis CI: See if using Arial solves the failing test. 2016-03-17 11:26:21 +01:00
Jürg Lehni
f7bb96e8b9 Fix #1000: Improve calculation of length of straight curves.
Support sub-ranges now too, through Curve.subdivide()
2016-03-17 11:24:20 +01:00
Jürg Lehni
d93aca6b5c Refactor GradientStop: Improve handling of optionally defined color and rampPoint.
Relates to https://github.com/paperjs/paper.js/issues/1001#issuecomment-197557990
2016-03-17 09:38:42 +01:00
Jürg Lehni
d52a6f3107 SVG Import: Add more tests.
One currently failing.
2016-03-15 19:13:16 +01:00
Jürg Lehni
84d2a2f908 SVG Import: Fix issues with viewBox. 2016-03-15 19:00:35 +01:00
Jürg Lehni
7a4794dacf Add more unit tests for SvgImport.
Some currently failing.
2016-03-15 18:52:38 +01:00
Jürg Lehni
da7d0d8f75 Implement Path#splitAt(offset)
Also make sure the deprecated Path#split(offset) works as it used to. Relates to #563
2016-03-14 18:59:09 +01:00
Jürg Lehni
69c34707e7 fix #994: Revert commit b5af47a7b1
Revert back to correct implementation of Path#getArea() and implement unit tests for it.
2016-02-26 12:58:50 +01:00
Jürg Lehni
1cb291690d Implement unit tests for #991
Tests for item.addChildren()/removeChildren(), some currently failing.
2016-02-23 11:55:03 +01:00
Jürg Lehni
50bd5bee6f SVG: Add comments explaining IE related changes in #984 2016-02-20 00:19:36 +01:00
Jürg Lehni
6df4602b2b Fix #977: Implement unit-tests. 2016-02-16 20:52:07 +01:00
Jürg Lehni
3d330da4fc Fix failing unit tests. 2016-02-15 09:21:11 +01:00
Jürg Lehni
08e51b5ca4 Fix failing SVG unit test. 2016-02-15 08:42:59 +01:00
Jürg Lehni
6f4890c63c Implement new options to control bounding box in SVG Export
And use it to support SvgExport unit tests. Relates to #972
2016-02-15 00:13:38 +01:00
Jürg Lehni
0e2498bdce Switch to PathItem.create() in unit tests. 2016-02-14 23:22:39 +01:00
Jürg Lehni
dba4eb371d SvgImport: Implement options.insert to control insertion.
Also use settings.insertItems for faster import. Closes #763
2016-02-14 22:51:50 +01:00
Jürg Lehni
8d5c922c50 Simplify code from #971 and activate unit test for it again. 2016-02-14 22:15:55 +01:00
Jürg Lehni
01fade8c08 Implement more unit tests for PaperScope#settings.insertItems 2016-02-14 22:04:40 +01:00
Jürg Lehni
4e7fa2f04e Implement PaperScope#settings.insertItems
Controlling whether newly created items are automatically inserted into the scene graph.
2016-02-14 21:34:35 +01:00
Jürg Lehni
56dd636f22 JSON: Improve serialization and deserialization on objects other than Item.
Closes #392
2016-02-14 17:16:40 +01:00
Jürg Lehni
2025bd1a77 SvgImport: Implement onError() callback
Closes #969
2016-02-14 14:52:37 +01:00
Jürg Lehni
fa6c1f47b4 Hit-Test: Pass viewMatrix as argument instead of in options object. 2016-02-14 13:34:35 +01:00
Jürg Lehni
9c9f43d2c9 Implement failing test for #968 2016-02-14 12:44:03 +01:00
Jürg Lehni
4a947317fb Implement #hitTestAll() on Item and Project
Along with unit tests and documentation.
Closes #536
2016-02-14 12:39:35 +01:00
Jürg Lehni
3ee46ffc5c Matrix: Switch to a better implementation of #decompose()
This now also correctly handles skewing in SVG export.
2016-02-14 10:59:57 +01:00
Jürg Lehni
c3fff9fa83 Switch from new Base() to Base.set({}) where possible. 2016-02-13 23:10:09 +01:00
Jürg Lehni
009761d13c Boolean: Only compare segments when determining if paths are identitcal. 2016-02-13 22:58:42 +01:00
Jürg Lehni
3348fb736f Boolean: Implement proper handling of fully overlapping (identical) paths and sub-paths.
Closes #923, closes #958
2016-02-13 22:41:09 +01:00
Jürg Lehni
84a75e375a Remove unnecessary edge-case handling in CurveLocation#isCrossing()
Closes #951, closes #959
2016-02-12 20:52:19 +01:00
Jürg Lehni
e2bc83af5d Add test for #960 and improve fix a bit.
Closes #960
2016-02-12 20:19:40 +01:00
Jürg Lehni
80c8aae5bc Implement unit tests for Item#getItems() with overlapping / inside properties.
Relates to #961
2016-02-12 20:09:41 +01:00
Jürg Lehni
6d5d1ce077 Introduce Base.filter(), to copy and filter object properties. 2016-02-12 19:58:32 +01:00
Jürg Lehni
55c5f42716 Part 1 of large refactoring of bounds handling. 2016-02-12 17:59:37 +01:00
Jürg Lehni
cb79232e12 Travis CI: Use Arial in all tests. 2016-02-11 12:58:06 +01:00
Jürg Lehni
c0b39c4b8f Tests: Implement additional tests for SvgImport. 2016-02-11 12:51:48 +01:00
Jürg Lehni
df57c4adb9 SVGImport: Improve consistency of style handling. 2016-02-11 11:06:09 +01:00
Jürg Lehni
8542eb62b4 Gulp: Add test:browser task, to solve CORS issues on Chrome. 2016-02-11 10:05:21 +01:00
Jürg Lehni
9e8fcee8cd Change implementation of PathItem#flatten(flatness)
- flatness parameter specifies maximum allowed error instead of maximum allowed distance between point
- Parts that are already flat are not further flattened
- Corners are preserved

Closes #618
2016-02-10 14:58:40 +01:00
Jürg Lehni
ed4347714b Remove duplicate unit tests. 2016-02-10 13:26:40 +01:00
Jürg Lehni
0ae232e4ab Implement support for clip-masks in hit-testing.
Closes #671
2016-02-09 17:02:03 +01:00
Jürg Lehni
0371f66bda Do not snap curve points to t = 0 / 1 with epsilon
Closes #936. Also:
- Reduce CLIPPING_EPSILON to 1e-9 to fix errors that were masked by the snapping
- Implement unit tests for edge cases in #936
2016-02-06 15:12:35 +01:00
Jürg Lehni
a59a5354fb Clean-up unit test for #943 and add edge case from #944
See https://github.com/paperjs/paper.js/pull/944#issuecomment-180370569
2016-02-05 21:18:16 +01:00
Jürg Lehni
5a46620768 Merge branch 'winding-fix' into develop
; Conflicts:
;	src/path/PathItem.Boolean.js
2016-02-05 20:25:25 +01:00
iconexperience
e03c8cd198 Replace the "straight curves with zero-winding" test with a more comprehensive one containing more special cases. Also, this test requires that all points on a curve of a path must be counted as inside the path. 2016-02-05 12:45:33 +01:00
Jürg Lehni
336460b51f Define unit test for #internalBounds regression. 2016-02-03 17:38:30 +01:00
Jürg Lehni
922a502ee2 Add #interpolate() method to Segment, Path and CompoundPath
Closes #624
2016-02-02 22:11:06 +01:00
Jürg Lehni
5e53939006 Do not include text-styles in items that don't relate to text.
Closes #934
2016-02-02 21:43:44 +01:00
Jürg Lehni
a02d7248c0 Move Path_Bounds tests to Item_Bounds.
And add a test for shape.strokeBounds without strokeScaling.
2016-02-02 13:55:36 +01:00
Jürg Lehni
21dce1a655 Implement tests for #697
One currently failing due to caching issues.
2016-02-02 13:28:06 +01:00