Jürg Lehni
ab45002003
Tests: Clean up Rectangle unit tests.
2017-03-19 19:26:07 +01:00
Jürg Lehni
e354bccf69
Include note about compiling for Electron.
...
And some smaller forgotten changes.
Closes #1276
2017-03-19 14:38:24 +01:00
Jürg Lehni
fdd42076f9
Intersections: Bring back special handling of curve end-points.
...
Revert commit 89e31dd393
, and add further improvements:
- Implement unit tests for #1284
- Remove Rectangle#touches(rect) in favor of #intersects(rect, epsilon)
Closes #1284
2017-03-18 16:42:55 +01:00
Jürg Lehni
993afe3c83
Tests: Implement unit tests for #1277
2017-03-12 11:11:14 +01:00
Jürg Lehni
5291043a5f
Fix how gradient matrices are handled when Item#applyMatrix = false
...
Closes #1238
2017-03-09 14:31:41 +01:00
Jürg Lehni
083a09604d
Hit-Tests: Fix issue with non-invertible matrices.
...
Closes #1271
2017-03-09 12:42:11 +01:00
Jürg Lehni
f9d06d8ae4
Hit Tests: Implement options.position.
...
Closes #1249
2017-03-08 23:01:12 +01:00
Jürg Lehni
db4deb244f
Fix calculation of internal bounds with children and applyMatrix = false
...
Closes #1250
2017-03-08 17:14:42 +01:00
Jürg Lehni
65da4fe3ed
Clear parent's bounds cache when item's visibility changes.
...
Closes #1248
2017-03-08 16:21:34 +01:00
Jürg Lehni
cbc873cfd8
Merge pull request #1265 from iconexperience/new-unite-tests
...
Add some unit tests for boolean unite operations
2017-03-08 15:47:54 +01:00
Jürg Lehni
5ea09c2fa2
Tests: Implement unit test for #1270 .
...
Closes #1270 .
2017-03-07 20:57:47 +01:00
Jürg Lehni
fd797425e0
Tests: Fix unit test for #1239 .
...
Adjust for increase of found intersections since ecc1edb6ea
.
2017-03-07 20:15:59 +01:00
Jürg Lehni
ecc1edb6ea
Revert d204175d39
...
Revert fat-line clipping optimization that checked for straight curves, as unfortunately it wasn't reliable in many edge cases.
Relates to #1263
2017-03-07 20:01:05 +01:00
Jürg Lehni
867d0874dc
Tests: Implement unit test for #1269 .
...
Closes #1269 .
2017-03-07 17:41:37 +01:00
Jürg Lehni
8461d8d9f4
Curve Intersection: Improve algorithm to work with correct version of isStraight()
...
Relates to #1269
2017-03-07 17:41:16 +01:00
Jürg Lehni
7448aedf67
Tests: Show SVG path data when boolean results are different.
2017-03-07 11:04:11 +01:00
iconexperience
5359bc428e
Add some unit tests for boolean unite operations
2017-03-01 14:07:17 +01:00
Jürg Lehni
5c86330d6e
Tests: Implement unit test for #1261 .
2017-02-26 01:03:35 +01:00
Jürg Lehni
e3828d810b
When aborting fat-line clipping, attempt an approximation with line intersections.
2017-02-22 13:58:27 +01:00
Jürg Lehni
d204175d39
Improve and optimize fat-line clipping algorithm.
...
By checking if subdivided curves are straight and falling back on line-line / line-curve approach if they are.
2017-02-21 23:09:30 +01:00
Jürg Lehni
f16b91e0fe
Tests: Implement unit test for #1233
2017-02-21 22:10:08 +01:00
Jürg Lehni
357ff0dd43
Reduce epsilon in fat-line clipping to 1e-12 and adjust unit tests.
...
These results make much more sense and the algorithm finds less false positives while still behaving reliably in all edge cases.
2017-02-16 14:05:05 +01:00
Jürg Lehni
69c124c36c
Merge remote-tracking branch 'origin/improved-reorient' into develop
...
; Conflicts:
; src/path/PathItem.Boolean.js
2017-02-04 20:20:21 +01:00
Jürg Lehni
535607931c
Unit tests for boolean operations without crossings.
...
Closes #1113
2017-02-04 20:15:23 +01:00
Jürg Lehni
6ad5bfafee
Implement unit test for #1073
...
Closes #1073 , closes #1074
2017-01-25 07:55:37 -05:00
Jürg Lehni
cf2ebbaaf8
Partly revert 09785a504b
...
To make the edge-case in #1239 work again. Also add unit tests for edge-case.
2017-01-15 11:34:02 +01:00
Jürg Lehni
e7b53c8a22
Implement Curve#classify() based on Loop and Blinn.
...
And use it to simplify curve self-intersection handling.
Relates to #773 , #1074 , Closes #1235
2017-01-11 15:01:10 +01:00
Jürg Lehni
2145efb29b
Implement more unit tests for #1109
...
Closes #1109
2017-01-08 15:14:47 +01:00
Jürg Lehni
673d157f31
Implement unit tests for #1116
...
Closes #1116
2017-01-08 15:07:40 +01:00
Jürg Lehni
0ae2ded9cc
Fix handling of hit-test tolerance on scaled items with #applyMatrix = false
...
Closes #1195
2017-01-08 14:34:58 +01:00
Jürg Lehni
46fce16bff
Fix handling of overlapping paths for subtract and exclude operations.
...
Closes #1139
2017-01-03 00:50:22 +01:00
Jürg Lehni
c21e19b303
Fix overlap sequence handling in Path#compare()
...
Closes #1223
2016-12-31 06:49:57 +01:00
Jürg Lehni
7d3d7351ab
Implement more PathItem#compare() tests.
...
Two failing for now.
2016-12-31 01:07:50 +01:00
Jürg Lehni
d405f45d38
Correctly handle offset in Curve#divideAt(offset)
...
Closes #1230
2016-12-31 00:34:37 +01:00
Jürg Lehni
771bb61038
Fix matrix cloning for groups with #applyMatrix = false
...
Closes #1225
2016-12-30 13:25:08 +01:00
Jürg Lehni
c12f7c4a64
Start implementing unit tests for PathItem#compare()
2016-12-29 10:56:06 +01:00
Jürg Lehni
97abd80bab
Replace all occurences of Math.sqrt(2) with Math.SQRT2
2016-12-29 10:56:06 +01:00
Jürg Lehni
41f7e58ca9
Include issue number forgotten in previous commit.
2016-12-23 23:13:18 +01:00
Jürg Lehni
b59baeb9aa
Fix stroke hit-testing for rounded shape items.
...
Closes #1207
2016-12-23 23:11:17 +01:00
Jürg Lehni
3c43a78c53
Properly handle generated IDs in SVG export.
...
Closes #1138
2016-11-20 20:53:41 -05:00
Jürg Lehni
8946f44ed9
Fix curve-bounds check in getIntersections()
...
Closes #1197
2016-11-20 20:19:38 -05:00
Jürg Lehni
6dd7cc5b6a
Fix imprecision in Numerical.findRoot()
...
Results can be slightly outside of the range.
Close #1149
2016-09-24 15:39:09 -04:00
Jürg Lehni
80f6dbb5e3
Implement unit test for #1091
...
Closes #1091
2016-09-24 14:53:36 -04:00
Jürg Lehni
287f48a0db
Implement unit test for #1165
...
Closes #1165
2016-09-24 14:34:46 -04:00
Jürg Lehni
b37b8cc495
Improve reliability of Curve.getIntersection()
...
Reduce epsilon when checking against curve end points from GEOMETRIC_EPSILON to EPSILON.
Coses #1174
2016-09-24 14:28:43 -04:00
Jürg Lehni
b4f6cde203
Tests: Handle null values when comparing items.
2016-09-20 18:43:02 -04:00
Jürg Lehni
3a49ac4015
Handle paths with only one segment in #resolveCrossings()
...
Closes #1167
2016-09-20 18:13:47 -04:00
Jürg Lehni
6e7fe67a8d
Implement unit tests for #1109 .
2016-08-09 10:01:35 +02:00
Jürg Lehni
7a63afc769
Clean up Layer unit tests a bit.
2016-08-07 15:58:54 +02:00
sapics
31690cb6b6
Fix to remove named layer
2016-08-06 11:00:29 +09:00