Introduction: The Amazing Zipper Pants

These zipper pants are extremely helpful for non-weight bearing wheelchair users. You can zip open the pants, set them on a chair, sit in the chair, then zip up the pants. That's it! No pulling them on. They have been a life changer for us, so I want to share them with others.

This instructable has two parts. Part one is how to sew a pair of these pants assuming you already have the pattern in the correct size. Part two is how to get a pattern in the correct size.

Step 1: PART ONE : Pattern and Materials

The pattern shown here is for:

  • Waist - 25"
  • Crotch (belly button to small of back) - 25"
  • Outseam (waist to ankle) - 29"

General:

This pattern includes a 5/8” seam allowance. The instructions assume you are using a serger as well as a straight-stitch sewing machine. You can adapt all these references for another method to finish raw edges, either by using a zig-zag or by using a very narrow hem.

The instructions also assume you will be comfortable making minor adjustments to accommodate the non-commercial shortcomings of the original. (Thank you.)

Cut 2 front pieces and 2 back pieces. Cut 1 front casing on the fold and 1 back casing on the fold. You will need ¾” elastic for the waist.

Zippers:

You will need two separating zippers for each pair of pants (or shorts). INFO: Separating zippers come in several weights and many lengths. To find the correct zipper, measure the side seam of your pattern and choose a zipper at least 1” shorter to about 2” or 3” shorter than the side seam. Nylon coil zippers are flexible and not bulky, usually available in #3 and #5 gauges. You can find instructions online for shortening longer zippers, or pay to have them shortened by vendors.

Step 2: ZIPPER - Front Side Seam

1) (Unlike traditional zipper insertion, the zipper on the front of the pants is enclosed in a fold. This creates a small flap of fabric under the teeth of the zipper to protect sensitive skin from coming in contact with the teeth. You will stitch this side of the zipper three times.) Mark the zipper placement line on both front pieces, 2 ½” from the cut edge (or follow the marked placement line on the pattern). Serge-finish the raw edge of the side seams on both front pieces.

2) Place a zipper face down on the right side of the fabric with the edge of the zipper tape along the placement line and the top stop of the zipper 5/8" below the waist cut edge.

3) Using a zipper foot, stitch the length of the zipper in the center of the tape closest to the zipper placement line.

4) Fold the extended seam allowance to the back, exposing the zipper teeth.

5) With the teeth facing up, fold the seam allowance back toward the side seam, creasing it along the edge of the zipper tape and extending beyond the zipper teeth. The zipper tape is now enclosed in a fold, and the teeth are exposed. Pin this fold in place.

6) With the teeth facing up, and using a zipper foot, stitch close to the fold through the pants front, the zipper tape, and the extended seam allowance. (The zipper will be shorter than the pants leg, so continue the line of the fold and stitch all the way to the hem edge.)

7) Finally, fold the extended seam allowance once again, under the zipper. Align the finished edge with the fold at the edge of the zipper tape on the wrong side of the pants leg. (The flap of doubled fabric should be just long enough to sit under the closed zipper teeth.) Pin in place and stitch with a zipper foot near the finished edge through all layers, including the zipper tape that is now enclosed.

Step 3: ZIPPER - Back Side Seam

1) Align zipper face down on the pants back side seam, with the top stop of the zipper 5/8” below the waist edge and the edge of the zipper tape aligned at the cut edge of the pants leg (not on the seam allowance). Serge along the edge, or straight-stitch with zipper foot.

2) Turn zipper face up and stitch along the folded edge, keeping the fold away from the zipper teeth, all the way to the hem edge. The zipper teeth will be exposed more than on a traditional garment.

Step 4: Main Body

1) PANTS FRONT: With right sides together, sew the center front seam with a straight stitch. Serge the raw edges together, then flat-fell the seam allowance. (That is, press the seam allowance to one side and topstitch it flat, close to the finished edge.)

2) PANTS BACK: repeat as for front, sewing center back seam, etc.

3) FRONT TO BACK: With right sides together, sew the front to the back along the inner leg seam, matching the center front and back seamlines, and stitching from one hem edge to the other. Serge the raw edges together, then flat-fell the seam allowance.

Step 5: Hem

1) HEM: Serge-finish the hem edges (or use another finishing method that does not take more than ½” from the hem edge). Turn up the hem and topstitch or zig-zag, depending on the type of fabric you are using. The finished hem can be a little below the end of the zipper or it can be even with the bottom edge. This flexibility allows you to accommodate the various sizes of available zippers, if you cannot get one exactly the length of your side seam and you do not wish to shorten a zipper. The open hem looks a little sporty, while the hem even with the zipper is slightly more “formal.”

Step 6: Casing

1) BACK CASING: Serge-finish the marked edge of the casing. Pin right sides together along top edge of back of pants, matching center fold to center seam. Stitch (serging is optional).

2) Turn casing to the inside along seam, turning under the seam allowance that extends beyond zipper at each side so that it does not cover the zipper teeth. (You may need to trim some of the excess seam allowance to make it fit neatly.) Pin in place and stitch close to finished edge, from side seam to side seam, careful not to stitch into zipper teeth.

3) Topstitch again about 1/8” from the upper edge, forming the casing/tube for elastic.

4) FRONT CASING: Serge-finish the marked edge of the casing. Pin right sides together along top edge of front of pants, matching center fold to center seam. Stitch (serging is optional).

5) Turn casing to the inside along seam, turning under the seam allowance that extends beyond the zipper flap at each side. (You may need to trim some of the excess seam allowance to make it fit neatly.) Pin in place and stitch close to finished edge. Important: Stop stitching and backstitch on either side of the zipper teeth; you will leave a gap so the movement of the zipper will not be obstructed.

6) Topstitch again about 1/8” from the upper edge, stitching only between the zippers. forming the casing/tube for elastic.

7) ELASTIC: Determine the desired waistline measurement. Cut ¾” elastic in 2 pieces, with the front about an inch shorter than the back, adding 2 inches to each piece. (For example, for a waist of 25”, I want the back to finish at 13” and the front at 12”. Cut one piece 15” and the other 14” for ease of insertion.)

8) Insert the elastic in the back casing. Stitch through one end of the elastic, casing, and pants back, close to the zipper teeth. Adjust fit of elastic and stitch the other end closed. Trim elastic ends.

9) Insert the elastic in the front casing. Important: The elastic will end before the zipper teeth; it should not extend all the way to the end of the casing. Stitch through one end of the elastic, casing, and pants front, close to the zipper teeth. Adjust fit of elastic and stitch the other end closed. Trim elastic ends.

Step 7: PART TWO: Grading Pattern to the Correct Size

Once we came up with a design that was working, I wanted to be able to size that pattern.

Since I don't know much about this topic, I first googled and found a very helpful blog/video:

http://isntthatsew.org/pattern-grading/

This helped me understand some general principles, which I used to write some code in python to do a similar process.

Step 8: Start With Baseline Pattern

Step One was to create a digital baseline pattern for the front and back pieces.

I decided to represent the pattern as a set of (x,y) points. For each pattern (front & back), I noted whether the (x,y) point was part of the waist, crotch, inseam, pantscuff, or outseam.

I took the original pattern and traced it on to graph paper. I outlined the pattern with points, and collected the (x,y) locations of those points. Then put those data points into a txt file.

Step 9: Algorithm for Grading the Pattern - Expanding the Waist

Now I have each pattern (front piece and back piece) defined by a set of (x,y) points and broken into the following segments; waist, crotch, inseam, pantscuff, and outseam.

I also have the nominal lengths for the baseline pattern; waist=25", crotch=25", outseam=29".

I want to be able to expand the pattern size by giving a new waist, crotch, and outseam size. The first step is knowing how much to extend each piece of the patterns. For instance, to get to the new waist size, I have to grow the waist section of each pattern by the following:

(newWaist - baselineWaist) / 4. -- there are two front pieces and two back pieces that make up the waist, so therefore you have to divide the difference by 4

(newCrotch - baselineCrotch) / 2. -- The crotch length is divided between the front and back pieces.

(newOutseam - baselineOutseam) -- The outseam expansion is just the difference between the baseline and the new desired length.

To grow a section (for example, the waist) I find the number of points in the pattern representing the waist. I divide the length by the the points to find the distance each point needs to move, then move each point. For the waist, the general direction of growth is in Y, so I keep all the X locations the same and just move the point in Y.

Now, once I've expanded a section, I need to move all the other sections to realign with it. Using the example of the waist, Once I've expanded it, I need to move all the crotch points uniformly in Y. The outseam does not move when expanding the waist. The inseam moves uniformly up in Y just like the crotch points. Finally, the pantscuff needs to grow by expanding it with the same technique as expanding the waist. Every point in the pantscuff is expanded in Y by the waist expansion difference using the same method as how the waist was expanded.

Step 10: Algorithm for Grading the Pattern - Expanding the Crotch

The crotch is a little trickier to expand.

It expands both in X and in Y. The bulk of the stretching occurs in the X direction. The curve does not expand, it merely translates in X. Then the top of the curve where it is straight again expands in Y. The dataset of X,Y points has a flag for those points in the crotch that are part of the curve and should not expand.

Step 11: Algorithm for Grading the Pattern - Extending the Outseam

To extend the length of the outseam, all the points of the inseam and the outseam grow in the X direction uniformly. The waist and crotch points do not move, but the pantscuff points must all translate by the same amount in X.

Step 12: Algorithm for Grading the Pattern -- Creating the Front and Back Casing

Once the front and back patterns have been completed adjusted for a new waist, crotch, and outseam size, the casing pattern can be constructed.

It is built by taking the points of the waist and finding the point perpendicular to the tangent of the curve at that point at a fixed distance away. In this case, the fixed distance is 2". Fortunately, the numpy library has linear algebra functions that make this piece pretty simple to code.

Step 13: Algorithm for Grading the Pattern - Tapering

To test how well the pattern grading was working, I put in the measurements for my husband. Since the baseline is for a skinny 11 year old child, I figured that if it correctly grew the pattern for him I could assume it was working correctly.

The result is that it technically did work. The waist was correct, the crotch was correct, and the outseam was correct. But because it grew the pattern proportionately, the pantcuffs were awfully wide. It looked like culottes. So, I decided to add in a parameter to taper the inseam if desired. So now, as the waist grows, you can put in a factor between 0 and 1 of how much the pantscuff grows. A one means it grows with the waist, a zero means it stays the same.

So, depending on the individual the pants are being made for, you can alter the tapering factor for the legs.

Step 14: Spot Check

There are certain requirements that have to be met to be sure that the pattern will sew together correctly.

1. Distance of the crotch length of the front piece + distance of the crotch length of the back piece minus the seam allowances should equal the new crotch measurement.

2. Distance of the inseam on the front pattern should equal distance of the inseam on the back pattern.

3. Distance of the zipper line on the front piece should equal the outseam distance on the back piece (minus the seam allowances) and this should equal the new outseam measurement.

4. Adding up the waist distances will not equal the new waist distance. This is because the waist has extra length to allow for an elastic waistband.

Step 15: Print to SVG File

Python has a library svgwrite that can be used to write an SVG file that can be read into any drawing type program. I used this library to create the pattern files in SVG format. I used the free software Inkscape to read in the SVG file. From Inskscape you can export to PDF. And you can print the PDF full size. I put an inch square grid over the pattern so that if you print it full size from a regular printer you can line up and tape together the sheets that make up the full image.

Step 16: Code

The code to grade the pattern was written in python. It used numpy and svgwrite extensions.

I've tried to embed the code but it doesn't seem to work, so I'm linking to it instead. The baseline pattern files for the front and back pieces are included here, too.

To run (example):

python .\PythonPatternGradingWithTapering.py PantsFront PantsBack 45 35 35 .3

where:

PantsFront = refers to the PantsFront.prn file for the baseline front pattern piece

PantsBack = refers to the PantsBack.prn file for the baseline back pattern piece
45 = new waist size
35 = new crotch size (from belly button to small of back)

35 = new outseam size (from waist to ankle)

.3 = factor between 0 and 1 of how much to taper (1 = no taper)

The code plots out visuals of the pattern as it runs, but then saves 4 SVG files for the front, back, front casing, and back casing.

Sew Tough Challenge

Participated in the
Sew Tough Challenge