Commit Graph

22 Commits (fd95b5609fee0d3f24a63f6789fecf8fe86b92e8)

Author SHA1 Message Date
Andy fd95b5609f partially fixed scale fcn and improved tests 2018-06-08 22:13:18 -07:00
Andy Port 72d7467896
implemented (almost) full SVG scale transform functionality 2018-05-30 19:07:58 -07:00
Orion Elenzil ee656c7de0 refactor `scale()` and `scaled()` to `scale_uniform()` and `scaled_uniform()` 2018-05-30 10:54:56 -07:00
Andy Port 0827206953
style changes 2018-05-22 19:59:03 -07:00
Orion Elenzil d21a66aff0 add scale() for curves, and scaled() for paths 2018-05-22 12:45:04 -07:00
Andy Port 71b4403375
fix typo `joins_smoothl_with` 2018-04-13 14:34:28 -07:00
Andy Port a50c522f86
use np.close to check to check for vanishing denom
Just to offer users some amount of control over the tolerance.
2018-02-27 22:38:01 -08:00
Sebastian Kuzminsky 89d9acf06e Line.intersect(Line): fix a "miss some intersections" bug
Negative numbers are allowed in the denominator, what we really want to
avoid is near-zero denominators.
2018-01-20 20:46:54 -07:00
Sebastian Kuzminsky fc34d2c4cf deal with float rounding error in Line.intersect(Line)
This commit fixes #41.

In the test case added in the previous commit, two non-intersecting lines
are very nearly collinear, but float rounding errors lead to incorrect
intersections reported.

This commit makes Line.intersect() treat denominators below 1e-9 as 0,
to make it more accepting of float rounding.
2018-01-06 23:15:43 -07:00
Anders Granskogen Bjørnstad ec63d0c312 Arc: Handle round-off issue with acos()
math.acos raises outside of valid range [-1, 1]. Handle round-off errors
gracefully by using `round()` here too.
2017-11-10 13:44:24 +01:00
Andy a094f92b3a added polyline and polygon functions (points --> Path of Line objects) 2017-04-26 01:54:44 -07:00
Andy 60d67923b6 fix issue#15 Path.cropped() bug, and more
-also fixed <path>.cropped(1, 0) bug (now raises AssertionError)
-also now Path.cropped() raises AssertionError if given negative values
2017-03-30 01:38:27 -07:00
Andy 1655b77d15 removed builtins imports 2017-02-28 23:34:29 -08:00
Andy 8815ddcd52 futurized for Python 3 compatibility
and some other minor changes of no effect
2017-02-28 23:04:37 -08:00
Andy a154796576 changes related to arcs and intersections
-fixed quadratic/Arc intersections
-changed assertion that an arc's radii are positive to non-zero
-improved Arc.intersect() docstring to further explain partial
implementation
2017-02-20 22:10:16 -08:00
Andy a81af16d89 improved Arc docstring and added positive radii assertion to Arc 2017-02-20 20:11:54 -08:00
Andy c219d1e671 improved Arc class docstring 2017-02-20 19:46:16 -08:00
Andy 058b23585f fixed bug (issue #9) where line.intersect(curve) results are reversed 2017-02-20 19:21:07 -08:00
remi-pr 3575fec9af Fixed the rotated method of all objects
The rotated method of all objects was not using the origin argument but always self.point(0.5) even though it is all correctly handled in the rotate function they are all calling
2016-10-28 15:11:31 +02:00
Andy 6be04c6750 Fix python 3 incompatibility with Path.intersect() method 2016-10-16 00:20:52 -07:00
Andy a6719c56c5 fixed __init__.py 2016-07-23 17:15:22 -07:00
Andy 9b3d6fe5e3 initial commit 2016-07-05 21:51:11 -07:00