Fix 2516 bug where a large shoulder slope can cause an error.
This commit is contained in:
parent
236f35f765
commit
cbe2e74514
3 changed files with 15 additions and 2 deletions
|
@ -3,6 +3,12 @@
|
||||||
|
|
||||||
## Unreleased
|
## Unreleased
|
||||||
|
|
||||||
|
### breanna
|
||||||
|
|
||||||
|
#### Fixed
|
||||||
|
|
||||||
|
- Fixed bug where a large shoulder slope could cause an error. Fixes [#2516](https://github.com/freesewing/freesewing/issues/2516)
|
||||||
|
|
||||||
### brian
|
### brian
|
||||||
|
|
||||||
#### Fixed
|
#### Fixed
|
||||||
|
|
|
@ -17,6 +17,9 @@ Unreleased:
|
||||||
- migrated `waistbandWidth` option from `mm` to snapped `pct` option
|
- migrated `waistbandWidth` option from `mm` to snapped `pct` option
|
||||||
|
|
||||||
Fixed:
|
Fixed:
|
||||||
|
breanna:
|
||||||
|
- Fixed bug where a large shoulder slope could cause an error.
|
||||||
|
Fixes [#2516](https://github.com/freesewing/freesewing/issues/2516)
|
||||||
brian:
|
brian:
|
||||||
- Make s3 options sticky to zero below 10% to avoid path split issues.
|
- Make s3 options sticky to zero below 10% to avoid path split issues.
|
||||||
Fixes [#2249](https://github.com/freesewing/freesewing/issues/2249)
|
Fixes [#2249](https://github.com/freesewing/freesewing/issues/2249)
|
||||||
|
|
|
@ -65,7 +65,9 @@ export default (part) => {
|
||||||
if (q1Len === frontTarget) points.frontNotch = points.capQ1.clone()
|
if (q1Len === frontTarget) points.frontNotch = points.capQ1.clone()
|
||||||
else if (q1Len > frontTarget) points.frontNotch = q1.shiftAlong(frontTarget)
|
else if (q1Len > frontTarget) points.frontNotch = q1.shiftAlong(frontTarget)
|
||||||
else {
|
else {
|
||||||
let q2 = new Path().move(points.capQ1).curve(points.capQ1Cp2, points.capQ2Cp1, points.capQ2)
|
let q2 = new Path().move(points.capQ1)
|
||||||
|
.curve(points.capQ1Cp2, points.capQ2Cp1, points.capQ2)
|
||||||
|
.curve(points.capQ2Cp2, points.capQ3Cp1, points.capQ3)
|
||||||
points.frontNotch = q2.shiftAlong(frontTarget - q1Len)
|
points.frontNotch = q2.shiftAlong(frontTarget - q1Len)
|
||||||
}
|
}
|
||||||
let q4 = new Path().move(points.bicepsLeft)._curve(points.capQ4Cp2, points.capQ4)
|
let q4 = new Path().move(points.bicepsLeft)._curve(points.capQ4Cp2, points.capQ4)
|
||||||
|
@ -74,7 +76,9 @@ export default (part) => {
|
||||||
if (q4Len === backTarget) points.backNotch = points.capQ4.clone()
|
if (q4Len === backTarget) points.backNotch = points.capQ4.clone()
|
||||||
else if (q4Len > backTarget) points.backNotch = q4.shiftAlong(backTarget)
|
else if (q4Len > backTarget) points.backNotch = q4.shiftAlong(backTarget)
|
||||||
else {
|
else {
|
||||||
let q3 = new Path().move(points.capQ4).curve(points.capQ4Cp1, points.capQ3Cp2, points.capQ3)
|
let q3 = new Path().move(points.capQ4)
|
||||||
|
.curve(points.capQ4Cp1, points.capQ3Cp2, points.capQ3)
|
||||||
|
.curve(points.capQ3Cp1, points.capQ2Cp2, points.capQ2)
|
||||||
points.backNotch = q3.shiftAlong(backTarget - q4Len)
|
points.backNotch = q3.shiftAlong(backTarget - q4Len)
|
||||||
}
|
}
|
||||||
snippets.frontNotch = new Snippet('notch', points.frontNotch)
|
snippets.frontNotch = new Snippet('notch', points.frontNotch)
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue