Jürg Lehni
83a2fa0749
Implement unit test for SVG export of gradients.
...
Closes #1027
2016-04-06 20:05:32 -07:00
Jürg Lehni
5a9f3dfb27
Improve handling of local paths and CORS on Node.js
2016-04-05 12:11:54 -07:00
Jürg Lehni
27f866df61
Implement test for #1021 .
2016-03-27 13:45:55 -07:00
Jürg Lehni
bb19fade56
Travis CI: More SVG test adjustments.
2016-03-17 11:59:41 +01:00
Jürg Lehni
beabd6bea1
Travis CI: Adjust SVG test tolerances.
2016-03-17 11:44:24 +01:00
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
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
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
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
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
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
Jürg Lehni
340a1e2a5f
Rename curve-time in API from 'parameter' to 'time'
...
And create separate versions of methods that receive curve-time arguments instead of offsets.
Curve#getNormalAt(time, true) -> #getNormalAtTime(true)
Curve#divide() -> #divideAt(offset) / #divideAtTime(time)
Curve#split() -> #splitAt(offset) / #splitAtTime(time)
Curve#getParameterAt(offset) -> #getTimeAt(offset)
Curve#getParameterOf(point) -> getTimeOf(point)
Curve#getPointAt(time, true) -> #getPointAtTime(time)
Curve#getTangentAt(time, true) -> #getTangenttTime(time)
Curve#getNormalAt(time, true) -> #getNormalAtTime(time)
Curve#getCurvatureAt(time, true) -> #getCurvatureAtTime(time)
CurveLocation#parameter -> #time
Path#split(offset/location) -> #splitAt(offset/location)
Closes #563
2016-02-02 11:59:53 +01:00
Jürg Lehni
a12e99e387
Implement unit tests for SVG Importing, based on visual comparison.
...
For now, one test for #932
2016-02-01 20:15:37 +01:00
Jürg Lehni
af5984747f
SVG: Rename 'SVG' prefix to 'Svg'
...
- To make it clear it's not browser-provided functionality
- To reflect how DomElement / DomEvent are already named, for the same reason
2016-02-01 12:50:22 +01:00
Jürg Lehni
bc2729683c
Core: Renamed Symbol and PlacedSymbol classes and properties.
...
- Symbol -> SymbolDefinition
- PlacedSymbol -> SymbolItem
- Symbol#definition -> SymbolDefinition#item
- PlacedSymbol#symbol -> SymbolItem#definition
- Deprecate Project#symbols
Closes #770
2016-01-31 16:52:51 +01:00
Jürg Lehni
567f286774
Tests: Switch to our own gulp-qunits module.
...
Since it handles PhantomJS as well as Node.js execution, and formats errors identically and quickly.
2016-01-31 12:43:38 +01:00
Jürg Lehni
e0429f44df
Tests: Improve QUnit test logging and various cleanup on helpers.
2016-01-31 12:43:38 +01:00
Jürg Lehni
c22911f43b
Travis CI: Try installing msttcorefonts to solve the font-size issue in tests.
2016-01-31 12:43:32 +01:00
Jürg Lehni
1c1ff8c808
Travis CI: Try to fix failing test on Travis by specifying font.
2016-01-31 12:43:26 +01:00
Jürg Lehni
639bf07a47
Tests: Clean up Emitter tests.
2016-01-31 12:43:20 +01:00
Jürg Lehni
4c84c3dad5
Tests: Start getting QUnit tests to work on Node.js
...
Work in progress…
2016-01-31 12:43:20 +01:00
Jürg Lehni
0b991cefdd
Only mark an image as loaded if it actually has src set and is complete.
2016-01-27 10:45:39 +01:00
Jürg Lehni
ab68c5b272
Implement unit tests for #899 .
2016-01-12 12:02:27 +01:00
Jürg Lehni
9a148700b7
Implement unit test for edge case from #799 .
2016-01-09 12:16:50 +01:00
Jürg Lehni
c064cb6c43
Implement additional unit tests for dealing with sibling items with the same name.
2016-01-08 16:41:33 +01:00
Jürg Lehni
9eb3e8777e
Define unit tests for curve unlinking.
2016-01-08 15:17:40 +01:00
Jürg Lehni
61f5f9bcfa
Implement unit test for #757
...
Currently failing.
2016-01-08 12:28:43 +01:00
Jürg Lehni
3c66c013d1
Implement correct behavior for intersection, subtraction and intersection of fully overlapping paths.
2016-01-08 01:25:35 +01:00
Jürg Lehni
9c1aa47162
Implement unit test for 2nd edge case in #890
2016-01-07 23:19:47 +01:00
Jürg Lehni
1078e1f8a9
Implement winding fix suggested by @iconexperience.
...
Along with a unit test for the issue.
Closes #890
2016-01-07 10:02:43 +01:00
Jürg Lehni
7152942719
Replace links to issues with short references.
2016-01-06 14:13:02 +01:00
Jürg Lehni
45a8a69d67
Implement unit tests for #885 and #889
2016-01-06 13:20:45 +01:00
Jürg Lehni
dd082de70a
Implement unit tests for PathItem#resolveCrossings()
2016-01-06 13:13:59 +01:00
Jürg Lehni
5b98fea3fc
Reactivate the previously failing boolean edge case test.
2016-01-06 11:03:53 +01:00
Jürg Lehni
a6e1a1a76d
Deactivate one failing edge case unit test for now.
...
Relates to #887
2016-01-05 11:14:26 +01:00
Jürg Lehni
7bb102e218
Update boolean tests to correct intersection results.
2016-01-04 22:36:57 +01:00
Jürg Lehni
472972ed0c
Implement unit tests for #870 .
2016-01-04 13:20:20 +01:00
Jürg Lehni
e79fefce96
Implement remaining unit tests from #784 .
2016-01-04 12:52:22 +01:00
Jürg Lehni
3e3f32329b
Implement unit-tests for all of @iconexperience's isolated edge cases.
...
Relates to #784
2016-01-04 12:20:00 +01:00
Jürg Lehni
1543d056a7
Add more boolean unit tests from known edge cases.
2016-01-04 11:01:42 +01:00
Jürg Lehni
4e1b26f4e0
Include stroke in boolean operation unit tests.
...
To compare more than just the filled results, catching additional errors.
2016-01-04 10:47:18 +01:00
Jürg Lehni
b33777274d
More work on unit tests for boolean operation.
2016-01-02 18:21:53 +01:00
Jürg Lehni
d832a1ffcb
Define unit test for #784 .
2015-12-31 14:17:38 +01:00
Jürg Lehni
a4fd2ef3a3
Implement a ton of unit tests for boolean operation.
2015-12-31 14:05:58 +01:00
Jürg Lehni
3035e1d445
Define additional boolean tests and improve resemble.js based image diffing.
2015-12-30 21:55:21 +01:00
Jürg Lehni
a1fcaabed6
Implement item comparison through rasterization and resemble.js diffing, directly integrated into QUnit.
...
And start using it for boolean operation unit tests.
2015-12-30 21:55:21 +01:00
Jürg Lehni
0e427c16a2
Fix some white-spaces in comments and HTML.
2015-12-30 21:55:20 +01:00
Jürg Lehni
9d4066da1c
Implement unit tests for getWinding() and zero-winding curves.
...
Closes #819
2015-12-30 21:55:20 +01:00
Jürg Lehni
f34afbc19a
Clean up code from #856 a bit.
2015-12-30 21:55:19 +01:00
Jürg Lehni
a7a07fb6d5
Update JSDoc and do some documentation spring-cleaning.
...
- Convert from {@code ...} to shorter `...`
- Reformat some documentation comment blocks
- Update copyright notices
2015-12-30 21:55:19 +01:00
Jürg Lehni
12dbd3eb26
Add unit tests for isCrossing() and define a new, currently failing test.
2015-12-30 21:55:19 +01:00
Jürg Lehni
f2f34c3b75
Some minor fixes in new #getItems() code.
2015-12-30 21:55:18 +01:00
Jürg Lehni
2fea40f86f
Introduce new Item#copyAttributes() & #copyContent(), and revamp #clone() handling.
2015-12-30 21:55:17 +01:00
Jürg Lehni
1d80c13b73
Clean up path intersection tests.
2015-12-30 21:55:17 +01:00
sapics
81a4d142f0
Fix shape.strokeBounds with strokeScaling is false
2015-12-30 21:52:34 +01:00
Jürg Lehni
9a772678a8
Clean up #816 a bit.
...
Closes #815 also.
2015-10-28 22:17:44 +01:00
Tomas Junnonen
09d4de6a1b
Issue 815: Cannot add segment to Path after removing last segment
...
Fixed an issue where after removing the last segment of a path,
new segments cannot be re-added.
Added new Path Curve test cases to test the difference between
a path with one and no segments (zero curves in both cases), which
catches the bug.
2015-10-28 12:15:07 -04:00
Johan Sundström
1b129feebf
Handle exportSVG({ precision: 0 }) correctly
2015-10-27 15:33:09 -07:00
Jürg Lehni
648985fcd2
Fix yet another issue with Path#curves and Path#_add()
...
Including a unit test to prevent regression.
2015-10-24 18:11:30 +02:00
Jürg Lehni
30e6835745
One more test for correctly linked curves after segment insertion.
...
Currently failing.
2015-10-24 17:42:36 +02:00
Jürg Lehni
ae2bed9cf0
Fix issue of faulty curves list after inserting segments at the end of open paths.
2015-10-24 17:00:37 +02:00
Jürg Lehni
5afcca928e
Define failing test for issue with Path#split() and Path#curves array.
2015-10-24 16:38:13 +02:00
Jürg Lehni
d0332f843f
Renamed Curve#reverse() and Segment#reverse() to #reversed()
...
Since they don't modify the object. Also introduce new Segment#reverse(), which does.
2015-09-16 18:16:48 +02:00
Jürg Lehni
56da70c030
No need to pass TOLERANCE.
...
We're comparing with a default tolerance of 1e-5.
2015-09-13 13:43:50 +02:00
Jürg Lehni
52c0e3e225
Fix boolean test to adress shifted segment sequence.
...
We really need a circular check for closed path geometry.
2015-09-13 13:26:08 +02:00
Jürg Lehni
d62caf6faa
Introduce CURVETIME_EPSILON, to be used when handling curve time parameters.
...
Relates to #777
2015-09-12 22:55:58 +02:00
Jürg Lehni
31d9e1cd6e
Implement Curve#isLinear() to check for parametrical linearity.
...
Along with some unit tests for it.
2015-09-06 17:56:12 +02:00
Jürg Lehni
9d12a0a82c
Rename Curve#isLinear() to #isStraight()
...
Relates to #652
2015-09-06 17:35:27 +02:00
Jürg Lehni
3f509ed51b
Merge remote-tracking branch 'origin/develop' into boolean-fix
2015-09-06 15:37:25 +02:00
Jürg Lehni
d02f29e2f1
Remove legacy Color constructor tests.
2015-09-06 15:37:03 +02:00
Jürg Lehni
fe5916766a
Implement various tests for Curve#isLinear()
...
Some are currently failing.
2015-09-06 13:20:29 +02:00
Jürg Lehni
8b67d8a1dc
Remove #isStraight() in favor of #hasHandles() and implement #clearHandles()
...
Relates to #652
2015-09-06 12:47:35 +02:00
Jürg Lehni
bfbe0b3147
Fix PointText size test on new Safari...
2015-09-06 12:33:41 +02:00
Jürg Lehni
3137843831
Accomodate overlap handling in boolean tests.
2015-08-25 11:45:45 +02:00
Jürg Lehni
da82116501
Rework handling of weighted and normalized curve tangents and normals.
...
Relates to #563
2015-08-19 17:15:41 +02:00
Jürg Lehni
be603c7da8
Fix Item#pivot test.
2015-08-18 17:23:33 +02:00
Jürg Lehni
f8314f927e
Various changes on #isLinear(), #hasHandles() & co
...
Relates to #652
- Implement #hasHandles() on Path, Segment and Curve
- Remove Path#isPolygon()
- Define #isLinear() consistently across Path, Segment and Curve.
- Introduce new Segment#isStraight()
2015-08-17 14:31:23 +02:00
Jürg Lehni
65f085cc98
Have option.matchShapes control conversion to SVG polygon elements as well.
...
Closes #753
2015-08-17 14:18:22 +02:00
Jürg Lehni
4ad8875a8c
Install qunitjs module as a NPM dev dependency.
2015-07-27 12:25:45 +02:00
Jürg Lehni
3816407ee7
Clean up SVGExport tests.
2015-07-27 11:42:41 +02:00
Jürg Lehni
5604dd7a30
Clean up SVGImport tests.
2015-07-27 10:29:50 +02:00
Jürg Lehni
5f42020869
Increase tolerances in #getAverageColor() tests.
...
The phantomjs canvas appear to produce less precise results.
2015-07-27 10:03:11 +02:00
Jürg Lehni
26cdbb6805
Fix typo: #isColinear() -> #isCollinear()
...
Keeping misspelled version around for a while.
2015-06-16 18:39:52 +02:00
Jürg Lehni
07b58e928e
Implement unit test for shape.toPath().toShape()
...
Currently failing for rect.
2015-06-16 18:38:57 +02:00
Jürg Lehni
496b8ecd0f
Implement unit test for issue #708 .
2015-06-16 12:56:53 +02:00
Jürg Lehni
ba092b316e
Implement unit test for error behind issue #676
2015-06-15 19:01:21 +02:00
Jürg Lehni
33c0ef0e5c
Rename custom emitter events in unit tests.
2015-05-13 20:24:08 +02:00
Jürg Lehni
75c6db6986
Merge pull request #674 from rumman23/670-custom-events
...
custom events
2015-05-13 18:14:08 +02:00
Jürg Lehni
593590d707
Start implementing unit tests for hit-testing options.
2015-04-12 15:14:03 +02:00
rumman
11f4fa49b0
emitter instances with base
2015-04-08 21:01:38 +02:00
rumman
33046fff47
emitter tests
2015-04-08 10:42:50 +02:00
Jürg Lehni
7749641e66
Handle out-of-bounds offsets/parameters correctly.
...
Closes #660
2015-04-04 17:05:39 +02:00
Jürg Lehni
c20b32f748
Implement unit test for #610
2015-01-04 22:10:30 +01:00
Jürg Lehni
f0d28d7529
Implement unit test for #609
2015-01-04 17:46:59 +01:00
Jürg Lehni
a683493e59
Implement unit tests for path intersection.
...
Related: #565 , #568 , #570 , #571
2015-01-04 14:01:32 +01:00
Jürg Lehni
644fb71dc1
Implement unit test comparator for Item & co + Project, and further improve new comparator code.
2014-12-28 18:10:53 +01:00
Jürg Lehni
9adbc3774a
Implement unit test comparators for many more types, and start refactoring compareItems() helper.
2014-12-28 16:41:23 +01:00
Jürg Lehni
c5a2a51f3e
Implement unit test comparator for Color and improve new comparator code.
2014-12-28 15:21:38 +01:00
Jürg Lehni
b8674a3bc1
Implement unit test comparators for Point, Size and Rectangle.
2014-12-28 14:59:48 +01:00
Jürg Lehni
e95e17826e
Start cleaning up unit tests by introducing new class/type-based comparators lookup table.
2014-12-28 14:33:22 +01:00
Jürg Lehni
318209e9e9
Replace compareNumbers() with equals() and improve numerical tolerance handling in test helpers.
2014-11-30 11:27:14 -08:00
Jürg Lehni
99ef521af4
Switch from inline @option tags to real doc tags.
2014-10-20 23:33:28 +02:00
Jürg Lehni
b1329f1db5
Implement unit test for getItems({ empty: true }).
2014-10-20 18:19:47 +02:00
Jürg Lehni
616e848376
Implement handling of empty
and editable
in #getItems(), and simplify code a bit.
2014-10-18 14:32:21 +02:00
Jürg Lehni
7462fe0b70
Fix Curve.getParameterAt() for negative values of offset, and implement unit test.
...
Closes #524 .
2014-09-28 11:44:38 +02:00
Jürg Lehni
c87ce4de4c
Implement Item#replaceWith(item)
...
Closes #454
2014-09-27 22:52:37 +02:00
Jürg Lehni
0eb96898a3
Clean up Item tests.
2014-09-27 22:50:22 +02:00
Jürg Lehni
8414607cee
Define tests for Item#remove()
2014-09-27 22:49:32 +02:00
Jürg Lehni
6450430b68
Implement new strategy regarding Project#activeLayer:
...
- By default, no layer is created for any project.
- Project#activeLayer is a getter for the hidden #_activeLayer property. When it is called and no layer exists, one is created on the fly.
- Creating any other items creates a layer if none exists (was already the case).
2014-09-27 22:31:49 +02:00
Jürg Lehni
48cb05a181
Replace tabs with 4 white-spaces.
2014-08-16 19:24:54 +02:00
Jürg Lehni
42ab9bbda7
Improve unit tests for CompoundPath#contains()
2014-04-28 16:42:34 +02:00
Jonathan Puckey
c1dda3c2a3
Update Project#getItems test to reflect new functionality.
2014-04-27 23:06:07 +02:00
Jonathan Puckey
4aaf689c1e
Add tests for Item#getItems, Item#match & Project#getItems.
2014-04-15 17:10:47 +02:00
Jürg Lehni
93a97c7446
Reflect recent change in Item#hitTest() options.
2014-04-13 18:12:40 +02:00
Jürg Lehni
1f7cb30fa5
Correctly transform Item#pivot when #matrix is applied to an item's contents.
...
Closes #452 and defines unit tests to cover this bug.
2014-04-11 13:18:27 +02:00
Jürg Lehni
1bede6f7ec
Implement tests for hit-testing compound-paths.
2014-04-10 22:27:29 +02:00
Jürg Lehni
f002c633a7
Remove trailing white spaces and ensure newlines at the end.
2014-04-06 13:48:03 +02:00
Jürg Lehni
692535dd97
Fix CurveLocation#offset test to check for correct offsets.
2014-03-30 14:22:40 +02:00
Jürg Lehni
0f5e74a08e
Implement failing test for #437 .
2014-03-30 13:53:35 +02:00
Jürg Lehni
833d71f7ea
Remove Item#type and replace it with Item#className, the non-hyphenated version of #type.
2014-03-18 11:42:38 +01:00
Jürg Lehni
a1c74b8fd3
Explicitly state raster resolution in unit tests.
...
Since #rasterize() uses the HiDPI resolution if present now.
2014-03-18 11:20:50 +01:00
Jürg Lehni
cf8a668383
Fix HitResult test for new handling of tolerance.
2014-03-04 09:56:46 +01:00
Jürg Lehni
b08cc68ffe
Fix newly introduced issue in CompoundPath#moveTo() / #lineTo()
2014-03-04 09:48:41 +01:00
Jürg Lehni
af03f2ed0a
Fix unit test for strokeBounds and add new one for corners with miter limit.
2014-02-28 18:01:08 +01:00
Jürg Lehni
78a107da65
Implement unit tests for Point#isOrthogonal()
2014-02-28 17:56:56 +01:00
Jürg Lehni
87d0dc9ead
Implement unit tests for Point#isColinear()
2014-02-28 17:54:34 +01:00
hkrish
9e8dbc7c3e
Fix false negative and positive in the PathItem_Contains test file.
2014-02-24 19:11:32 +01:00
Jürg Lehni
81137ce7fc
Merge branch 'refs/heads/master' into bool-cleanup
2014-02-24 12:19:26 +01:00
Jürg Lehni
a6b1767b2b
Apply Matrix test fix from ea0147fe85
in all tests.
2014-02-24 12:19:03 +01:00
Jürg Lehni
94090d144f
Merge remote-tracking branch 'origin/master' into bool-cleanup
...
Conflicts:
src/options.js
2014-02-24 12:15:38 +01:00
Jürg Lehni
ea0147fe85
Handle slight imprecisions in Matrix tests.
2014-02-22 13:09:26 +01:00
Jürg Lehni
f6061905be
Streamline PathItem_Contains tests and add more tests.
2014-02-19 23:53:06 +01:00
Jürg Lehni
641514cbf3
Rename Item_Contains tests to PathItem_Contains and add more failing tests for #400 .
2014-02-19 14:35:04 +01:00
Jürg Lehni
a912ed96f6
Define failing test for issue #400 .
2014-02-19 14:28:57 +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
e22fa3a664
Update copyright notice.
2014-01-04 01:47:16 +01:00
Jürg Lehni
48c8946f9e
Implement correct hit-testing tolerance using transformed 2D stroke padding rather than unscaled numerical tolerance.
...
But we still need to factor in the View zoom as well...
2013-12-10 12:52:42 +01:00
Jürg Lehni
e238d23194
Implement caching of internal, untransformed bounds.
2013-12-09 10:53:19 +01:00
Jürg Lehni
5197dd81c5
Fix #fontWeight examples and documentation.
2013-12-09 10:17:10 +01:00
Jürg Lehni
3cd141170a
Implement Style#fontFamily and #fontWeight as a replacement for #font.
...
Closes #60 .
2013-12-08 21:12:51 +01:00
Jürg Lehni
2896f14e43
Define test for hit-testing fill with tolerance.
2013-12-08 12:26:11 +01:00
Jürg Lehni
462256c14d
Implement failing test for group.position after content changed.
2013-12-07 19:17:30 +01:00
Jürg Lehni
0d39c4377d
Define test for issue #344
2013-12-07 16:30:40 +01:00
Jürg Lehni
a837bbb2f6
Better format Point#getDirectedAngle() tests.
2013-12-07 16:28:07 +01:00
Jürg Lehni
9bcfae8661
Use comparePoints() helper in Point tests.
2013-12-07 16:26:17 +01:00
Jürg Lehni
8f20dabf4d
Implement test for strokeBounds of closed path with only one segment.
2013-12-07 16:16:26 +01:00
msand
e431154e0e
Fix indent.
2013-12-07 16:09:50 +02:00
msand
73b1b9843a
Wrote failing test for strokeBounds on paths with a single segment and strokeColor. Implemented fix for failing test.
2013-12-07 15:59:45 +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
Jürg Lehni
829e878243
Add failing test for creating colors from RGBA.
2013-11-24 00:02:13 +01: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
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
2a3ede67bb
Define more tests for Path#contains().
2013-10-17 20:18:56 +02:00
Jürg Lehni
8852cad04f
Fix SVGExport tests to work with new Shape code.
2013-10-17 13:12:51 +02:00
Jürg Lehni
83be3cb023
Fix SVGImport tests to work with new Shape import.
2013-10-17 13:02:35 +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
7a3448712b
Remove duplicate test and clean up code.
2013-10-17 11:32:11 +02: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
cc565b3fe2
Rename Raster#getSubImage() to #getSubCanvas(), and use insert: false combined with #insertAbove() to correctly insert newly created rasters.
2013-08-14 12:21:47 -07:00
Jürg Lehni
98697eb003
Fix Layer#insertAbove / insertBelow test.
2013-07-21 16:44:30 -07:00
Jürg Lehni
3ee3262f7a
Use non-deprecated versions.
2013-07-21 16:13:27 -07:00
Jürg Lehni
092ea182dc
Improve tests for moveAbove() / moveBelow().
2013-07-21 16:11:09 -07:00
Jürg Lehni
cfbd356247
Fix active layer test when calling Layer#clone().
2013-07-19 18:29:21 -07:00
Jürg Lehni
20a17f2939
Implement insert parameter in Item#clone() to control DOM insertion.
...
Defaults to true. Also insert in the right place now, above the original.
2013-07-19 18:27:00 -07:00
Jürg Lehni
14888bca50
Define failing test about Item cloning hierarchy.
...
Cloned items should be inserted right above their originals.
2013-07-19 18:10:58 -07:00
Jürg Lehni
29bdf49a0f
Fix tests for deprecated Color constructors.
2013-07-02 07:53:58 -07:00
Jürg Lehni
d369984196
Allow math operands larger than 1 when multiplying and dividing colors.
2013-06-28 07:59:33 -07:00
Jürg Lehni
2c578d0558
Start implementing math operators for Color.
2013-06-28 07:19:53 -07:00
Jürg Lehni
8c9ac92a59
Define failing test for hit-testing bounds on raster items.
...
Linked to issue #247 .
2013-06-23 19:48:46 -07:00
Jürg Lehni
e59ae78285
Improve hit-testing tests for guides.
2013-06-23 19:00:57 -07:00
Jürg Lehni
dca049c6ab
Implement failing test for hit-testing guides.
2013-06-23 18:18:49 -07:00
Jürg Lehni
f45fa853e7
Improve new hit-testing test.
2013-06-23 17:54:24 -07:00
Jürg Lehni
3b782f6338
Implement failing test for #243 .
2013-06-23 17:52:31 -07:00
Jürg Lehni
1e81176cf1
Merge branch 'master' of github.com:paperjs/paper.js
2013-06-23 17:22:30 -07:00
Jürg Lehni
4b62949318
Fix tests for #246 .
...
This is actually the right behavior: Setting length to negative values should flip around defined vectors.
2013-06-23 17:22:13 -07:00
Jürg Lehni
cf1b5a5df8
Define failing test for #246
2013-06-23 16:55:14 -07:00
Chris Barmonde
68626ca62b
Fix project.clear() so it removes all layers properly.
2013-06-20 20:14:47 -06:00
Jürg Lehni
258c404b98
Move curvature calculations into Curve.evaluate(), and define unit tests for it.
2013-06-18 19:00:05 -07:00
Jürg Lehni
dc076efd0c
Implement unit tests for Curve#getCurvatureAt().
2013-06-18 18:29:32 -07:00
Jürg Lehni
663a7e0369
Implement unit tests for Curve#getTangentAt() and #getNormalAt().
2013-06-18 18:23:48 -07:00
Jürg Lehni
2770a80a00
Fix unit tests for CSS values after white-space removal.
2013-06-18 15:59:28 -07:00
Jürg Lehni
d761c6c25f
Implement tests for Curve#getPointAt().
...
More to come.
2013-06-17 08:54:42 -07:00
Jürg Lehni
5d48513f8a
Define failing test for hit-testing miter strokes.
2013-06-13 11:07:43 -07:00
Jürg Lehni
fe10c99d1b
Implement standard behavior of #_hitTest() for items without children, based on #_contains().
...
This should cover the minimum of what's needed for PointText.
2013-06-12 19:30:23 -07:00
Jürg Lehni
4a8469b740
Define Base.isPlainValue() and use it to implement more flexible #equals() for Color and Rectangle.
2013-06-12 18:55:14 -07:00
Jürg Lehni
13d97796aa
Start implementing unit tests for TextItem / PointText.
...
One failing already.
2013-06-12 16:50:24 -07:00
Jürg Lehni
e6721cdbd6
Clean up rectangle test.
2013-06-12 15:16:45 -07:00
Jürg Lehni
716cf1acb8
Add more failing tests for new Rectangle(object) constructors.
2013-06-12 14:56:21 -07:00
Jürg Lehni
9977ec5c28
Rename #toCss() to #toCSS()
2013-06-12 14:04:59 -07:00
Jürg Lehni
ac1908878e
Define failing test for Path#contains() and open paths.
2013-06-12 00:28:57 -07:00
Jürg Lehni
cb1f9e5b7c
Define failing test for #227
2013-06-12 00:00:42 -07:00
Jürg Lehni
3db6e103c2
Implement failing tests for Point#equals().
...
As needed to fix #235
2013-06-11 19:52:42 -07:00
Jürg Lehni
530dfda4ba
Fix old group style test that was faulty but remain undetected because of other bug.
2013-06-11 13:58:04 -07:00
Jürg Lehni
b512532d23
Improve compareColors() helper.
2013-06-11 13:53:48 -07:00
Jürg Lehni
0b42d594de
Simplify failing test.
2013-06-11 13:44:42 -07:00
Jürg Lehni
7bd96716ee
Define failing test for wrongly merged group fillColor.
2013-06-11 13:44:00 -07:00
Jürg Lehni
3a043e0023
Fix empty tests.
2013-06-11 13:40:50 -07:00
Jürg Lehni
7c2e57e105
Remove Item#applyMatrix boolean, go back to previous way of directly applying transformations to children in Group and Layer, and introduce new Clip class for non-transformed nested matrices.
2013-05-13 18:57:17 -07:00
Jürg Lehni
618e19cc96
Add failing test for #215 .
2013-05-07 22:48:53 -07:00
Jürg Lehni
06ffd8089d
Fix issue in Path#removeSegments() where curves are removed wrongly when start index is 0.
...
Closes #200 .
2013-04-26 08:46:57 -07:00
Jürg Lehni
24443c548a
Define failing test for issue #200 .
2013-04-26 08:41:18 -07:00
Jürg Lehni
d7e075d316
Handle contour edge cases in Path#contains().
...
Closes #208 .
2013-04-25 11:03:49 -07:00
Jürg Lehni
c70b9e7d7d
Fix issue with Path#strokeBounds with #strokeJoin == 'miter' and clockwise orientation.
...
Closes #206 .
2013-04-24 19:27:31 -07:00
Jürg Lehni
77292892ca
Define failing test for #206 .
2013-04-24 18:55:00 -07:00
Jürg Lehni
62ffa8749c
Define failing tests for #208 .
2013-04-24 18:35:44 -07:00
Jürg Lehni
6029f59494
More uppercase changes.
2013-04-23 07:29:30 -07:00
Jürg Lehni
96d9b6730f
Rename Svg acronyms in API to SVG.
2013-04-23 07:19:08 -07:00
Jürg Lehni
cebeb11301
Rename Json acronyms in API to JSON.
2013-04-23 07:13:51 -07:00
Jürg Lehni
86e77e12bc
Use new Project#clear() instead of activeLayer.remove().
2013-04-23 07:11:23 -07:00
Jürg Lehni
e428074f46
Define some failing tests for Rectangle(object) constructors.
2013-04-21 08:45:07 -07:00