Some Change Log cleanups.

This commit is contained in:
Jürg Lehni 2017-03-06 23:25:27 +01:00
parent 11f7388611
commit 2a090bc0d1

View file

@ -3,20 +3,19 @@
## `0.10.3` (Unreleased) ## `0.10.3` (Unreleased)
### Changed ### Changed
- Loosely couple Node.js / Electron code to Canvas module, and treat its absence - Node.js: Loosely couple Node.js / Electron code to `Canvas` module, and treat
like a headless web worker context in the browser (#1103). its absence like a headless web worker context in the browser (#1103).
- Split `PathItem#resolveCrossings()` into `#resolveCrossings()` and - Node.js: Support v7, and keep testing v4 up to v7 in Travis CI.
`#reorient()` (#973).
- Clean up handling of `Item#_set()`, `#set()` and `#initialize()`: - Clean up handling of `Item#_set()`, `#set()` and `#initialize()`:
- `#_set()` is for actually setting internal properties, e.g. on `Point`, - Use `#_set()` for actually setting internal properties, e.g. on `Point`,
`Size`, so that derived classes can reuse other parts without having to `Size`, so that derived classes can reuse other parts without having to
override each individual function (e.g. in `SegmentPoint`) override each individual function (e.g. in `SegmentPoint`)
- `#set()` is a shortcut to `#initialize()` on all basic types, to offer the - Define `#set()` as a shortcut to `#initialize()` on all basic types, to
same amount of flexibility when setting values, accepting object literals offer the same amount of flexibility when setting values, accepting object
as well as lists of value arguments. literals as well as lists of value arguments.
- Add support for shorter `h` / `v` commands for horizontal / vertical lines in - SVG Export: Add support for shorter `h` / `v` commands for horizontal /
SVG output. vertical lines in SVG output.
- Implement new and shorter segments array notation: - JSON Import / Export: Implement new and shorter segments array notation:
- Close paths by including `true` as the last entry - Close paths by including `true` as the last entry
- Allow nested segment arrays to be passed to `PathItem.create()` as well as - Allow nested segment arrays to be passed to `PathItem.create()` as well as
the `CompoundPath` constructor to create all sub-paths. the `CompoundPath` constructor to create all sub-paths.
@ -24,6 +23,8 @@
implement additional decomposed properties such as `#scaling` and `#rotation`. implement additional decomposed properties such as `#scaling` and `#rotation`.
- Reduce various internal epsilon values for general improved precision while - Reduce various internal epsilon values for general improved precision while
maintaining reliability. maintaining reliability.
- Split `PathItem#resolveCrossings()` into `#resolveCrossings()` and
`#reorient()` (#973).
### Added ### Added
- Add `PathItem#compare()` as a way to compare the geometry of two paths to see - Add `PathItem#compare()` as a way to compare the geometry of two paths to see
@ -31,10 +32,6 @@
segments or use different amounts of curves to describe the same shape. segments or use different amounts of curves to describe the same shape.
- Implement `Curve#hasLength()` as an optimized check for curve-length (#1109). - Implement `Curve#hasLength()` as an optimized check for curve-length (#1109).
- Implement `Path#divideAt()`, similar to `Curve#divideAt()`. - Implement `Path#divideAt()`, similar to `Curve#divideAt()`.
- Node.js: Support v7, and keep testing v4 up to v7 in Travis CI.
- Bring back caching of `Item#rotation` and `#scaling`, but only allow matrix
decomposition-based properties on items with `#applyMatrix = false`
(#1004, #1177).
- Implement `Curve#classify()` to determine the type of cubic Bézier curve via - Implement `Curve#classify()` to determine the type of cubic Bézier curve via
discriminant classification, based on an approach described by Loop and Blinn, discriminant classification, based on an approach described by Loop and Blinn,
and use it to simplify curve self-intersection handling (#773, #1074, #1235). and use it to simplify curve self-intersection handling (#773, #1074, #1235).
@ -43,6 +40,9 @@
- Expose `Curve. getCurveLineIntersections()` for use in curve offsetting. - Expose `Curve. getCurveLineIntersections()` for use in curve offsetting.
- Add `Line.getDistance()` and use it in `Curve.getOverlaps()` (#1253). - Add `Line.getDistance()` and use it in `Curve.getOverlaps()` (#1253).
- Implement `Segment#isSmooth()` and use it in handling of stroke-joins. - Implement `Segment#isSmooth()` and use it in handling of stroke-joins.
- Bring back caching of `Item#rotation` and `#scaling`, but only allow matrix
decomposition-based properties on items with `#applyMatrix = false`
(#1004, #1177).
### Fixed ### Fixed
- Many improvements to boolean operations: - Many improvements to boolean operations:
@ -85,7 +85,7 @@
- Docs: Improve description of option.class value in `Project#hitTest()` (#632). - Docs: Improve description of option.class value in `Project#hitTest()` (#632).
### Removed ### Removed
- Remove `Numerical.TOLERANCE = 1e-6` as there is no internal use for it\ - Remove `Numerical.TOLERANCE = 1e-6` as there is no internal use for it
anymore. anymore.
## `0.10.2` ## `0.10.2`