Merge branch 'develop' of github.com:freesewing/freesewing into develop
This commit is contained in:
commit
c173e31fd7
24 changed files with 226 additions and 33 deletions
|
@ -12,11 +12,9 @@ Take a look at our new development blog, which you can read at [2022.freesewing.
|
|||
If you'd like to get involved in this effort, head over to [discord.freesewing.org](https://discord.freesewing.org/) and join the **v3** channel.
|
||||
|
||||
|
||||
##### Next contributor call on 2 October
|
||||
##### Next contributor call on 30 October
|
||||
|
||||
The next contributor call is on **2 October 2021**, Lucian and Karen will host it.
|
||||
|
||||
There will also be a [developer call](https://github.com/freesewing/freesewing/issues/1352) 30 minutes prior.
|
||||
The next contributor call is on **30 October 2021**, Lucian and Karen will host it.
|
||||
|
||||
The call is on [discord.freesewing.org](https://discord.freesewing.org/).
|
||||
Check the meetings voice/video channel.
|
||||
|
|
|
@ -1,14 +1,14 @@
|
|||
##### New pattern: The Yuri Hoodie
|
||||
##### New patterns: Bee, Lunetius, Tiberius, and Walburga
|
||||
|
||||
Check out the latest addition to our catalog: [the Yuri hoodie pattern](/designs/yuri/).
|
||||
Check out the latest additions to our catalog: the [Bee bikini](/designs/bee/), [Lunetius Lacerna](/designs/lunetius/), [Tiberius Tunica](/designs/tiberius/), and [Walburga Wappenrock](/designs/walburga/).
|
||||
|
||||
Yuri is a fancy zipless cardigan based on the Huey & Hugo hoodies.
|
||||
Bee is a bikini pattern, while Lunetius, Tiberius, and Walburga are historical patterns.
|
||||
|
||||
##### Next contributor call on 2 October
|
||||
Read more in [our blog](/blog/freesewing-2-19/).
|
||||
|
||||
The next contributor call is on **2 October 2021**, Lucian and Karen will host it.
|
||||
##### Next contributor call on 30 October
|
||||
|
||||
There will also be a [developer call](https://github.com/freesewing/freesewing/issues/1352) 30 minutes prior.
|
||||
The next contributor call is on **30 October 2021**, Lucian and Karen will host it.
|
||||
|
||||
The call is on [discord.freesewing.org](https://discord.freesewing.org/).
|
||||
Check the meetings voice/video channel.
|
||||
|
|
|
@ -1,7 +1,20 @@
|
|||
To make Bella, you'll need:
|
||||
---
|
||||
title: Bella Cutting
|
||||
---
|
||||
|
||||
- 1 Front
|
||||
- 2 Back
|
||||
**Main fabric**
|
||||
|
||||
- Cut **1 Front** part on the fold.
|
||||
- Cut **2 Back** parts.
|
||||
|
||||
|
||||
These cutting instructions are just for the default Bella block. Adjust your cutting accordingly if you have/are making changes to the block.
|
||||
|
||||
<Tip>
|
||||
|
||||
If you do not have someone to help pin you into Bella then you may find it easier to Cut 2 Front parts with seam allowance and sew the backs up when constructing so you can pin in the front.
|
||||
|
||||
</Tip>
|
||||
|
||||
<Note>
|
||||
|
||||
|
|
|
@ -1,3 +1,11 @@
|
|||
---
|
||||
title: Bella Fabric options
|
||||
---
|
||||
|
||||
If you are making a default Bella to see how it fits we recommend a fabric such as **Calico (Muslin)** or a cheaper fabric that matches the drape and stretch of the fabric you intend to make a finalised version of Bella with.
|
||||
|
||||
You can use scraps of fabrics from your stash so don't worry about buying fabric specifically for Bella.
|
||||
|
||||
<Note>
|
||||
|
||||
###### Bella is a block, not a pattern
|
||||
|
|
|
@ -1,3 +1,7 @@
|
|||
---
|
||||
title: Bella Construction
|
||||
---
|
||||
|
||||
<Note>
|
||||
|
||||
###### Bella is a block, not a pattern
|
||||
|
@ -5,6 +9,56 @@
|
|||
A block is a basic shape on which other patterns are based.
|
||||
They are sometimes also called slopers, although purists will argue that a block and a sloper are different things.
|
||||
|
||||
Blocks are typically not made as-is but rather serve as a basis for other patterns.
|
||||
Blocks are typically not made as-is but rather serve as a basis for other patterns so the instructions below will not go in depth about closures or finishes and are for the default Bella block.
|
||||
|
||||
</Note>
|
||||
|
||||
### Step 1: Mock-up Construction
|
||||
|
||||
__1.__ Close the front bust and waist darts.
|
||||
__2.__ Close the back darts.
|
||||
__3.__ Sew the front to the backs at the shoulders right sides together.
|
||||
__4.__ Sew the front to the backs at the side seams right sides together.
|
||||
|
||||
<Tip>
|
||||
|
||||
If you are making adjustments you may wish to sew the seams wrong sides together to make them easier to adjust.
|
||||
|
||||
</Tip>
|
||||
|
||||
### Step 2: Try it on
|
||||
|
||||
__1.__ Try it on and check the fit by pinning the back closed whilst wearing it.
|
||||
__2.__ Make any alterations and try it on again.
|
||||
__3.__ Repeat until you are happy.
|
||||
|
||||
<Tip>
|
||||
|
||||
If you do not have someone to help with pinning, you may find it easier to cut the front part in two with seam allowance rather than on a fold and sew the back seam up so that you can pin in the front when trying on.
|
||||
|
||||
</Tip>
|
||||
|
||||
<Note>
|
||||
|
||||
Remember to treat Bella as a basis rather than a final product, so adjust what you need to get the desired look.
|
||||
For instance:
|
||||
- Change the neck line
|
||||
- Add/change the closure allowances
|
||||
- Alter the dart placements
|
||||
- Add a collar
|
||||
|
||||
It is all up to you! Experiment and go forth!
|
||||
|
||||
</Note>
|
||||
|
||||
### Step 3: Make a paper pattern
|
||||
|
||||
__1.__ Once happy with all your changes unpick your mockup and make a paper pattern based off of it.
|
||||
__2.__ Now you have a pattern you can use to produce a garment.
|
||||
|
||||
<Note>
|
||||
|
||||
It is best practice to make a paper pattern from the mock-up if you have made any alterations, as this will allow you to clean up any lines but also means you have a pattern that you can keep producing garments from.
|
||||
|
||||
</Note>
|
||||
|
||||
|
|
|
@ -1,3 +1,14 @@
|
|||
---
|
||||
title: Bella What you need
|
||||
---
|
||||
|
||||
To make Bella, you will need the following:
|
||||
|
||||
- Basic sewing supplies
|
||||
- About 0.5 metres of a suitable fabric ([see Bella Fabric options](/docs/patterns/bella/fabric/))
|
||||
|
||||
This list is for a default Bella Block. If you have/are making changes to the block you may need to get additional items such as closures, binding etc.
|
||||
|
||||
<Note>
|
||||
|
||||
###### Bella is a block, not a pattern
|
||||
|
|
|
@ -1,5 +1,5 @@
|
|||
---
|
||||
---
|
||||
|
||||
<PatternOptions pattern='carlon' />
|
||||
<PatternOptions pattern='carlton' />
|
||||
|
||||
|
|
|
@ -4,13 +4,10 @@ title: Cuff style
|
|||
|
||||
This pattern supports three different cuff styles:
|
||||
|
||||
- Traditional
|
||||
- Elegant
|
||||
- Keystone
|
||||
|
||||
<Fixme>Describe the different styles</Fixme>
|
||||
|
||||
- **Traditional**: A single buttoned *curved* band with a pointed edge.
|
||||
- **Elegant**: A single buttoned *straight* band with a pointed edge.
|
||||
- **Keystone**: A slightly curved band that is wider than the others using 3 buttons rather than 1. This one is based of off the one in the Keystone Draft this pattern is based on.
|
||||
|
||||
|
||||
## Effect of this option on the pattern
|
||||

|
||||

|
||||
|
|
|
@ -1,3 +1,9 @@
|
|||
---
|
||||
title: Buttonhole guide
|
||||
---
|
||||
|
||||
Adds a buttonhole to the ear flap to help you draft the buttonhole ear flap variant
|
||||
|
||||
|
||||
## Effect of this option on the pattern
|
||||

|
||||
|
|
|
@ -1,3 +1,8 @@
|
|||
---
|
||||
title: Ear flap length
|
||||
---
|
||||
|
||||
Controls the length of the ear flaps independently from the crown pieces
|
||||
|
||||
|
||||
## Effect of this option on the pattern
|
||||
|
|
|
@ -1,3 +1,9 @@
|
|||
---
|
||||
title: Ear flap width
|
||||
---
|
||||
|
||||
Controls the width of the ear flaps
|
||||
|
||||
|
||||
## Effect of this option on the pattern
|
||||

|
||||
|
|
|
@ -1,7 +1,9 @@
|
|||
---
|
||||
title: Number of gores
|
||||
title: Number of crown pieces
|
||||
---
|
||||
|
||||
Controls the number of panels there are in the crown
|
||||
|
||||
|
||||
## Effect of this option on the pattern
|
||||

|
|
@ -1,3 +1,6 @@
|
|||
---
|
||||
title: Head ease
|
||||
---
|
||||
|
||||
The amount of ease around your head.
|
||||
|
||||
|
|
|
@ -2,6 +2,8 @@
|
|||
title: Length ratio
|
||||
---
|
||||
|
||||
Controls the length of the crown and ear flaps
|
||||
|
||||
|
||||
## Effect of this option on the pattern
|
||||

|
|
@ -1,7 +1,9 @@
|
|||
***
|
||||
---
|
||||
title: Visor angle
|
||||
---
|
||||
|
||||
The arc angle used to draft the inner curve of the visor
|
||||
|
||||
## title: Visor angle
|
||||
|
||||
## Effect of this option on the pattern
|
||||
|
||||

|
||||
|
|
|
@ -1,3 +1,6 @@
|
|||
---
|
||||
title: Visor length
|
||||
---
|
||||
|
||||
Controls the length of the visor
|
||||
|
||||
|
|
|
@ -1,9 +1,9 @@
|
|||
***
|
||||
|
||||
## title: Visor width
|
||||
---
|
||||
title: Visor width
|
||||
---
|
||||
|
||||
Controls the width of the visor
|
||||
|
||||
## Effect of this option on the pattern
|
||||
|
||||
## Effect of this option on the pattern
|
||||

|
||||
|
|
|
@ -22,6 +22,7 @@ export default {
|
|||
'legbandkeystone',
|
||||
'pocket',
|
||||
'pocketfacing',
|
||||
'zipperguard',
|
||||
],
|
||||
inject: {
|
||||
front: 'frontpoints',
|
||||
|
@ -44,6 +45,7 @@ export default {
|
|||
legband: ['back', 'front'],
|
||||
legbandkeystone: ['back', 'front'],
|
||||
waistband: ['back', 'front'],
|
||||
zipperguard: 'front',
|
||||
},
|
||||
hide: ['frontpoints'],
|
||||
options: {
|
||||
|
|
|
@ -44,6 +44,7 @@ export default function (part) {
|
|||
.setRender(false)
|
||||
|
||||
paths.flyFold = new Path().move(points.pW).line(points.pZ).attr('class', 'fabric dashed')
|
||||
store.set('flyLength', paths.flyFold.length())
|
||||
|
||||
store.set('frontWaistLength', paths.waistSeam.line(points.flyTop).length())
|
||||
|
||||
|
@ -111,6 +112,7 @@ export default function (part) {
|
|||
snippets.n2 = new Snippet('notch', points.pJ)
|
||||
snippets.n3 = new Snippet('notch', points.pocketWaist)
|
||||
snippets.n4 = new Snippet('notch', points.pocketSide)
|
||||
snippets.n5 = new Snippet('notch', points.pZ)
|
||||
|
||||
// Keystone original (see above):
|
||||
if (keystone) {
|
||||
|
|
|
@ -9,6 +9,7 @@ import draftLegbandkeystone from './legbandkeystone'
|
|||
import draftWaistband from './waistband'
|
||||
import draftPocketfacing from './pocketfacing'
|
||||
import draftPocket from './pocket'
|
||||
import draftZipperguard from './zipperguard'
|
||||
// import draftPlacket from './placket'
|
||||
|
||||
// Create new design
|
||||
|
@ -23,6 +24,7 @@ Pattern.prototype.draftLegbandkeystone = draftLegbandkeystone
|
|||
Pattern.prototype.draftWaistband = draftWaistband
|
||||
Pattern.prototype.draftPocketfacing = draftPocketfacing
|
||||
Pattern.prototype.draftPocket = draftPocket
|
||||
Pattern.prototype.draftZipperguard = draftZipperguard
|
||||
// Pattern.prototype.draftPlacket = draftPlacket
|
||||
|
||||
export default Pattern
|
||||
|
|
|
@ -9,7 +9,7 @@ function findR(part, height, arcLength) {
|
|||
if (diff < 0) {
|
||||
a = a * (0.995 + diff / 1000)
|
||||
} else {
|
||||
a = a * (1.002 + diff / 1000)
|
||||
a = a * (1.003 + diff / 1000)
|
||||
}
|
||||
diff = (a * height) / (1 - Math.cos(a / 2)) - arcLength
|
||||
iter++
|
||||
|
|
77
packages/cornelius/src/zipperguard.js
Normal file
77
packages/cornelius/src/zipperguard.js
Normal file
|
@ -0,0 +1,77 @@
|
|||
export default function (part) {
|
||||
let { Point, Path, points, paths, Snippet, snippets, complete, sa, store, paperless, macro } =
|
||||
part.shorthand()
|
||||
|
||||
const cc = 0.551915024494 // circle constant
|
||||
|
||||
let halfInch = store.get('halfInch')
|
||||
let flyWidth = store.get('flyWidth') *halfInch
|
||||
let flyLength = store.get('flyLength')
|
||||
console.log( {flyWidth: flyWidth, flyLength: flyLength})
|
||||
|
||||
points.pA = new Point(0, 0)
|
||||
points.pB = points.pA.shift(180, flyWidth)
|
||||
points.pC = points.pB.shift(270, flyLength -flyWidth)
|
||||
points.pD = points.pA.shift(270, flyLength)
|
||||
points.pDcpC = points.pD.shift(180, flyWidth * cc)
|
||||
points.pCcpD = points.pC.shift(270, flyWidth * cc)
|
||||
|
||||
console.log( points.pA )
|
||||
console.log( points.pB )
|
||||
console.log( points.pC )
|
||||
console.log( points.pD )
|
||||
|
||||
paths.seam = new Path()
|
||||
.move(points.pA)
|
||||
.line(points.pB)
|
||||
.line(points.pC)
|
||||
.curve(points.pCcpD, points.pDcpC, points.pD)
|
||||
.attr('class', 'fabric')
|
||||
|
||||
paths.seam2 = new Path().move(points.pD).line(points.pA).attr('class', 'fabric')
|
||||
|
||||
if (complete) {
|
||||
macro('cutonfold', {
|
||||
from: points.pD,
|
||||
to: points.pA,
|
||||
})
|
||||
|
||||
points.logo = points.pA.shiftFractionTowards(points.pC, 0.5)
|
||||
snippets.logo = new Snippet('logo', points.logo)
|
||||
points.title = points.logo.shift(90, 70)
|
||||
macro('title', {
|
||||
nr: 4,
|
||||
at: points.title,
|
||||
title: 'ZipperGuard',
|
||||
})
|
||||
points.__titleNr.attr('data-text-class', 'center')
|
||||
points.__titleName.attr('data-text-class', 'center')
|
||||
points.__titlePattern.attr('data-text-class', 'center')
|
||||
|
||||
if (sa) {
|
||||
paths.sa = new Path()
|
||||
.move(points.pA)
|
||||
.line(points.pA.shift(90, sa))
|
||||
.join(paths.seam.offset(sa))
|
||||
.line(points.pD)
|
||||
.attr('class', 'fabric sa')
|
||||
}
|
||||
}
|
||||
|
||||
// Paperless?
|
||||
if (paperless) {
|
||||
macro('hd', {
|
||||
from: points.pB,
|
||||
to: points.pA,
|
||||
y: points.pA.y - sa - 15,
|
||||
})
|
||||
macro('vd', {
|
||||
from: points.pA,
|
||||
to: points.pD,
|
||||
x: points.pA.x + 15,
|
||||
})
|
||||
}
|
||||
|
||||
return part
|
||||
}
|
||||
|
|
@ -29,7 +29,7 @@ export default {
|
|||
pctHandleSpace: 50,
|
||||
pctHandleVert: 42,
|
||||
strapLength: { pct: 160, min: 75, max: 250 },
|
||||
handleWidth: { pct: 10, min: 5, max: 30 },
|
||||
handleWidth: { pct: 8.6, min: 4, max: 25 },
|
||||
size: { pct: 50, min: 20, max: 200 },
|
||||
zipperSize: { dflt: '#5', list: ['#3', '#4', '#4.5', '#5', '#6', '#8', '#10', 'Invisible'] },
|
||||
},
|
||||
|
|
|
@ -2,7 +2,7 @@ export default function (part) {
|
|||
let { store, options, Point, Path, points, paths, complete, sa, paperless, macro } =
|
||||
part.shorthand()
|
||||
|
||||
let w = options.handleWidth
|
||||
let w = store.get('width') * options.handleWidth
|
||||
let h = store.get('depth') * options.strapLength
|
||||
if (sa > w * 0.8) {
|
||||
sa = w * 0.8
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue