1
0
Fork 0

release: v2.18.0

## 2.18.0 (2021-09-09)

 ### core

 #### Fixed

  - Handle path.offset() of very short curves with control points on the start or end point Closes [#1257](https://github.com/freesewing/freesewing/issues/1257)

 ### holmes

 #### Fixed

  - The `brimWidth` option is not a percent option, allowing the pattern to scale properly

 ### huey

 #### Fixed

  - Replace cut-on-fold indicator on pocket with a regular grainline indicator Closes [#1265](https://github.com/freesewing/freesewing/issues/1265)

 ### i18n

 #### Added

  - Added translations for Yuri

 #### Fixed

  - Added optional chaining so missing options always lead to clear error message

 ### simon

 #### Fixed

  - Avoid paperless depending on a complete pattern

 ### theo

 #### Fixed

  - Avoid paperless depending on a complete pattern

 ### wahid

 #### Fixed

  - Close Seam Allowance path of front lining Closes [#1267](https://github.com/freesewing/freesewing/issues/1267)
  - Support a zero value for the `backScyeDart` option

 ### yuri
  - Handle path.offset() of very short curves with control points on the start or end point Closes [#1257](https://github.com/freesewing/freesewing/issues/1257)

  - The `brimWidth` option is not a percent option, allowing the pattern to scale properly

  - Replace cut-on-fold indicator on pocket with a regular grainline indicator Closes [#1265](https://github.com/freesewing/freesewing/issues/1265)

  - Added translations for Yuri

  - Added optional chaining so missing options always lead to clear error message

  - Avoid paperless depending on a complete pattern

  - Avoid paperless depending on a complete pattern

  - Close Seam Allowance path of front lining Closes [#1267](https://github.com/freesewing/freesewing/issues/1267)
  - Support a zero value for the `backScyeDart` option
This commit is contained in:
joostdecock 2021-09-09 20:25:59 +02:00
parent bdc5f19309
commit c6ceaf2372
197 changed files with 7789 additions and 5381 deletions

View file

@ -344,24 +344,12 @@ function pathOffset(path, distance, raise) {
// because that will break the offset in bezier-js
let cp1, cp2
if (current.sitsRoughlyOn(op.cp1)) {
cp1 = new Path(path.debug)
.withRaise(path.raise)
.move(current)
.curve(op.cp1, op.cp2, op.to)
cp1 = cp1.shiftAlong(cp1.length() > 2
? 2
: cp1.length()/10
)
cp1 = new Path(path.debug).withRaise(path.raise).move(current).curve(op.cp1, op.cp2, op.to)
cp1 = cp1.shiftAlong(cp1.length() > 2 ? 2 : cp1.length() / 10)
} else cp1 = op.cp1
if (op.cp2.sitsRoughlyOn(op.to)) {
cp2 = new Path(path.debug)
.withRaise(path.raise)
.move(op.to)
.curve(op.cp2, op.cp1, current)
cp2 = cp2.shiftAlong(cp2.length() > 2
? 2
: cp2.length()/10
)
cp2 = new Path(path.debug).withRaise(path.raise).move(op.to).curve(op.cp2, op.cp1, current)
cp2 = cp2.shiftAlong(cp2.length() > 2 ? 2 : cp2.length() / 10)
} else cp2 = op.cp2
let b = new Bezier(
{ x: current.x, y: current.y },